⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 libm_error.c

📁 glibc 2.9,最新版的C语言库函数
💻 C
📖 第 1 页 / 共 5 页
字号:
         *(long double *)retval = excl.retval;       }       else RETVAL_ONEL;       break;    }  case pow_zero_to_zero:    /* pow 0**0 */    {       DOMAIND; NAMED = (char *) "pow";       ifSVID       {         RETVAL_ZEROD;         NOT_MATHERRD         {            WRITED_POW_ZERO_TO_ZERO;            ERRNO_DOMAIN;         }         *(double *)retval = exc.retval;       }       else RETVAL_ONED;       break;    }  case powf_zero_to_zero:    /* powf 0**0 */    {       DOMAINF; NAMEF = (char *) "powf";       ifSVID       {         RETVAL_ZEROF;         NOT_MATHERRF         {          WRITEF_POW_ZERO_TO_ZERO;          ERRNO_DOMAIN;         }         *(float *)retval = excf.retval;       }       else RETVAL_ONEF;       break;    }  case powl_overflow:    /* powl(x,y) overflow */    {       OVERFLOWL; NAMEL = (char *) "powl";       ifSVID       {         if (INPUT_RESL < ZEROL_VALUE /*0*/) RETVAL_NEG_HUGEL;         else RETVAL_HUGEL;       }       else       {         if (INPUT_RESL < ZEROL_VALUE /*0*/) RETVAL_NEG_HUGE_VALL;         else RETVAL_HUGE_VALL;       }       NOT_MATHERRL {ERRNO_RANGE;}       *(long double *)retval = excl.retval;       break;    }  case pow_overflow:    /* pow(x,y) overflow */    {       OVERFLOWD; NAMED = (char *) "pow";       ifSVID       {         if (INPUT_RESD < ZEROD_VALUE /*0*/) RETVAL_NEG_HUGED;         else RETVAL_HUGED;       }       else       {         if (INPUT_RESD < ZEROD_VALUE /*0*/) RETVAL_NEG_HUGE_VALD;         else RETVAL_HUGE_VALD;       }       NOT_MATHERRD {ERRNO_RANGE;}       *(double *)retval = exc.retval;       break;    }  case powf_overflow:    /* powf(x,y) overflow */    {       OVERFLOWF; NAMEF = (char *) "powf";       ifSVID       {         if (INPUT_RESF < ZEROF_VALUE /*0*/) RETVAL_NEG_HUGEF;         else RETVAL_HUGEF;       }       else       {         if (INPUT_RESF < ZEROF_VALUE /*0*/) RETVAL_NEG_HUGE_VALF;         else RETVAL_HUGE_VALF;       }       NOT_MATHERRF {ERRNO_RANGE;}       *(float *)retval = excf.retval;       break;    }  case powl_underflow:    /* powl(x,y) underflow */    {       UNDERFLOWL; NAMEL = (char *) "powl"; RETVAL_ZEROL;       NOT_MATHERRL {ERRNO_RANGE;}       *(long double *)retval = excl.retval;       break;    }  case pow_underflow:    /* pow(x,y) underflow */    {       UNDERFLOWD; NAMED = (char *) "pow"; RETVAL_ZEROD;       NOT_MATHERRD {ERRNO_RANGE;}       *(double *)retval = exc.retval;       break;    }  case powf_underflow:    /* powf(x,y) underflow */    {       UNDERFLOWF; NAMEF = (char *) "powf"; RETVAL_ZEROF;       NOT_MATHERRF {ERRNO_RANGE;}       *(float *)retval = excf.retval;       break;    }  case powl_zero_to_negative:    /* 0 to neg */    {       DOMAINL; NAMEL = (char *) "powl";       ifSVID       {         RETVAL_ZEROL;         NOT_MATHERRL         {           WRITEL_POW_ZERO_TO_NEGATIVE;           ERRNO_DOMAIN;         }       }       else       {         RETVAL_NEG_HUGE_VALL;         NOT_MATHERRL {ERRNO_DOMAIN;}       }       *(long double *)retval = excl.retval;       break;    }  case pow_zero_to_negative:    /* 0**neg */    {       DOMAIND; NAMED = (char *) "pow";       ifSVID       {         RETVAL_ZEROD;         NOT_MATHERRD         {           WRITED_POW_ZERO_TO_NEGATIVE;           ERRNO_DOMAIN;         }       }       else       {         RETVAL_NEG_HUGE_VALD;         NOT_MATHERRD {ERRNO_DOMAIN;}       }       *(double *)retval = exc.retval;       break;    }  case powf_zero_to_negative:    /* 0**neg */    {       DOMAINF; NAMEF = (char *) "powf";       ifSVID       {         RETVAL_ZEROF;         NOT_MATHERRF         {            WRITEF_POW_ZERO_TO_NEGATIVE;            ERRNO_DOMAIN;         }       }       else       {         RETVAL_NEG_HUGE_VALF;         NOT_MATHERRF {ERRNO_DOMAIN;}       }       *(float *)retval = excf.retval;       break;    }  case powl_neg_to_non_integer:    /* neg**non_integral */    {       DOMAINL; NAMEL = (char *) "powl";       ifSVID       {         RETVAL_ZEROL;         NOT_MATHERRL         {           WRITEL_POW_NEG_TO_NON_INTEGER;           ERRNO_DOMAIN;         }       }       else       {         NOT_MATHERRL {ERRNO_DOMAIN;}       }       *(long double *)retval = excl.retval;       break;    }  case pow_neg_to_non_integer:    /* neg**non_integral */    {       DOMAIND; NAMED = (char *) "pow";       ifSVID       {         RETVAL_ZEROD;         NOT_MATHERRD         {            WRITED_POW_NEG_TO_NON_INTEGER;            ERRNO_DOMAIN;         }       }       else       {         NOT_MATHERRD {ERRNO_DOMAIN;}       }       *(double *)retval = exc.retval;       break;    }  case powf_neg_to_non_integer:    /* neg**non-integral */    {       DOMAINF; NAMEF = (char *) "powf";       ifSVID       {         RETVAL_ZEROF;         NOT_MATHERRF         {            WRITEF_POW_NEG_TO_NON_INTEGER;            ERRNO_DOMAIN;         }       }       else       {         NOT_MATHERRF {ERRNO_DOMAIN;}       }       *(float *)retval = excf.retval;       break;    }  case powl_nan_to_zero:    /* pow(NaN,0.0) */    /* Special Error */    {       DOMAINL; NAMEL = (char *) "powl";       *(long double *)retval = *(long double *)arg1;       NOT_MATHERRL {ERRNO_DOMAIN;}       *(long double *)retval = excl.retval;       break;    }  case pow_nan_to_zero:    /* pow(NaN,0.0) */    /* Special Error */    {       DOMAIND; NAMED = (char *) "pow";       *(double *)retval = *(double *)arg1;       NOT_MATHERRD {ERRNO_DOMAIN;}       *(double *)retval = exc.retval;       break;    }  case powf_nan_to_zero:    /* powf(NaN,0.0) */    /* Special Error */    {       DOMAINF; NAMEF = (char *) "powf";       *(float *)retval = *(float *)arg1;       NOT_MATHERRF {ERRNO_DOMAIN;}       *(float *)retval = excf.retval;       break;    }  case atan2l_zero:    /* atan2l(0.0,0.0) */    {       DOMAINL; NAMEL = (char *) "atan2l";       RETVAL_ZEROL;       NOT_MATHERRL       {         ifSVID         {            WRITEL_ATAN2_ZERO_BY_ZERO;         }         ERRNO_DOMAIN;       }       *(long double *)retval = excl.retval;       break;    }  case atan2_zero:    /* atan2(0.0,0.0) */    {       DOMAIND; NAMED = (char *) "atan2";       RETVAL_ZEROD;       NOT_MATHERRD       {         ifSVID         {            WRITED_ATAN2_ZERO_BY_ZERO;         }         ERRNO_DOMAIN;       }       *(double *)retval = exc.retval;       break;    }  case atan2f_zero:    /* atan2f(0.0,0.0) */    {       DOMAINF; NAMEF = (char *) "atan2f";       RETVAL_ZEROF;       NOT_MATHERRF       {         ifSVID         {            WRITEF_ATAN2_ZERO_BY_ZERO;         }         ERRNO_DOMAIN;       }       *(float *)retval = excf.retval;       break;    }  case atan2dl_zero:    /* atan2dl(0.0,0.0) */    {       DOMAINL; NAMEL = (char *) "atan2dl";       RETVAL_ZEROL;       NOT_MATHERRL       {         ifSVID         {            WRITEL_ATAN2D_ZERO_BY_ZERO;         }         ERRNO_DOMAIN;       }       *(long double *)retval = excl.retval;       break;    }  case atan2d_zero:    /* atan2d(0.0,0.0) */    {       DOMAIND; NAMED = (char *) "atan2d";       RETVAL_ZEROD;       NOT_MATHERRD       {         ifSVID         {            WRITED_ATAN2D_ZERO_BY_ZERO;         }         ERRNO_DOMAIN;       }       *(double *)retval = exc.retval;       break;    }  case atan2df_zero:    /* atan2df(0.0,0.0) */    {       DOMAINF; NAMEF = (char *) "atan2df";       RETVAL_ZEROF;       NOT_MATHERRF       {         ifSVID         {            WRITEF_ATAN2D_ZERO_BY_ZERO;         }         ERRNO_DOMAIN;       }       *(float *)retval = excf.retval;       break;    }  case expm1_overflow:    /* expm1(finite) overflow */    /* Overflow is the only documented */    /* special value. */    {      ERRNO_RANGE;      break;    }  case expm1f_overflow:    /* expm1f(finite) overflow */    {      ERRNO_RANGE;      break;    }  case expm1_underflow:    /* expm1(finite) underflow */    /* Underflow is not documented */    /* special value. */    {      ERRNO_RANGE;      break;    }  case expm1f_underflow:    /* expm1f(finite) underflow */    {      ERRNO_RANGE;      break;    }  case scalbl_underflow:    /* scalbl underflow */    {       UNDERFLOWL; NAMEL = (char *) "scalbl";       if (INPUT_XL < ZEROL_VALUE /*0.0L*/) RETVAL_NEG_ZEROL;       else  RETVAL_ZEROL;       NOT_MATHERRL {ERRNO_RANGE;}       *(long double *)retval = excl.retval;       break;    }  case scalb_underflow:    /* scalb underflow */    {       UNDERFLOWD; NAMED = (char *) "scalb";       if (INPUT_XD < ZEROD_VALUE /*0.0*/) RETVAL_NEG_ZEROD;       else  RETVAL_ZEROD;       NOT_MATHERRD {ERRNO_RANGE;}       *(double *)retval = exc.retval;       break;    }  case scalbf_underflow:    /* scalbf underflow */    {       UNDERFLOWF; NAMEF = (char *) "scalbf";       if (INPUT_XF < ZEROF_VALUE /*0.0*/) RETVAL_NEG_ZEROF;       else  RETVAL_ZEROF;       NOT_MATHERRF {ERRNO_RANGE;}       *(float *)retval = excf.retval;       break;    }  case scalbl_overflow:    /* scalbl overflow */    {       OVERFLOWL; NAMEL = (char *) "scalbl";       if (INPUT_XL < ZEROL_VALUE /*0*/) RETVAL_NEG_HUGE_VALL;       else RETVAL_HUGE_VALL;       NOT_MATHERRL {ERRNO_RANGE;}       *(long double *)retval = excl.retval;       break;    }  case scalb_overflow:    /* scalb overflow */    {       OVERFLOWD; NAMED = (char *) "scalb";       if (INPUT_XD < ZEROD_VALUE /*0*/) RETVAL_NEG_HUGE_VALD;       else RETVAL_HUGE_VALD;       NOT_MATHERRD {ERRNO_RANGE;}       *(double *)retval = exc.retval;       break;    }  case scalbf_overflow:    /* scalbf overflow */    {       OVERFLOWF; NAMEF = (char *) "scalbf";       if (INPUT_XF < ZEROF_VALUE /*0*/) RETVAL_NEG_HUGE_VALF;       else RETVAL_HUGE_VALF;       NOT_MATHERRF {ERRNO_RANGE;}       *(float *)retval = excf.retval;       break;    }  case hypotl_overflow:    /* hypotl overflow */    {       OVERFLOWL; NAMEL = (char *) "hypotl";       ifSVID       {         RETVAL_HUGEL;       }       else       {         RETVAL_HUGE_VALL;       }       NOT_MATHERRL {ERRNO_RANGE;}       *(long double *)retval = excl.retval;       break;    }  case hypot_overflow:    /* hypot overflow */    {       OVERFLOWD; NAMED = (char *) "hypot";       ifSVID       {         RETVAL_HUGED;       }       else       {         RETVAL_HUGE_VALD;       }       NOT_MATHERRD {ERRNO_RANGE;}       *(double *)retval = exc.retval;       break;    }  case hypotf_overflow:    /* hypotf overflow */    {       OVERFLOWF; NAMEF = (char *) "hypotf";       ifSVID       {         RETVAL_HUGEF;       }       else       {         RETVAL_HUGE_VALF;       }       NOT_MATHERRF {ERRNO_RANGE;}       *(float *)retval = excf.retval;       break;    }  case acosl_gt_one:    /* acosl(x > 1) */    {       DOMAINL; NAMEL = (char *) "acosl";       RETVAL_ZEROL;       ifSVID       {         NOT_MATHERRL         {           WRITEL_ACOS;           ERRNO_DOMAIN;         }       }       else       {         NOT_MATHERRL {ERRNO_DOMAIN;}       }       *(long double *

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -