1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Free Software Foundation, Inc.
3 # This file is distributed under the same license as the PACKAGE package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
9 "Project-Id-Version: PACKAGE VERSION\n"
10 "POT-Creation-Date: 2013-04-30 20:29+0900\n"
11 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13 "Language-Team: LANGUAGE <LL@li.org>\n"
16 "Content-Type: text/plain; charset=CHARSET\n"
17 "Content-Transfer-Encoding: 8bit\n"
20 #: build/C/man3/INFINITY.3:25
26 #: build/C/man3/INFINITY.3:25
32 #: build/C/man3/INFINITY.3:25 build/C/man3/abs.3:34 build/C/man3/acos.3:35 build/C/man3/acosh.3:35 build/C/man3/asin.3:35 build/C/man3/asinh.3:35 build/C/man3/atan.3:35 build/C/man3/atan2.3:35 build/C/man3/atanh.3:35 build/C/man3/cbrt.3:30 build/C/man3/ceil.3:27 build/C/man3/copysign.3:31 build/C/man3/cos.3:34 build/C/man3/cosh.3:36 build/C/man3/div.3:34 build/C/man3/erf.3:35 build/C/man3/erfc.3:26 build/C/man3/exp.3:36 build/C/man3/exp10.3:35 build/C/man3/exp2.3:36 build/C/man3/expm1.3:30 build/C/man3/fabs.3:32 build/C/man3/fdim.3:9 build/C/man3/fenv.3:27 build/C/man3/finite.3:25 build/C/man3/floor.3:27 build/C/man3/fma.3:12 build/C/man3/fmax.3:9 build/C/man3/fmin.3:9 build/C/man3/fmod.3:35 build/C/man3/fpclassify.3:10 build/C/man3/frexp.3:33 build/C/man3/gamma.3:9 build/C/man3/hypot.3:33 build/C/man3/ilogb.3:29 build/C/man3/infnan.3:33 build/C/man3/isgreater.3:10 build/C/man3/j0.3:36 build/C/man3/ldexp.3:34 build/C/man3/lgamma.3:11 build/C/man3/log.3:36 build/C/man3/log10.3:36 build/C/man3/log1p.3:29 build/C/man3/log2.3:36 build/C/man3/logb.3:29 build/C/man3/lrint.3:27 build/C/man3/lround.3:27 build/C/man7/math_error.7:26 build/C/man3/matherr.3:27 build/C/man3/modf.3:33 build/C/man3/nan.3:11 build/C/man3/nextafter.3:11 build/C/man3/pow.3:35 build/C/man3/pow10.3:25 build/C/man3/remainder.3:37 build/C/man3/remquo.3:12 build/C/man3/rint.3:27 build/C/man3/round.3:27 build/C/man3/scalb.3:27 build/C/man3/scalbln.3:27 build/C/man3/signbit.3:11 build/C/man3/significand.3:9 build/C/man3/sin.3:35 build/C/man3/sincos.3:9 build/C/man3/sinh.3:36 build/C/man3/sqrt.3:34 build/C/man3/tan.3:35 build/C/man3/tanh.3:35 build/C/man3/tgamma.3:13 build/C/man3/trunc.3:25 build/C/man3/y0.3:36
34 msgid "Linux Programmer's Manual"
38 #: build/C/man3/INFINITY.3:26 build/C/man3/abs.3:35 build/C/man3/acos.3:36 build/C/man3/acosh.3:36 build/C/man3/asin.3:36 build/C/man3/asinh.3:36 build/C/man3/atan.3:36 build/C/man3/atan2.3:36 build/C/man3/atanh.3:36 build/C/man3/cbrt.3:31 build/C/man3/ceil.3:28 build/C/man3/copysign.3:32 build/C/man3/cos.3:35 build/C/man3/cosh.3:37 build/C/man3/div.3:35 build/C/man3/erf.3:36 build/C/man3/erfc.3:27 build/C/man3/exp.3:37 build/C/man3/exp10.3:36 build/C/man3/exp2.3:37 build/C/man3/expm1.3:31 build/C/man3/fabs.3:33 build/C/man3/fdim.3:10 build/C/man3/fenv.3:28 build/C/man3/finite.3:26 build/C/man3/floor.3:28 build/C/man3/fma.3:13 build/C/man3/fmax.3:10 build/C/man3/fmin.3:10 build/C/man3/fmod.3:36 build/C/man3/fpclassify.3:11 build/C/man3/frexp.3:34 build/C/man3/gamma.3:10 build/C/man3/hypot.3:34 build/C/man3/ilogb.3:30 build/C/man3/infnan.3:34 build/C/man3/isgreater.3:11 build/C/man3/j0.3:37 build/C/man3/ldexp.3:35 build/C/man3/lgamma.3:12 build/C/man3/log.3:37 build/C/man3/log10.3:37 build/C/man3/log1p.3:30 build/C/man3/log2.3:37 build/C/man3/logb.3:30 build/C/man3/lrint.3:28 build/C/man3/lround.3:28 build/C/man7/math_error.7:27 build/C/man3/matherr.3:28 build/C/man3/modf.3:34 build/C/man3/nan.3:12 build/C/man3/nextafter.3:12 build/C/man3/pow.3:36 build/C/man3/pow10.3:26 build/C/man3/remainder.3:38 build/C/man3/remquo.3:13 build/C/man3/rint.3:28 build/C/man3/round.3:28 build/C/man3/scalb.3:28 build/C/man3/scalbln.3:28 build/C/man3/signbit.3:12 build/C/man3/significand.3:10 build/C/man3/sin.3:36 build/C/man3/sincos.3:10 build/C/man3/sinh.3:37 build/C/man3/sqrt.3:35 build/C/man3/tan.3:36 build/C/man3/tanh.3:36 build/C/man3/tgamma.3:14 build/C/man3/trunc.3:26 build/C/man3/y0.3:37
44 #: build/C/man3/INFINITY.3:28
45 msgid "INFINITY, NAN, HUGE_VAL, HUGE_VALF, HUGE_VALL - floating-point constants"
49 #: build/C/man3/INFINITY.3:28 build/C/man3/abs.3:37 build/C/man3/acos.3:38 build/C/man3/acosh.3:38 build/C/man3/asin.3:38 build/C/man3/asinh.3:38 build/C/man3/atan.3:38 build/C/man3/atan2.3:38 build/C/man3/atanh.3:38 build/C/man3/cbrt.3:33 build/C/man3/ceil.3:31 build/C/man3/copysign.3:34 build/C/man3/cos.3:37 build/C/man3/cosh.3:39 build/C/man3/div.3:38 build/C/man3/erf.3:38 build/C/man3/erfc.3:29 build/C/man3/exp.3:39 build/C/man3/exp10.3:38 build/C/man3/exp2.3:39 build/C/man3/expm1.3:33 build/C/man3/fabs.3:35 build/C/man3/fdim.3:12 build/C/man3/fenv.3:33 build/C/man3/finite.3:29 build/C/man3/floor.3:30 build/C/man3/fma.3:15 build/C/man3/fmax.3:12 build/C/man3/fmin.3:12 build/C/man3/fmod.3:38 build/C/man3/fpclassify.3:14 build/C/man3/frexp.3:37 build/C/man3/gamma.3:12 build/C/man3/hypot.3:36 build/C/man3/ilogb.3:32 build/C/man3/infnan.3:36 build/C/man3/isgreater.3:14 build/C/man3/j0.3:40 build/C/man3/ldexp.3:37 build/C/man3/lgamma.3:15 build/C/man3/log.3:39 build/C/man3/log10.3:39 build/C/man3/log1p.3:32 build/C/man3/log2.3:39 build/C/man3/logb.3:32 build/C/man3/lrint.3:30 build/C/man3/lround.3:31 build/C/man7/math_error.7:29 build/C/man3/matherr.3:30 build/C/man3/modf.3:37 build/C/man3/nan.3:14 build/C/man3/nextafter.3:15 build/C/man3/pow.3:38 build/C/man3/pow10.3:28 build/C/man3/remainder.3:41 build/C/man3/remquo.3:15 build/C/man3/rint.3:31 build/C/man3/round.3:30 build/C/man3/scalb.3:31 build/C/man3/scalbln.3:31 build/C/man3/signbit.3:14 build/C/man3/significand.3:13 build/C/man3/sin.3:38 build/C/man3/sincos.3:12 build/C/man3/sinh.3:39 build/C/man3/sqrt.3:37 build/C/man3/tan.3:38 build/C/man3/tanh.3:38 build/C/man3/tgamma.3:16 build/C/man3/trunc.3:28 build/C/man3/y0.3:40
55 #: build/C/man3/INFINITY.3:31
57 msgid "B<#define _ISOC99_SOURCE> /* See feature_test_macros(7) */\n"
61 #: build/C/man3/INFINITY.3:33 build/C/man3/acos.3:41 build/C/man3/acosh.3:41 build/C/man3/asin.3:41 build/C/man3/asinh.3:41 build/C/man3/atan.3:41 build/C/man3/atan2.3:41 build/C/man3/atanh.3:41 build/C/man3/cbrt.3:36 build/C/man3/ceil.3:34 build/C/man3/copysign.3:37 build/C/man3/cos.3:40 build/C/man3/cosh.3:42 build/C/man3/erf.3:41 build/C/man3/erfc.3:32 build/C/man3/exp.3:42 build/C/man3/exp10.3:43 build/C/man3/exp2.3:42 build/C/man3/expm1.3:36 build/C/man3/fabs.3:38 build/C/man3/finite.3:32 build/C/man3/floor.3:33 build/C/man3/fma.3:18 build/C/man3/fmod.3:41 build/C/man3/fpclassify.3:17 build/C/man3/frexp.3:40 build/C/man3/hypot.3:39 build/C/man3/infnan.3:39 build/C/man3/isgreater.3:17 build/C/man3/j0.3:43 build/C/man3/ldexp.3:40 build/C/man3/lgamma.3:18 build/C/man3/log.3:42 build/C/man3/log10.3:42 build/C/man3/log1p.3:35 build/C/man3/log2.3:42 build/C/man3/lrint.3:33 build/C/man3/lround.3:34 build/C/man3/modf.3:40 build/C/man3/pow.3:41 build/C/man3/remainder.3:44 build/C/man3/remquo.3:18 build/C/man3/rint.3:34 build/C/man3/round.3:33 build/C/man3/sin.3:41 build/C/man3/sinh.3:42 build/C/man3/sqrt.3:40 build/C/man3/tan.3:41 build/C/man3/tanh.3:41 build/C/man3/trunc.3:31 build/C/man3/y0.3:43
63 msgid "B<#include E<lt>math.hE<gt>>\n"
67 #: build/C/man3/INFINITY.3:35
73 #: build/C/man3/INFINITY.3:37
79 #: build/C/man3/INFINITY.3:39
85 #: build/C/man3/INFINITY.3:41
87 msgid "B<HUGE_VALF>\n"
91 #: build/C/man3/INFINITY.3:43
93 msgid "B<HUGE_VALL>\n"
97 #: build/C/man3/INFINITY.3:44 build/C/man3/abs.3:67 build/C/man3/acos.3:65 build/C/man3/acosh.3:77 build/C/man3/asin.3:67 build/C/man3/asinh.3:77 build/C/man3/atan.3:67 build/C/man3/atan2.3:65 build/C/man3/atanh.3:77 build/C/man3/cbrt.3:72 build/C/man3/ceil.3:60 build/C/man3/copysign.3:64 build/C/man3/cos.3:66 build/C/man3/cosh.3:68 build/C/man3/div.3:68 build/C/man3/erf.3:74 build/C/man3/erfc.3:65 build/C/man3/exp.3:68 build/C/man3/exp10.3:52 build/C/man3/exp2.3:68 build/C/man3/expm1.3:72 build/C/man3/fabs.3:64 build/C/man3/fdim.3:39 build/C/man3/fenv.3:61 build/C/man3/finite.3:90 build/C/man3/floor.3:59 build/C/man3/fma.3:45 build/C/man3/fmax.3:40 build/C/man3/fmin.3:40 build/C/man3/fmod.3:67 build/C/man3/fpclassify.3:66 build/C/man3/frexp.3:66 build/C/man3/gamma.3:40 build/C/man3/hypot.3:74 build/C/man3/ilogb.3:70 build/C/man3/infnan.3:44 build/C/man3/isgreater.3:48 build/C/man3/j0.3:89 build/C/man3/ldexp.3:66 build/C/man3/lgamma.3:71 build/C/man3/log.3:68 build/C/man3/log10.3:68 build/C/man3/log1p.3:71 build/C/man3/log2.3:68 build/C/man3/logb.3:69 build/C/man3/lrint.3:64 build/C/man3/lround.3:65 build/C/man7/math_error.7:35 build/C/man3/matherr.3:41 build/C/man3/modf.3:66 build/C/man3/nan.3:42 build/C/man3/nextafter.3:70 build/C/man3/pow.3:67 build/C/man3/pow10.3:41 build/C/man3/remainder.3:92 build/C/man3/remquo.3:45 build/C/man3/rint.3:86 build/C/man3/round.3:60 build/C/man3/scalb.3:60 build/C/man3/scalbln.3:76 build/C/man3/signbit.3:36 build/C/man3/significand.3:37 build/C/man3/sin.3:67 build/C/man3/sincos.3:25 build/C/man3/sinh.3:68 build/C/man3/sqrt.3:66 build/C/man3/tan.3:67 build/C/man3/tanh.3:67 build/C/man3/tgamma.3:44 build/C/man3/trunc.3:58 build/C/man3/y0.3:89
103 #: build/C/man3/INFINITY.3:48
105 "The macro B<INFINITY> expands to a I<float> constant representing positive "
110 #: build/C/man3/INFINITY.3:61
112 "The macro B<NAN> expands to a I<float> constant representing a quiet NaN "
113 "(when supported). A I<quiet> NaN is a NaN (\"not-a-number\") that does not "
114 "raise exceptions when it is used in arithmetic. The opposite is a "
115 "I<signaling> NaN. See IEC 60559:1989."
119 #: build/C/man3/INFINITY.3:69
121 "The macros B<HUGE_VAL>, B<HUGE_VALF>, B<HUGE_VALL> expand to constants of "
122 "types I<double>, I<float> and I<long double>, respectively, that represent a "
123 "large positive value, possibly plus infinity."
127 #: build/C/man3/INFINITY.3:69 build/C/man3/abs.3:82 build/C/man3/acos.3:110 build/C/man3/acosh.3:118 build/C/man3/asin.3:109 build/C/man3/asinh.3:103 build/C/man3/atan.3:94 build/C/man3/atan2.3:166 build/C/man3/atanh.3:137 build/C/man3/cbrt.3:89 build/C/man3/ceil.3:78 build/C/man3/copysign.3:85 build/C/man3/cos.3:100 build/C/man3/cosh.3:117 build/C/man3/div.3:91 build/C/man3/erf.3:124 build/C/man3/erfc.3:122 build/C/man3/exp.3:127 build/C/man3/exp10.3:76 build/C/man3/exp2.3:90 build/C/man3/expm1.3:134 build/C/man3/fabs.3:86 build/C/man3/fdim.3:81 build/C/man3/fenv.3:265 build/C/man3/floor.3:77 build/C/man3/fma.3:156 build/C/man3/fmax.3:58 build/C/man3/fmin.3:58 build/C/man3/fmod.3:132 build/C/man3/fpclassify.3:118 build/C/man3/frexp.3:98 build/C/man3/gamma.3:65 build/C/man3/hypot.3:158 build/C/man3/ilogb.3:146 build/C/man3/infnan.3:71 build/C/man3/isgreater.3:95 build/C/man3/j0.3:146 build/C/man3/ldexp.3:129 build/C/man3/lgamma.3:154 build/C/man3/log.3:127 build/C/man3/log10.3:88 build/C/man3/log1p.3:140 build/C/man3/log2.3:90 build/C/man3/logb.3:143 build/C/man3/lrint.3:109 build/C/man3/lround.3:112 build/C/man3/modf.3:90 build/C/man3/nan.3:75 build/C/man3/nextafter.3:168 build/C/man3/pow.3:313 build/C/man3/pow10.3:48 build/C/man3/remainder.3:180 build/C/man3/remquo.3:124 build/C/man3/rint.3:113 build/C/man3/round.3:83 build/C/man3/scalb.3:172 build/C/man3/scalbln.3:155 build/C/man3/signbit.3:61 build/C/man3/significand.3:51 build/C/man3/sin.3:104 build/C/man3/sincos.3:75 build/C/man3/sinh.3:122 build/C/man3/sqrt.3:106 build/C/man3/tan.3:129 build/C/man3/tanh.3:98 build/C/man3/tgamma.3:158 build/C/man3/trunc.3:69 build/C/man3/y0.3:217
129 msgid "CONFORMING TO"
133 #: build/C/man3/INFINITY.3:71
138 #: build/C/man3/INFINITY.3:71
144 #: build/C/man3/INFINITY.3:93
146 "On a glibc system, the macro B<HUGE_VAL> is always available. Availability "
147 "of the B<NAN> macro can be tested using B<#ifdef NAN>, and similarly for "
148 "B<INFINITY>, B<HUGE_VALF>, B<HUGE_VALL>. They will be defined by "
149 "I<E<lt>math.hE<gt>> if B<_ISOC99_SOURCE> or B<_GNU_SOURCE> is defined, or "
150 "B<__STDC_VERSION__> is defined and has a value not less than 199901L."
154 #: build/C/man3/INFINITY.3:93 build/C/man3/abs.3:126 build/C/man3/acos.3:116 build/C/man3/acosh.3:124 build/C/man3/asin.3:115 build/C/man3/asinh.3:109 build/C/man3/atan.3:100 build/C/man3/atan2.3:172 build/C/man3/atanh.3:154 build/C/man3/cbrt.3:93 build/C/man3/ceil.3:109 build/C/man3/copysign.3:95 build/C/man3/cos.3:113 build/C/man3/cosh.3:128 build/C/man3/div.3:106 build/C/man3/erf.3:130 build/C/man3/erfc.3:135 build/C/man3/exp.3:133 build/C/man3/exp10.3:78 build/C/man3/exp2.3:96 build/C/man3/expm1.3:168 build/C/man3/fabs.3:92 build/C/man3/fdim.3:83 build/C/man3/fenv.3:323 build/C/man3/finite.3:125 build/C/man3/floor.3:99 build/C/man3/fma.3:158 build/C/man3/fmax.3:60 build/C/man3/fmin.3:60 build/C/man3/fmod.3:146 build/C/man3/fpclassify.3:132 build/C/man3/frexp.3:137 build/C/man3/gamma.3:97 build/C/man3/hypot.3:164 build/C/man3/ilogb.3:148 build/C/man3/isgreater.3:102 build/C/man3/j0.3:159 build/C/man3/ldexp.3:135 build/C/man3/lgamma.3:173 build/C/man3/log.3:140 build/C/man3/log10.3:94 build/C/man3/log1p.3:143 build/C/man3/log2.3:96 build/C/man3/logb.3:145 build/C/man3/lrint.3:111 build/C/man3/lround.3:114 build/C/man7/math_error.7:256 build/C/man3/matherr.3:425 build/C/man3/modf.3:96 build/C/man3/nan.3:79 build/C/man3/nextafter.3:177 build/C/man3/pow.3:362 build/C/man3/pow10.3:53 build/C/man3/remainder.3:215 build/C/man3/remquo.3:126 build/C/man3/rint.3:135 build/C/man3/round.3:106 build/C/man3/scalb.3:195 build/C/man3/scalbln.3:173 build/C/man3/signbit.3:65 build/C/man3/significand.3:57 build/C/man3/sin.3:117 build/C/man3/sincos.3:77 build/C/man3/sinh.3:128 build/C/man3/sqrt.3:112 build/C/man3/tan.3:142 build/C/man3/tanh.3:104 build/C/man3/tgamma.3:184 build/C/man3/trunc.3:80 build/C/man3/y0.3:240
160 #: build/C/man3/INFINITY.3:96
161 msgid "B<fpclassify>(3), B<math_error>(7)"
165 #: build/C/man3/INFINITY.3:96 build/C/man3/abs.3:132 build/C/man3/acos.3:124 build/C/man3/acosh.3:131 build/C/man3/asin.3:123 build/C/man3/asinh.3:116 build/C/man3/atan.3:109 build/C/man3/atan2.3:180 build/C/man3/atanh.3:161 build/C/man3/cbrt.3:96 build/C/man3/ceil.3:116 build/C/man3/copysign.3:97 build/C/man3/cos.3:122 build/C/man3/cosh.3:135 build/C/man3/div.3:109 build/C/man3/erf.3:134 build/C/man3/erfc.3:139 build/C/man3/exp.3:139 build/C/man3/exp10.3:84 build/C/man3/exp2.3:102 build/C/man3/expm1.3:172 build/C/man3/fabs.3:99 build/C/man3/fdim.3:85 build/C/man3/fenv.3:325 build/C/man3/finite.3:127 build/C/man3/floor.3:106 build/C/man3/fma.3:161 build/C/man3/fmax.3:62 build/C/man3/fmin.3:62 build/C/man3/fmod.3:148 build/C/man3/fpclassify.3:137 build/C/man3/frexp.3:140 build/C/man3/gamma.3:101 build/C/man3/hypot.3:167 build/C/man3/ilogb.3:152 build/C/man3/infnan.3:76 build/C/man3/isgreater.3:105 build/C/man3/j0.3:161 build/C/man3/ldexp.3:139 build/C/man3/lgamma.3:175 build/C/man3/log.3:147 build/C/man3/log10.3:101 build/C/man3/log1p.3:147 build/C/man3/log2.3:102 build/C/man3/logb.3:148 build/C/man3/lrint.3:118 build/C/man3/lround.3:121 build/C/man7/math_error.7:267 build/C/man3/matherr.3:429 build/C/man3/modf.3:99 build/C/man3/nan.3:83 build/C/man3/nextafter.3:179 build/C/man3/pow.3:366 build/C/man3/pow10.3:56 build/C/man3/remainder.3:219 build/C/man3/remquo.3:130 build/C/man3/rint.3:141 build/C/man3/round.3:113 build/C/man3/scalb.3:198 build/C/man3/scalbln.3:176 build/C/man3/signbit.3:67 build/C/man3/significand.3:60 build/C/man3/sin.3:126 build/C/man3/sincos.3:81 build/C/man3/sinh.3:135 build/C/man3/sqrt.3:116 build/C/man3/tan.3:150 build/C/man3/tanh.3:111 build/C/man3/tgamma.3:187 build/C/man3/trunc.3:87 build/C/man3/y0.3:242
171 #: build/C/man3/INFINITY.3:103 build/C/man3/abs.3:139 build/C/man3/acos.3:131 build/C/man3/acosh.3:138 build/C/man3/asin.3:130 build/C/man3/asinh.3:123 build/C/man3/atan.3:116 build/C/man3/atan2.3:187 build/C/man3/atanh.3:168 build/C/man3/cbrt.3:103 build/C/man3/ceil.3:123 build/C/man3/copysign.3:104 build/C/man3/cos.3:129 build/C/man3/cosh.3:142 build/C/man3/div.3:116 build/C/man3/erf.3:141 build/C/man3/erfc.3:146 build/C/man3/exp.3:146 build/C/man3/exp10.3:91 build/C/man3/exp2.3:109 build/C/man3/expm1.3:179 build/C/man3/fabs.3:106 build/C/man3/fdim.3:92 build/C/man3/fenv.3:332 build/C/man3/finite.3:134 build/C/man3/floor.3:113 build/C/man3/fma.3:168 build/C/man3/fmax.3:69 build/C/man3/fmin.3:69 build/C/man3/fmod.3:155 build/C/man3/fpclassify.3:144 build/C/man3/frexp.3:147 build/C/man3/gamma.3:108 build/C/man3/hypot.3:174 build/C/man3/ilogb.3:159 build/C/man3/infnan.3:83 build/C/man3/isgreater.3:112 build/C/man3/j0.3:168 build/C/man3/ldexp.3:146 build/C/man3/lgamma.3:182 build/C/man3/log.3:154 build/C/man3/log10.3:108 build/C/man3/log1p.3:154 build/C/man3/log2.3:109 build/C/man3/logb.3:155 build/C/man3/lrint.3:125 build/C/man3/lround.3:128 build/C/man7/math_error.7:274 build/C/man3/matherr.3:436 build/C/man3/modf.3:106 build/C/man3/nan.3:90 build/C/man3/nextafter.3:186 build/C/man3/pow.3:373 build/C/man3/pow10.3:63 build/C/man3/remainder.3:226 build/C/man3/remquo.3:137 build/C/man3/rint.3:148 build/C/man3/round.3:120 build/C/man3/scalb.3:205 build/C/man3/scalbln.3:183 build/C/man3/signbit.3:74 build/C/man3/significand.3:67 build/C/man3/sin.3:133 build/C/man3/sincos.3:88 build/C/man3/sinh.3:142 build/C/man3/sqrt.3:123 build/C/man3/tan.3:157 build/C/man3/tanh.3:118 build/C/man3/tgamma.3:194 build/C/man3/trunc.3:94 build/C/man3/y0.3:249
173 "This page is part of release 3.51 of the Linux I<man-pages> project. A "
174 "description of the project, and information about reporting bugs, can be "
175 "found at http://www.kernel.org/doc/man-pages/."
179 #: build/C/man3/abs.3:34
185 #: build/C/man3/abs.3:34 build/C/man3/acos.3:35 build/C/man3/acosh.3:35 build/C/man3/asin.3:35 build/C/man3/asinh.3:35 build/C/man3/atan.3:35 build/C/man3/atan2.3:35 build/C/man3/cbrt.3:30 build/C/man3/ceil.3:27 build/C/man3/cosh.3:36 build/C/man3/erf.3:35 build/C/man3/erfc.3:26 build/C/man3/exp.3:36 build/C/man3/exp2.3:36 build/C/man3/fabs.3:32 build/C/man3/fdim.3:9 build/C/man3/floor.3:27 build/C/man3/fma.3:12 build/C/man3/fmax.3:9 build/C/man3/fmin.3:9 build/C/man3/fpclassify.3:10 build/C/man3/frexp.3:33 build/C/man3/hypot.3:33 build/C/man3/ilogb.3:29 build/C/man3/j0.3:36 build/C/man3/ldexp.3:34 build/C/man3/log.3:36 build/C/man3/log10.3:36 build/C/man3/log1p.3:29 build/C/man3/logb.3:29 build/C/man3/lrint.3:27 build/C/man3/lround.3:27 build/C/man3/modf.3:33 build/C/man3/nan.3:11 build/C/man3/nextafter.3:11 build/C/man3/remainder.3:37 build/C/man3/remquo.3:12 build/C/man3/rint.3:27 build/C/man3/round.3:27 build/C/man3/scalbln.3:27 build/C/man3/signbit.3:11 build/C/man3/sinh.3:36 build/C/man3/sqrt.3:34 build/C/man3/tanh.3:35 build/C/man3/tgamma.3:13 build/C/man3/trunc.3:25
191 #: build/C/man3/abs.3:34 build/C/man3/asinh.3:35 build/C/man3/cbrt.3:30 build/C/man3/copysign.3:31 build/C/man3/erf.3:35 build/C/man3/erfc.3:26 build/C/man3/exp10.3:35 build/C/man3/gamma.3:9 build/C/man3/infnan.3:33 build/C/man3/nan.3:11 build/C/man3/nextafter.3:11 build/C/man3/remquo.3:12 build/C/man3/signbit.3:11 build/C/man3/significand.3:9 build/C/man3/sincos.3:9 build/C/man3/tgamma.3:13
197 #: build/C/man3/abs.3:37
198 msgid "abs, labs, llabs, imaxabs - compute the absolute value of an integer"
202 #: build/C/man3/abs.3:40 build/C/man3/div.3:41
204 msgid "B<#include E<lt>stdlib.hE<gt>>\n"
208 #: build/C/man3/abs.3:42
210 msgid "B<int abs(int >I<j>B<);>\n"
214 #: build/C/man3/abs.3:44
216 msgid "B<long int labs(long int >I<j>B<);>\n"
220 #: build/C/man3/abs.3:46
222 msgid "B<long long int llabs(long long int >I<j>B<);>\n"
226 #: build/C/man3/abs.3:48 build/C/man3/div.3:49
228 msgid "B<#include E<lt>inttypes.hE<gt>>\n"
232 #: build/C/man3/abs.3:50
234 msgid "B<intmax_t imaxabs(intmax_t >I<j>B<);>\n"
238 #: build/C/man3/abs.3:55 build/C/man3/acos.3:52 build/C/man3/acosh.3:54 build/C/man3/asin.3:54 build/C/man3/asinh.3:54 build/C/man3/atan.3:54 build/C/man3/atan2.3:52 build/C/man3/atanh.3:54 build/C/man3/cbrt.3:49 build/C/man3/ceil.3:47 build/C/man3/copysign.3:50 build/C/man3/cos.3:53 build/C/man3/cosh.3:55 build/C/man3/div.3:56 build/C/man3/erf.3:52 build/C/man3/erfc.3:43 build/C/man3/exp.3:55 build/C/man3/exp2.3:55 build/C/man3/expm1.3:49 build/C/man3/fabs.3:51 build/C/man3/fdim.3:26 build/C/man3/finite.3:55 build/C/man3/floor.3:46 build/C/man3/fma.3:31 build/C/man3/fmax.3:26 build/C/man3/fmin.3:26 build/C/man3/fmod.3:54 build/C/man3/fpclassify.3:34 build/C/man3/frexp.3:53 build/C/man3/gamma.3:26 build/C/man3/hypot.3:52 build/C/man3/ilogb.3:46 build/C/man3/isgreater.3:36 build/C/man3/j0.3:68 build/C/man3/ldexp.3:53 build/C/man3/lgamma.3:39 build/C/man3/log.3:55 build/C/man3/log10.3:55 build/C/man3/log1p.3:48 build/C/man3/log2.3:55 build/C/man3/logb.3:46 build/C/man3/lrint.3:52 build/C/man3/lround.3:53 build/C/man3/modf.3:53 build/C/man3/nan.3:28 build/C/man3/nextafter.3:35 build/C/man3/pow.3:54 build/C/man3/remainder.3:61 build/C/man3/remquo.3:31 build/C/man3/rint.3:53 build/C/man3/round.3:46 build/C/man3/scalb.3:45 build/C/man3/scalbln.3:51 build/C/man3/signbit.3:24 build/C/man3/significand.3:27 build/C/man3/sin.3:54 build/C/man3/sinh.3:55 build/C/man3/sqrt.3:53 build/C/man3/tan.3:54 build/C/man3/tanh.3:54 build/C/man3/tgamma.3:30 build/C/man3/trunc.3:44 build/C/man3/y0.3:68
239 msgid "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
243 #: build/C/man3/abs.3:59
248 #: build/C/man3/abs.3:62 build/C/man3/div.3:63 build/C/man3/exp2.3:63 build/C/man3/fdim.3:34 build/C/man3/fma.3:40 build/C/man3/fmax.3:35 build/C/man3/fmin.3:35 build/C/man3/fpclassify.3:45 build/C/man3/isgreater.3:43 build/C/man3/log2.3:63 build/C/man3/lrint.3:59 build/C/man3/lround.3:60 build/C/man3/nan.3:37 build/C/man3/nextafter.3:65 build/C/man3/remquo.3:40 build/C/man3/round.3:55 build/C/man3/scalbln.3:60 build/C/man3/signbit.3:31 build/C/man3/tgamma.3:39 build/C/man3/trunc.3:53
250 "_XOPEN_SOURCE\\ E<gt>=\\ 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ "
255 #: build/C/man3/abs.3:65 build/C/man3/acos.3:63 build/C/man3/acosh.3:65 build/C/man3/acosh.3:75 build/C/man3/asin.3:65 build/C/man3/asinh.3:65 build/C/man3/asinh.3:75 build/C/man3/atan.3:65 build/C/man3/atan2.3:63 build/C/man3/atanh.3:65 build/C/man3/atanh.3:75 build/C/man3/cbrt.3:61 build/C/man3/cbrt.3:70 build/C/man3/ceil.3:58 build/C/man3/copysign.3:62 build/C/man3/cos.3:64 build/C/man3/cosh.3:66 build/C/man3/div.3:66 build/C/man3/erf.3:62 build/C/man3/erf.3:72 build/C/man3/erfc.3:53 build/C/man3/erfc.3:63 build/C/man3/exp.3:66 build/C/man3/exp2.3:66 build/C/man3/expm1.3:60 build/C/man3/expm1.3:70 build/C/man3/fabs.3:62 build/C/man3/fdim.3:37 build/C/man3/finite.3:70 build/C/man3/finite.3:83 build/C/man3/floor.3:57 build/C/man3/fma.3:43 build/C/man3/fmax.3:38 build/C/man3/fmin.3:38 build/C/man3/fmod.3:65 build/C/man3/fpclassify.3:48 build/C/man3/fpclassify.3:56 build/C/man3/fpclassify.3:64 build/C/man3/frexp.3:64 build/C/man3/hypot.3:62 build/C/man3/hypot.3:72 build/C/man3/ilogb.3:58 build/C/man3/ilogb.3:68 build/C/man3/isgreater.3:46 build/C/man3/ldexp.3:64 build/C/man3/lgamma.3:49 build/C/man3/lgamma.3:59 build/C/man3/log.3:66 build/C/man3/log10.3:66 build/C/man3/log1p.3:59 build/C/man3/log1p.3:69 build/C/man3/log2.3:66 build/C/man3/logb.3:57 build/C/man3/logb.3:67 build/C/man3/lrint.3:62 build/C/man3/lround.3:63 build/C/man3/modf.3:64 build/C/man3/nan.3:40 build/C/man3/nextafter.3:47 build/C/man3/nextafter.3:57 build/C/man3/nextafter.3:68 build/C/man3/pow.3:65 build/C/man3/remainder.3:73 build/C/man3/remainder.3:83 build/C/man3/remquo.3:43 build/C/man3/rint.3:64 build/C/man3/rint.3:74 build/C/man3/rint.3:84 build/C/man3/round.3:58 build/C/man3/scalbln.3:63 build/C/man3/scalbln.3:74 build/C/man3/signbit.3:34 build/C/man3/sin.3:65 build/C/man3/sinh.3:66 build/C/man3/sqrt.3:64 build/C/man3/tan.3:65 build/C/man3/tanh.3:65 build/C/man3/tgamma.3:42 build/C/man3/trunc.3:56
256 msgid "or I<cc\\ -std=c99>"
260 #: build/C/man3/abs.3:79
262 "The B<abs>() function computes the absolute value of the integer argument "
263 "I<j>. The B<labs>(), B<llabs>() and B<imaxabs>() functions compute the "
264 "absolute value of the argument I<j> of the appropriate integer type for the "
269 #: build/C/man3/abs.3:79 build/C/man3/acos.3:70 build/C/man3/acosh.3:82 build/C/man3/asin.3:72 build/C/man3/asinh.3:82 build/C/man3/atan.3:72 build/C/man3/atan2.3:72 build/C/man3/atanh.3:82 build/C/man3/cbrt.3:78 build/C/man3/ceil.3:69 build/C/man3/copysign.3:75 build/C/man3/cos.3:71 build/C/man3/cosh.3:77 build/C/man3/div.3:89 build/C/man3/erf.3:81 build/C/man3/erfc.3:71 build/C/man3/exp.3:73 build/C/man3/exp10.3:57 build/C/man3/exp2.3:73 build/C/man3/expm1.3:86 build/C/man3/fabs.3:69 build/C/man3/fdim.3:42 build/C/man3/fenv.3:258 build/C/man3/floor.3:68 build/C/man3/fma.3:53 build/C/man3/fmax.3:45 build/C/man3/fmin.3:45 build/C/man3/fmod.3:74 build/C/man3/frexp.3:71 build/C/man3/gamma.3:59 build/C/man3/hypot.3:92 build/C/man3/ilogb.3:78 build/C/man3/infnan.3:54 build/C/man3/isgreater.3:85 build/C/man3/j0.3:110 build/C/man3/ldexp.3:73 build/C/man3/lgamma.3:92 build/C/man3/log.3:72 build/C/man3/log10.3:72 build/C/man3/log1p.3:81 build/C/man3/log2.3:72 build/C/man3/logb.3:94 build/C/man3/lrint.3:73 build/C/man3/lround.3:76 build/C/man3/modf.3:72 build/C/man3/nextafter.3:93 build/C/man3/pow.3:72 build/C/man3/remainder.3:118 build/C/man3/remquo.3:73 build/C/man3/rint.3:105 build/C/man3/round.3:73 build/C/man3/scalb.3:79 build/C/man3/scalbln.3:95 build/C/man3/signbit.3:53 build/C/man3/sin.3:72 build/C/man3/sincos.3:49 build/C/man3/sinh.3:77 build/C/man3/sqrt.3:70 build/C/man3/tan.3:72 build/C/man3/tanh.3:76 build/C/man3/tgamma.3:63 build/C/man3/trunc.3:61 build/C/man3/y0.3:113
275 #: build/C/man3/abs.3:82
277 "Returns the absolute value of the integer argument, of the appropriate "
278 "integer type for the function."
281 #. POSIX.1 (1996 edition) requires only the
285 #: build/C/man3/abs.3:97
287 "SVr4, POSIX.1-2001, 4.3BSD, C99. C89 only includes the B<abs>() and "
288 "B<labs>() functions; the functions B<llabs>() and B<imaxabs>() were added "
293 #: build/C/man3/abs.3:97 build/C/man3/ceil.3:84 build/C/man3/copysign.3:90 build/C/man3/erfc.3:128 build/C/man3/fenv.3:267 build/C/man3/finite.3:105 build/C/man3/floor.3:83 build/C/man3/fpclassify.3:125 build/C/man3/gamma.3:68 build/C/man3/infnan.3:73 build/C/man3/isgreater.3:97 build/C/man7/math_error.7:187 build/C/man3/pow10.3:50 build/C/man3/rint.3:115 build/C/man3/round.3:85 build/C/man3/scalbln.3:157 build/C/man3/tgamma.3:160 build/C/man3/trunc.3:71
299 #: build/C/man3/abs.3:100
301 "Trying to take the absolute value of the most negative integer is not "
306 #: build/C/man3/abs.3:109
308 "The B<llabs>() function is included in glibc since version 2.0, but is not "
309 "in libc5 or libc4. The B<imaxabs>() function is included in glibc since "
314 #: build/C/man3/abs.3:115
316 "For B<llabs>() to be declared, it may be necessary to define "
317 "B<_ISOC99_SOURCE> or B<_ISOC9X_SOURCE> (depending on the version of glibc) "
318 "before including any standard headers."
322 #: build/C/man3/abs.3:126
324 "GCC handles B<abs>() and B<labs>() as built-in functions. GCC 3.0 also "
325 "handles B<llabs>() and B<imaxabs>() as built-ins."
329 #: build/C/man3/abs.3:132
330 msgid "B<cabs>(3), B<ceil>(3), B<fabs>(3), B<floor>(3), B<rint>(3)"
334 #: build/C/man3/acos.3:35
340 #: build/C/man3/acos.3:38
341 msgid "acos, acosf, acosl - arc cosine function"
345 #: build/C/man3/acos.3:45
348 "B<double acos(double >I<x>B<);>\n"
349 "B<float acosf(float >I<x>B<);>\n"
350 "B<long double acosl(long double >I<x>B<);>\n"
354 #: build/C/man3/acos.3:48 build/C/man3/acosh.3:50 build/C/man3/asin.3:50 build/C/man3/asinh.3:50 build/C/man3/atan.3:50 build/C/man3/atan2.3:48 build/C/man3/atanh.3:50 build/C/man3/cbrt.3:45 build/C/man3/ceil.3:43 build/C/man3/copysign.3:46 build/C/man3/cos.3:49 build/C/man3/cosh.3:51 build/C/man3/erf.3:48 build/C/man3/erfc.3:39 build/C/man3/exp.3:51 build/C/man3/exp10.3:52 build/C/man3/exp2.3:51 build/C/man3/expm1.3:45 build/C/man3/fabs.3:47 build/C/man3/fdim.3:22 build/C/man3/fenv.3:61 build/C/man3/floor.3:42 build/C/man3/fma.3:27 build/C/man3/fmax.3:22 build/C/man3/fmin.3:22 build/C/man3/fmod.3:50 build/C/man3/fpclassify.3:30 build/C/man3/frexp.3:49 build/C/man3/gamma.3:22 build/C/man3/hypot.3:48 build/C/man3/ilogb.3:42 build/C/man3/infnan.3:44 build/C/man3/isgreater.3:32 build/C/man3/j0.3:64 build/C/man3/ldexp.3:49 build/C/man3/lgamma.3:35 build/C/man3/log.3:51 build/C/man3/log10.3:51 build/C/man3/log1p.3:44 build/C/man3/log2.3:51 build/C/man3/logb.3:42 build/C/man3/lrint.3:48 build/C/man3/lround.3:49 build/C/man3/matherr.3:41 build/C/man3/modf.3:49 build/C/man3/nan.3:24 build/C/man3/nextafter.3:31 build/C/man3/pow.3:50 build/C/man3/pow10.3:41 build/C/man3/remainder.3:57 build/C/man3/remquo.3:27 build/C/man3/rint.3:49 build/C/man3/round.3:42 build/C/man3/scalb.3:41 build/C/man3/scalbln.3:47 build/C/man3/signbit.3:20 build/C/man3/significand.3:23 build/C/man3/sin.3:50 build/C/man3/sincos.3:25 build/C/man3/sinh.3:51 build/C/man3/sqrt.3:49 build/C/man3/tan.3:50 build/C/man3/tanh.3:50 build/C/man3/tgamma.3:26 build/C/man3/trunc.3:40 build/C/man3/y0.3:64
355 msgid "Link with I<-lm>."
359 #: build/C/man3/acos.3:57
360 msgid "B<acosf>(), B<acosl>():"
364 #: build/C/man3/acos.3:60 build/C/man3/acosh.3:72 build/C/man3/asin.3:62 build/C/man3/asinh.3:72 build/C/man3/atan.3:62 build/C/man3/atan2.3:60 build/C/man3/atanh.3:72 build/C/man3/ceil.3:55 build/C/man3/cos.3:61 build/C/man3/cosh.3:63 build/C/man3/erf.3:69 build/C/man3/exp.3:63 build/C/man3/expm1.3:67 build/C/man3/fabs.3:59 build/C/man3/floor.3:54 build/C/man3/fmod.3:62 build/C/man3/fpclassify.3:61 build/C/man3/frexp.3:61 build/C/man3/hypot.3:69 build/C/man3/ilogb.3:65 build/C/man3/ldexp.3:61 build/C/man3/lgamma.3:56 build/C/man3/log.3:63 build/C/man3/log10.3:63 build/C/man3/log1p.3:66 build/C/man3/logb.3:64 build/C/man3/modf.3:61 build/C/man3/nextafter.3:54 build/C/man3/pow.3:62 build/C/man3/remainder.3:80 build/C/man3/rint.3:81 build/C/man3/scalbln.3:71 build/C/man3/sin.3:62 build/C/man3/sinh.3:63 build/C/man3/sqrt.3:61 build/C/man3/tan.3:62 build/C/man3/tanh.3:62
366 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600 || "
367 "_ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
371 #: build/C/man3/acos.3:70
373 "The B<acos>() function calculates the arc cosine of I<x>; that is the value "
374 "whose cosine is I<x>."
378 #: build/C/man3/acos.3:74
380 "On success, these functions return the arc cosine of I<x> in radians; the "
381 "return value is in the range [0,\\ pi]."
385 #: build/C/man3/acos.3:78 build/C/man3/acosh.3:89 build/C/man3/asin.3:80 build/C/man3/asinh.3:89 build/C/man3/atan.3:80 build/C/man3/atanh.3:89 build/C/man3/cos.3:78 build/C/man3/cosh.3:84 build/C/man3/erf.3:89 build/C/man3/erfc.3:79 build/C/man3/exp.3:81 build/C/man3/expm1.3:94 build/C/man3/fabs.3:76 build/C/man3/j0.3:118 build/C/man3/ldexp.3:87 build/C/man3/lgamma.3:98 build/C/man3/log.3:80 build/C/man3/log1p.3:89 build/C/man3/logb.3:102 build/C/man3/scalbln.3:101 build/C/man3/sin.3:79 build/C/man3/sinh.3:84 build/C/man3/sqrt.3:77 build/C/man3/tan.3:79 build/C/man3/tanh.3:83 build/C/man3/tgamma.3:69 build/C/man3/y0.3:121
386 msgid "If I<x> is a NaN, a NaN is returned."
390 #: build/C/man3/acos.3:83 build/C/man3/acosh.3:93
391 msgid "If I<x> is +1, +0 is returned."
395 #: build/C/man3/acos.3:89 build/C/man3/cos.3:84 build/C/man3/sin.3:88 build/C/man3/tan.3:85
397 "If I<x> is positive infinity or negative infinity, a domain error occurs, "
398 "and a NaN is returned."
402 #. POSIX.1-2001 documents an optional range error for subnormal x;
403 #. glibc 2.8 does not do this.
405 #: build/C/man3/acos.3:95 build/C/man3/asin.3:94
407 "If I<x> is outside the range [-1,\\ 1], a domain error occurs, and a NaN is "
412 #: build/C/man3/acos.3:95 build/C/man3/acosh.3:103 build/C/man3/asin.3:94 build/C/man3/asinh.3:101 build/C/man3/atan.3:92 build/C/man3/atan2.3:162 build/C/man3/atanh.3:113 build/C/man3/cbrt.3:87 build/C/man3/ceil.3:75 build/C/man3/copysign.3:83 build/C/man3/cos.3:84 build/C/man3/cosh.3:102 build/C/man3/erf.3:104 build/C/man3/erfc.3:102 build/C/man3/exp.3:104 build/C/man3/exp10.3:64 build/C/man3/exp2.3:80 build/C/man3/expm1.3:115 build/C/man3/fabs.3:84 build/C/man3/fdim.3:59 build/C/man3/floor.3:74 build/C/man3/fma.3:117 build/C/man3/fmax.3:54 build/C/man3/fmin.3:54 build/C/man3/fmod.3:106 build/C/man3/frexp.3:96 build/C/man3/gamma.3:62 build/C/man3/hypot.3:128 build/C/man3/ilogb.3:110 build/C/man3/infnan.3:64 build/C/man3/isgreater.3:93 build/C/man3/j0.3:125 build/C/man3/ldexp.3:106 build/C/man3/lgamma.3:128 build/C/man3/log.3:104 build/C/man3/log10.3:80 build/C/man3/log1p.3:111 build/C/man3/log2.3:80 build/C/man3/logb.3:116 build/C/man3/lrint.3:87 build/C/man3/lround.3:90 build/C/man3/modf.3:88 build/C/man3/nextafter.3:138 build/C/man3/pow.3:253 build/C/man3/remainder.3:150 build/C/man3/remquo.3:101 build/C/man3/rint.3:110 build/C/man3/round.3:78 build/C/man3/scalb.3:133 build/C/man3/scalbln.3:125 build/C/man3/signbit.3:59 build/C/man3/sin.3:88 build/C/man3/sincos.3:52 build/C/man3/sinh.3:107 build/C/man3/sqrt.3:91 build/C/man3/tan.3:103 build/C/man3/tanh.3:96 build/C/man3/tgamma.3:103 build/C/man3/trunc.3:65 build/C/man3/y0.3:158
418 #: build/C/man3/acos.3:100 build/C/man3/acosh.3:108 build/C/man3/asin.3:99 build/C/man3/atanh.3:118 build/C/man3/cos.3:89 build/C/man3/cosh.3:107 build/C/man3/erf.3:109 build/C/man3/erfc.3:107 build/C/man3/exp.3:109 build/C/man3/exp10.3:69 build/C/man3/exp2.3:85 build/C/man3/expm1.3:120 build/C/man3/fdim.3:64 build/C/man3/fma.3:122 build/C/man3/fmod.3:111 build/C/man3/hypot.3:133 build/C/man3/ilogb.3:115 build/C/man3/j0.3:130 build/C/man3/ldexp.3:111 build/C/man3/lgamma.3:133 build/C/man3/log.3:109 build/C/man3/log10.3:85 build/C/man3/log1p.3:116 build/C/man3/log2.3:85 build/C/man3/logb.3:121 build/C/man3/lrint.3:92 build/C/man3/lround.3:95 build/C/man3/nextafter.3:143 build/C/man3/pow.3:278 build/C/man3/remainder.3:155 build/C/man3/remquo.3:106 build/C/man3/scalb.3:138 build/C/man3/scalbln.3:130 build/C/man3/sin.3:93 build/C/man3/sincos.3:57 build/C/man3/sinh.3:112 build/C/man3/sqrt.3:96 build/C/man3/tan.3:108 build/C/man3/tgamma.3:108 build/C/man3/y0.3:163
420 "See B<math_error>(7) for information on how to determine whether an error "
421 "has occurred when calling these functions."
425 #: build/C/man3/acos.3:102 build/C/man3/acosh.3:110 build/C/man3/asin.3:101 build/C/man3/atanh.3:120 build/C/man3/cos.3:91 build/C/man3/cosh.3:109 build/C/man3/erf.3:111 build/C/man3/erfc.3:109 build/C/man3/exp.3:111 build/C/man3/expm1.3:122 build/C/man3/fdim.3:66 build/C/man3/fma.3:124 build/C/man3/fmod.3:113 build/C/man3/hypot.3:135 build/C/man3/ilogb.3:117 build/C/man3/j0.3:132 build/C/man3/ldexp.3:113 build/C/man3/lgamma.3:135 build/C/man3/log.3:111 build/C/man3/log1p.3:118 build/C/man3/logb.3:123 build/C/man3/lrint.3:94 build/C/man3/lround.3:97 build/C/man3/nextafter.3:145 build/C/man3/pow.3:280 build/C/man3/remainder.3:157 build/C/man3/remquo.3:108 build/C/man3/scalb.3:140 build/C/man3/scalbln.3:132 build/C/man3/sin.3:95 build/C/man3/sincos.3:59 build/C/man3/sinh.3:114 build/C/man3/sqrt.3:98 build/C/man3/tan.3:110 build/C/man3/tgamma.3:110 build/C/man3/y0.3:165
426 msgid "The following errors can occur:"
430 #: build/C/man3/acos.3:102 build/C/man3/asin.3:101
432 msgid "Domain error: I<x> is outside the range [-1,\\ 1]"
436 #: build/C/man3/acos.3:110 build/C/man3/acosh.3:118 build/C/man3/asin.3:109 build/C/man3/atanh.3:128 build/C/man3/fmod.3:132 build/C/man3/log.3:119 build/C/man3/pow.3:288 build/C/man3/remainder.3:180 build/C/man3/sqrt.3:106 build/C/man3/y0.3:173
438 "I<errno> is set to B<EDOM>. An invalid floating-point exception "
439 "(B<FE_INVALID>) is raised."
443 #: build/C/man3/acos.3:116 build/C/man3/acosh.3:124 build/C/man3/asin.3:115 build/C/man3/asinh.3:109 build/C/man3/atan.3:100 build/C/man3/atan2.3:172 build/C/man3/atanh.3:143 build/C/man3/ceil.3:84 build/C/man3/exp.3:133 build/C/man3/exp2.3:96 build/C/man3/fabs.3:92 build/C/man3/floor.3:83 build/C/man3/fmod.3:138 build/C/man3/frexp.3:104 build/C/man3/ldexp.3:135 build/C/man3/log.3:133 build/C/man3/log10.3:94 build/C/man3/modf.3:96 build/C/man3/pow.3:319 build/C/man3/sin.3:110 build/C/man3/sinh.3:128 build/C/man3/sqrt.3:112 build/C/man3/tan.3:135 build/C/man3/tanh.3:104
445 "C99, POSIX.1-2001. The variant returning I<double> also conforms to SVr4, "
450 #: build/C/man3/acos.3:124
452 "B<asin>(3), B<atan>(3), B<atan2>(3), B<cacos>(3), B<cos>(3), B<sin>(3), "
457 #: build/C/man3/acosh.3:35
463 #: build/C/man3/acosh.3:38
464 msgid "acosh, acoshf, acoshl - inverse hyperbolic cosine function"
468 #: build/C/man3/acosh.3:43
470 msgid "B<double acosh(double >I<x>B<);>\n"
474 #: build/C/man3/acosh.3:45
476 msgid "B<float acoshf(float >I<x>B<);>\n"
480 #: build/C/man3/acosh.3:47
482 msgid "B<long double acoshl(long double >I<x>B<);>\n"
486 #: build/C/man3/acosh.3:58
491 #: build/C/man3/acosh.3:62 build/C/man3/asinh.3:62 build/C/man3/atanh.3:62 build/C/man3/cbrt.3:58 build/C/man3/expm1.3:57 build/C/man3/ilogb.3:55 build/C/man3/log1p.3:56 build/C/man3/logb.3:54 build/C/man3/nextafter.3:44 build/C/man3/rint.3:71
493 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || "
494 "_XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED || _ISOC99_SOURCE || "
495 "_POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
499 #: build/C/man3/acosh.3:69
500 msgid "B<acoshf>(), B<acoshl>():"
504 #: build/C/man3/acosh.3:82
506 "The B<acosh>() function calculates the inverse hyperbolic cosine of I<x>; "
507 "that is the value whose hyperbolic cosine is I<x>."
511 #: build/C/man3/acosh.3:85
512 msgid "On success, these functions return the inverse hyperbolic cosine of I<x>."
516 #: build/C/man3/acosh.3:97 build/C/man3/exp.3:86 build/C/man3/expm1.3:103 build/C/man3/log.3:89 build/C/man3/log1p.3:93 build/C/man3/sqrt.3:85 build/C/man3/tgamma.3:73
517 msgid "If I<x> is positive infinity, positive infinity is returned."
521 #: build/C/man3/acosh.3:103
523 "If I<x> is less than 1, a domain error occurs, and the functions return a "
528 #: build/C/man3/acosh.3:110
530 msgid "Domain error: I<x> is less than 1"
534 #: build/C/man3/acosh.3:131
535 msgid "B<asinh>(3), B<atanh>(3), B<cacosh>(3), B<cosh>(3), B<sinh>(3), B<tanh>(3)"
539 #: build/C/man3/asin.3:35
545 #: build/C/man3/asin.3:38
546 msgid "asin, asinf, asinl - arc sine function"
550 #: build/C/man3/asin.3:43
552 msgid "B<double asin(double >I<x>B<);>\n"
556 #: build/C/man3/asin.3:45
558 msgid "B<float asinf(float >I<x>B<);>\n"
562 #: build/C/man3/asin.3:47
564 msgid "B<long double asinl(long double >I<x>B<);>\n"
568 #: build/C/man3/asin.3:59
569 msgid "B<asinf>(), B<asinl>():"
573 #: build/C/man3/asin.3:72
575 "The B<asin>() function calculates the principal value of the arc sine of "
576 "I<x>; that is the value whose sine is I<x>."
580 #: build/C/man3/asin.3:76
582 "On success, these functions return the principal value of the arc sine of "
583 "I<x> in radians; the return value is in the range [-pi/2,\\ pi/2]."
587 #: build/C/man3/asin.3:85 build/C/man3/asinh.3:93 build/C/man3/atan.3:85 build/C/man3/atanh.3:93 build/C/man3/erf.3:93 build/C/man3/expm1.3:99 build/C/man3/scalbln.3:110 build/C/man3/sinh.3:88 build/C/man3/sqrt.3:81 build/C/man3/tanh.3:87
588 msgid "If I<x> is +0 (-0), +0 (-0) is returned."
592 #: build/C/man3/asin.3:123
594 "B<acos>(3), B<atan>(3), B<atan2>(3), B<casin>(3), B<cos>(3), B<sin>(3), "
599 #: build/C/man3/asinh.3:35
605 #: build/C/man3/asinh.3:38
606 msgid "asinh, asinhf, asinhl - inverse hyperbolic sine function"
610 #: build/C/man3/asinh.3:43
612 msgid "B<double asinh(double >I<x>B<);>\n"
616 #: build/C/man3/asinh.3:45
618 msgid "B<float asinhf(float >I<x>B<);>\n"
622 #: build/C/man3/asinh.3:47
624 msgid "B<long double asinhl(long double >I<x>B<);>\n"
628 #: build/C/man3/asinh.3:58
633 #: build/C/man3/asinh.3:69
634 msgid "B<asinhf>(), B<asinhl>():"
638 #: build/C/man3/asinh.3:82
640 "The B<asinh>() function calculates the inverse hyperbolic sine of I<x>; "
641 "that is the value whose hyperbolic sine is I<x>."
645 #: build/C/man3/asinh.3:85
646 msgid "On success, these functions return the inverse hyperbolic sine of I<x>."
650 #: build/C/man3/asinh.3:101 build/C/man3/ldexp.3:92 build/C/man3/scalbln.3:106 build/C/man3/sinh.3:93
652 "If I<x> is positive infinity (negative infinity), positive infinity "
653 "(negative infinity) is returned."
657 #: build/C/man3/asinh.3:103 build/C/man3/atan.3:94 build/C/man3/atan2.3:166 build/C/man3/cbrt.3:89 build/C/man3/copysign.3:85 build/C/man3/fabs.3:86 build/C/man3/fmax.3:56 build/C/man3/fmin.3:56 build/C/man3/frexp.3:98 build/C/man3/isgreater.3:95 build/C/man3/modf.3:90 build/C/man3/signbit.3:61 build/C/man3/tanh.3:98 build/C/man3/trunc.3:67
658 msgid "No errors occur."
662 #: build/C/man3/asinh.3:116
663 msgid "B<acosh>(3), B<atanh>(3), B<casinh>(3), B<cosh>(3), B<sinh>(3), B<tanh>(3)"
667 #: build/C/man3/atan.3:35
673 #: build/C/man3/atan.3:38
674 msgid "atan, atanf, atanl - arc tangent function"
678 #: build/C/man3/atan.3:43
680 msgid "B<double atan(double >I<x>B<);>\n"
684 #: build/C/man3/atan.3:45
686 msgid "B<float atanf(float >I<x>B<);>\n"
690 #: build/C/man3/atan.3:47
692 msgid "B<long double atanl( long double >I<x>B<);>\n"
696 #: build/C/man3/atan.3:59
697 msgid "B<atanf>(), B<atanl>():"
701 #: build/C/man3/atan.3:72
703 "The B<atan>() function calculates the principal value of the arc tangent of "
704 "I<x>; that is the value whose tangent is I<x>."
708 #: build/C/man3/atan.3:76
710 "On success, these functions return the principal value of the arc tangent of "
711 "I<x> in radians; the return value is in the range [-pi/2,\\ pi/2]."
715 #. POSIX.1-2001 documents an optional range error for subnormal x;
716 #. glibc 2.8 does not do this.
718 #: build/C/man3/atan.3:92
719 msgid "If I<x> is positive infinity (negative infinity), +pi/2 (-pi/2) is returned."
723 #: build/C/man3/atan.3:109
725 "B<acos>(3), B<asin>(3), B<atan2>(3), B<carg>(3), B<catan>(3), B<cos>(3), "
726 "B<sin>(3), B<tan>(3)"
730 #: build/C/man3/atan2.3:35
736 #: build/C/man3/atan2.3:38
737 msgid "atan2, atan2f, atan2l - arc tangent function of two variables"
741 #: build/C/man3/atan2.3:45
744 "B<double atan2(double >I<y>B<, double >I<x>B<);>\n"
745 "B<float atan2f(float >I<y>B<, float >I<x>B<);>\n"
746 "B<long double atan2l(long double >I<y>B<, long double >I<x>B<);>\n"
750 #: build/C/man3/atan2.3:57
751 msgid "B<atan2f>(), B<atan2l>():"
755 #: build/C/man3/atan2.3:72
757 "The B<atan2>() function calculates the principal value of the arc tangent "
758 "of I<y/x>, using the signs of the two arguments to determine the quadrant of "
763 #: build/C/man3/atan2.3:76
765 "On success, these functions return the principal value of the arc tangent of "
766 "I<y/x> in radians; the return value is in the range [-pi,\\ pi]."
770 #: build/C/man3/atan2.3:82
771 msgid "If I<y> is +0 (-0) and I<x> is less than 0, +pi (-pi) is returned."
775 #: build/C/man3/atan2.3:88
776 msgid "If I<y> is +0 (-0) and I<x> is greater than 0, +0 (-0) is returned."
780 #: build/C/man3/atan2.3:94
781 msgid "If I<y> is less than 0 and I<x> is +0 or -0, -pi/2 is returned."
785 #: build/C/man3/atan2.3:100
786 msgid "If I<y> is greater than 0 and I<x> is +0 or -0, pi/2 is returned."
792 #. is 0, a pole error shall not occur.
794 #: build/C/man3/atan2.3:111
795 msgid "If either I<x> or I<y> is NaN, a NaN is returned."
799 #. If the result underflows, a range error may occur and
801 #. should be returned.
803 #: build/C/man3/atan2.3:122
804 msgid "If I<y> is +0 (-0) and I<x> is -0, +pi (-pi) is returned."
808 #: build/C/man3/atan2.3:128
809 msgid "If I<y> is +0 (-0) and I<x> is +0, +0 (-0) is returned."
813 #: build/C/man3/atan2.3:134
815 "If I<y> is a finite value greater (less) than 0, and I<x> is negative "
816 "infinity, +pi (-pi) is returned."
820 #: build/C/man3/atan2.3:140
822 "If I<y> is a finite value greater (less) than 0, and I<x> is positive "
823 "infinity, +0 (-0) is returned."
827 #: build/C/man3/atan2.3:147
829 "If I<y> is positive infinity (negative infinity), and I<x> is finite, pi/2 "
830 "(-pi/2) is returned."
834 #: build/C/man3/atan2.3:153
836 "If I<y> is positive infinity (negative infinity) and I<x> is negative "
837 "infinity, +3*pi/4 (-3*pi/4) is returned."
842 #. If both arguments are 0, a domain error shall not occur.
844 #: build/C/man3/atan2.3:162
846 "If I<y> is positive infinity (negative infinity) and I<x> is positive "
847 "infinity, +pi/4 (-pi/4) is returned."
851 #: build/C/man3/atan2.3:180
853 "B<acos>(3), B<asin>(3), B<atan>(3), B<carg>(3), B<cos>(3), B<sin>(3), "
858 #: build/C/man3/atanh.3:35
864 #: build/C/man3/atanh.3:35 build/C/man3/cos.3:34 build/C/man3/lgamma.3:11 build/C/man3/sin.3:35 build/C/man3/tan.3:35
870 #: build/C/man3/atanh.3:38
871 msgid "atanh, atanhf, atanhl - inverse hyperbolic tangent function"
875 #: build/C/man3/atanh.3:43
877 msgid "B<double atanh(double >I<x>B<);>\n"
881 #: build/C/man3/atanh.3:45
883 msgid "B<float atanhf(float >I<x>B<);>\n"
887 #: build/C/man3/atanh.3:47
889 msgid "B<long double atanhl(long double >I<x>B<);>\n"
893 #: build/C/man3/atanh.3:58
898 #: build/C/man3/atanh.3:69
899 msgid "B<atanhf>(), B<atanhl>():"
903 #: build/C/man3/atanh.3:82
905 "The B<atanh>() function calculates the inverse hyperbolic tangent of I<x>; "
906 "that is the value whose hyperbolic tangent is I<x>."
910 #: build/C/man3/atanh.3:85
911 msgid "On success, these functions return the inverse hyperbolic tangent of I<x>."
915 #: build/C/man3/atanh.3:104
917 "If I<x> is +1 or -1, a pole error occurs, and the functions return "
918 "B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, respectively, with the "
919 "mathematically correct sign."
923 #. POSIX.1-2001 documents an optional range error for subnormal x;
924 #. glibc 2.8 does not do this.
926 #: build/C/man3/atanh.3:113
928 "If the absolute value of I<x> is greater than 1, a domain error occurs, and "
933 #: build/C/man3/atanh.3:120
935 msgid "Domain error: I<x> less than -1 or greater than +1"
939 #: build/C/man3/atanh.3:128
941 msgid "Pole error: I<x> is +1 or -1"
945 #: build/C/man3/atanh.3:137 build/C/man3/lgamma.3:144 build/C/man3/pow.3:297
947 "I<errno> is set to B<ERANGE> (but see BUGS). A divide-by-zero "
948 "floating-point exception (B<FE_DIVBYZERO>) is raised."
952 #: build/C/man3/atanh.3:143 build/C/man3/cos.3:106 build/C/man3/cosh.3:123 build/C/man3/expm1.3:137 build/C/man3/fenv.3:312 build/C/man3/fmod.3:138 build/C/man3/j0.3:152 build/C/man3/lgamma.3:163 build/C/man3/log.3:133 build/C/man3/nextafter.3:172 build/C/man3/pow.3:319 build/C/man3/remainder.3:204 build/C/man3/sin.3:110 build/C/man3/tan.3:135 build/C/man3/tgamma.3:167 build/C/man3/y0.3:223
957 #. Bug: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6759
958 #. This can be seen in sysdeps/ieee754/k_standard.c
960 #: build/C/man3/atanh.3:154
962 "In glibc 2.9 and earlier, when a pole error occurs, I<errno> as set to "
963 "B<EDOM> instead of the POSIX-mandated B<ERANGE>. Since version 2.10, glibc "
964 "does the right thing."
968 #: build/C/man3/atanh.3:161
969 msgid "B<acosh>(3), B<asinh>(3), B<catanh>(3), B<cosh>(3), B<sinh>(3), B<tanh>(3)"
973 #: build/C/man3/cbrt.3:30
979 #: build/C/man3/cbrt.3:33
980 msgid "cbrt, cbrtf, cbrtl - cube root function"
984 #: build/C/man3/cbrt.3:38
986 msgid "B<double cbrt(double >I<x>B<);>\n"
990 #: build/C/man3/cbrt.3:40
992 msgid "B<float cbrtf(float >I<x>B<);>\n"
996 #: build/C/man3/cbrt.3:42
998 msgid "B<long double cbrtl(long double >I<x>B<);>\n"
1002 #: build/C/man3/cbrt.3:53
1007 #: build/C/man3/cbrt.3:64
1008 msgid "B<cbrtf>(), B<cbrtl>():"
1012 #: build/C/man3/cbrt.3:67
1014 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600 || "
1015 "_ISOC99_SOURCE || _POSIX_C_SOUCE\\ E<gt>=\\ 200112L;"
1019 #: build/C/man3/cbrt.3:78
1021 "The B<cbrt>() function returns the (real) cube root of I<x>. This function "
1022 "cannot fail; every representable real value has a representable real cube "
1027 #: build/C/man3/cbrt.3:81
1028 msgid "These functions return the cube root of I<x>."
1032 #: build/C/man3/cbrt.3:87
1034 "If I<x> is +0, -0, positive infinity, negative infinity, or NaN, I<x> is "
1039 #: build/C/man3/cbrt.3:93 build/C/man3/expm1.3:137 build/C/man3/fdim.3:83 build/C/man3/fma.3:158 build/C/man3/fmax.3:60 build/C/man3/fmin.3:60 build/C/man3/ilogb.3:148 build/C/man3/isgreater.3:97 build/C/man3/log1p.3:143 build/C/man3/logb.3:145 build/C/man3/lrint.3:111 build/C/man3/lround.3:114 build/C/man3/remquo.3:126 build/C/man3/rint.3:115 build/C/man3/round.3:85 build/C/man3/scalbln.3:157 build/C/man3/tgamma.3:160 build/C/man3/trunc.3:71
1040 msgid "C99, POSIX.1-2001."
1044 #: build/C/man3/cbrt.3:96
1045 msgid "B<pow>(3), B<sqrt>(3)"
1049 #: build/C/man3/ceil.3:27
1055 #: build/C/man3/ceil.3:31
1057 "ceil, ceilf, ceill - ceiling function: smallest integral value not less than "
1062 #: build/C/man3/ceil.3:36
1064 msgid "B<double ceil(double >I<x>B<);>\n"
1068 #: build/C/man3/ceil.3:38
1070 msgid "B<float ceilf(float >I<x>B<);>\n"
1074 #: build/C/man3/ceil.3:40
1076 msgid "B<long double ceill(long double >I<x>B<);>\n"
1080 #: build/C/man3/ceil.3:52
1081 msgid "B<ceilf>(), B<ceill>():"
1085 #: build/C/man3/ceil.3:63
1087 "These functions return the smallest integral value that is not less than "
1092 #: build/C/man3/ceil.3:69
1093 msgid "For example, I<ceil(0.5)> is 1.0, and I<ceil(-0.5)> is 0.0."
1097 #: build/C/man3/ceil.3:72
1098 msgid "These functions return the ceiling of I<x>."
1102 #: build/C/man3/ceil.3:75 build/C/man3/rint.3:110 build/C/man3/round.3:78
1103 msgid "If I<x> is integral, +0, -0, NaN, or infinite, I<x> itself is returned."
1107 #: build/C/man3/ceil.3:78 build/C/man3/floor.3:77 build/C/man3/rint.3:113 build/C/man3/round.3:81
1109 "No errors occur. POSIX.1-2001 documents a range error for overflows, but "
1114 #: build/C/man3/ceil.3:100 build/C/man3/floor.3:99 build/C/man3/rint.3:130
1116 "SUSv2 and POSIX.1-2001 contain text about overflow (which might set I<errno> "
1117 "to B<ERANGE>, or raise an B<FE_OVERFLOW> exception). In practice, the "
1118 "result cannot overflow on any current machine, so this error-handling stuff "
1119 "is just nonsense. (More precisely, overflow can happen only when the "
1120 "maximum value of the exponent is smaller than the number of mantissa bits. "
1121 "For the IEEE-754 standard 32-bit and 64-bit floating-point numbers the "
1122 "maximum value of the exponent is 128 (respectively, 1024), and the number of "
1123 "mantissa bits is 24 (respectively, 53).)"
1127 #: build/C/man3/ceil.3:109 build/C/man3/trunc.3:80
1129 "The integral value returned by these functions may be too large to store in "
1130 "an integer type (I<int>, I<long>, etc.). To avoid an overflow, which will "
1131 "produce undefined results, an application should perform a range check on "
1132 "the returned value before assigning it to an integer type."
1136 #: build/C/man3/ceil.3:116
1138 "B<floor>(3), B<lrint>(3), B<nearbyint>(3), B<rint>(3), B<round>(3), "
1143 #: build/C/man3/copysign.3:31
1149 #: build/C/man3/copysign.3:31
1155 #: build/C/man3/copysign.3:34
1156 msgid "copysign, copysignf, copysignl - copy sign of a number"
1160 #: build/C/man3/copysign.3:39
1162 msgid "B<double copysign(double >I<x>B<, double >I<y>B<);>\n"
1166 #: build/C/man3/copysign.3:41
1168 msgid "B<float copysignf(float >I<x>B<, float >I<y>B<);>\n"
1172 #: build/C/man3/copysign.3:43
1174 msgid "B<long double copysignl(long double >I<x>B<, long double >I<y>B<);>\n"
1178 #: build/C/man3/copysign.3:56
1179 msgid "B<copysign>(), B<copysignf>(), B<copysignl>():"
1183 #: build/C/man3/copysign.3:59
1185 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600 || "
1186 "_ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
1190 #: build/C/man3/copysign.3:69
1192 "The B<copysign>() functions return a value whose absolute value matches "
1193 "that of I<x>, but whose sign bit matches that of I<y>."
1197 #: build/C/man3/copysign.3:75
1199 "For example, I<copysign(42.0,\\ -1.0)> and I<copysign(-42.0, -1.0)> both "
1204 #: build/C/man3/copysign.3:80
1206 "On success, these functions return a value whose magnitude is taken from "
1207 "I<x> and whose sign is taken from I<y>."
1211 #: build/C/man3/copysign.3:83
1212 msgid "If I<x> is a NaN, a NaN with the sign bit of I<y> is returned."
1216 #: build/C/man3/copysign.3:90 build/C/man3/nextafter.3:172 build/C/man3/signbit.3:65
1218 "C99, POSIX.1-2001. This function is defined in IEC 559 (and the appendix "
1219 "with recommended functions in IEEE 754/IEEE 854)."
1223 #: build/C/man3/copysign.3:95
1225 "On architectures where the floating-point formats are not IEEE 754 "
1226 "compliant, the B<copysign>() functions may treat a negative zero as "
1231 #: build/C/man3/copysign.3:97
1232 msgid "B<signbit>(3)"
1236 #: build/C/man3/cos.3:34
1242 #: build/C/man3/cos.3:37
1243 msgid "cos, cosf, cosl - cosine function"
1247 #: build/C/man3/cos.3:42
1249 msgid "B<double cos(double >I<x>B<);>\n"
1253 #: build/C/man3/cos.3:44
1255 msgid "B<float cosf(float >I<x>B<);>\n"
1259 #: build/C/man3/cos.3:46
1261 msgid "B<long double cosl(long double >I<x>B<);>\n"
1265 #: build/C/man3/cos.3:58
1266 msgid "B<cosf>(), B<cosl>():"
1270 #: build/C/man3/cos.3:71
1272 "The B<cos>() function returns the cosine of I<x>, where I<x> is given in "
1277 #: build/C/man3/cos.3:74
1278 msgid "On success, these functions return the cosine of I<x>."
1282 #: build/C/man3/cos.3:91 build/C/man3/fmod.3:113 build/C/man3/ilogb.3:130 build/C/man3/sin.3:95 build/C/man3/sincos.3:59 build/C/man3/tan.3:110
1284 msgid "Domain error: I<x> is an infinity"
1288 #: build/C/man3/cos.3:100 build/C/man3/fmod.3:122 build/C/man3/sin.3:104 build/C/man3/tan.3:119
1290 "I<errno> is set to B<EDOM> (but see BUGS). An invalid floating-point "
1291 "exception (B<FE_INVALID>) is raised."
1295 #: build/C/man3/cos.3:106 build/C/man3/cosh.3:123 build/C/man3/erf.3:130 build/C/man3/erfc.3:128 build/C/man3/hypot.3:164 build/C/man3/log2.3:96
1297 "C99, POSIX.1-2001. The variant returning I<double> also conforms to SVr4, "
1301 #. http://sourceware.org/bugzilla/show_bug.cgi?id=6782
1303 #: build/C/man3/cos.3:113 build/C/man3/sin.3:117 build/C/man3/tan.3:142
1305 "Before version 2.10, the glibc implementation did not set I<errno> to "
1306 "B<EDOM> when a domain error occurred."
1310 #: build/C/man3/cos.3:122
1312 "B<acos>(3), B<asin>(3), B<atan>(3), B<atan2>(3), B<ccos>(3), B<sin>(3), "
1313 "B<sincos>(3), B<tan>(3)"
1317 #: build/C/man3/cosh.3:36
1323 #: build/C/man3/cosh.3:39
1324 msgid "cosh, coshf, coshl - hyperbolic cosine function"
1328 #: build/C/man3/cosh.3:44
1330 msgid "B<double cosh(double >I<x>B<);>\n"
1334 #: build/C/man3/cosh.3:46
1336 msgid "B<float coshf(float >I<x>B<);>\n"
1340 #: build/C/man3/cosh.3:48
1342 msgid "B<long double coshl(long double >I<x>B<);>\n"
1346 #: build/C/man3/cosh.3:60
1347 msgid "B<coshf>(), B<coshl>():"
1351 #: build/C/man3/cosh.3:73
1353 "The B<cosh>() function returns the hyperbolic cosine of I<x>, which is "
1354 "defined mathematically as:"
1358 #: build/C/man3/cosh.3:76
1360 msgid " cosh(x) = (exp(x) + exp(-x)) / 2\n"
1364 #: build/C/man3/cosh.3:80
1365 msgid "On success, these functions return the hyperbolic cosine of I<x>."
1369 #: build/C/man3/cosh.3:88 build/C/man3/erfc.3:83
1370 msgid "If I<x> is +0 or -0, 1 is returned."
1374 #: build/C/man3/cosh.3:93 build/C/man3/lgamma.3:107
1376 "If I<x> is positive infinity or negative infinity, positive infinity is "
1381 #: build/C/man3/cosh.3:102 build/C/man3/exp.3:104
1383 "If the result overflows, a range error occurs, and the functions return "
1384 "+B<HUGE_VAL>, +B<HUGE_VALF>, or +B<HUGE_VALL>, respectively."
1388 #: build/C/man3/cosh.3:109 build/C/man3/fdim.3:66 build/C/man3/fma.3:133 build/C/man3/hypot.3:135 build/C/man3/lgamma.3:144 build/C/man3/nextafter.3:145 build/C/man3/sinh.3:114 build/C/man3/tan.3:119 build/C/man3/tgamma.3:128 build/C/man3/y0.3:204
1390 msgid "Range error: result overflow"
1394 #: build/C/man3/cosh.3:117 build/C/man3/exp.3:119 build/C/man3/hypot.3:143 build/C/man3/ldexp.3:121 build/C/man3/lgamma.3:154 build/C/man3/pow.3:305 build/C/man3/sinh.3:122 build/C/man3/tgamma.3:136
1396 "I<errno> is set to B<ERANGE>. An overflow floating-point exception "
1397 "(B<FE_OVERFLOW>) is raised."
1401 #: build/C/man3/cosh.3:128
1403 "In glibc version 2.3.4 and earlier, an overflow floating-point "
1404 "(B<FE_OVERFLOW>) exception is not raised when an overflow occurs."
1408 #: build/C/man3/cosh.3:135
1409 msgid "B<acosh>(3), B<asinh>(3), B<atanh>(3), B<ccos>(3), B<sinh>(3), B<tanh>(3)"
1413 #: build/C/man3/div.3:34
1419 #: build/C/man3/div.3:34
1425 #: build/C/man3/div.3:38
1427 "div, ldiv, lldiv, imaxdiv - compute quotient and remainder of an integer "
1432 #: build/C/man3/div.3:43
1434 msgid "B<div_t div(int >I<numerator>B<, int >I<denominator>B<);>\n"
1438 #: build/C/man3/div.3:45
1440 msgid "B<ldiv_t ldiv(long >I<numerator>B<, long >I<denominator>B<);>\n"
1444 #: build/C/man3/div.3:47
1446 msgid "B<lldiv_t lldiv(long long >I<numerator>B<, long long >I<denominator>B<);>\n"
1450 #: build/C/man3/div.3:51
1453 "B<imaxdiv_t imaxdiv(intmax_t >I<numerator>B<, intmax_t "
1454 ">I<denominator>B<);>\n"
1458 #: build/C/man3/div.3:60
1463 #: build/C/man3/div.3:78
1465 "The B<div>() function computes the value I<numerator>/I<denominator> and "
1466 "returns the quotient and remainder in a structure named I<div_t> that "
1467 "contains two integer members (in unspecified order) named I<quot> and "
1468 "I<rem>. The quotient is rounded toward zero. The result satisfies "
1469 "I<quot>*I<denominator>+I<rem> = I<numerator>."
1473 #: build/C/man3/div.3:89
1475 "The B<ldiv>(), B<lldiv>(), and B<imaxdiv>() functions do the same, dividing "
1476 "numbers of the indicated type and returning the result in a structure of the "
1477 "indicated name, in all cases with fields I<quot> and I<rem> of the same type "
1478 "as the function arguments."
1482 #: build/C/man3/div.3:91
1483 msgid "The I<div_t> (etc.) structure."
1487 #: build/C/man3/div.3:98
1489 "SVr4, 4.3BSD, C89. C99. The functions B<lldiv>() and B<imaxdiv>() were "
1494 #: build/C/man3/div.3:98 build/C/man3/frexp.3:104 build/C/man3/matherr.3:275 build/C/man3/remainder.3:213
1500 #: build/C/man3/div.3:100
1505 #: build/C/man3/div.3:103
1507 msgid " div_t q = div(-5, 3);\n"
1511 #: build/C/man3/div.3:106
1512 msgid "the values I<q.quot> and I<q.rem> are -1 and -2, respectively."
1516 #: build/C/man3/div.3:109
1517 msgid "B<abs>(3), B<remainder>(3)"
1521 #: build/C/man3/erf.3:35
1527 #: build/C/man3/erf.3:38
1528 msgid "erf, erff, erfl, - error function"
1532 #: build/C/man3/erf.3:45
1535 "B<double erf(double >I<x>B<);>\n"
1536 "B<float erff(float >I<x>B<);>\n"
1537 "B<long double erfl(long double >I<x>B<);>\n"
1541 #: build/C/man3/erf.3:56
1546 #: build/C/man3/erf.3:59 build/C/man3/erfc.3:50 build/C/man3/fpclassify.3:53 build/C/man3/hypot.3:59 build/C/man3/lgamma.3:46
1548 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE || _ISOC99_SOURCE || "
1549 "_POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
1553 #: build/C/man3/erf.3:66
1554 msgid "B<erff>(), B<erfl>():"
1558 #: build/C/man3/erf.3:79
1559 msgid "The B<erf>() function returns the error function of I<x>, defined as"
1563 #: build/C/man3/erf.3:79
1565 msgid " erf(x) = 2/sqrt(pi)* integral from 0 to x of exp(-t*t) dt"
1569 #: build/C/man3/erf.3:85
1571 "On success, these functions return the error function of I<x>, a value in "
1572 "the range [-1,\\ 1]."
1576 #. POSIX.1-2001 documents an optional range error (underflow)
1578 #. glibc 2.8 does not do this.
1580 #: build/C/man3/erf.3:98 build/C/man3/tanh.3:96
1581 msgid "If I<x> is positive infinity (negative infinity), +1 (-1) is returned."
1585 #: build/C/man3/erf.3:104
1587 "If I<x> is subnormal, a range error occurs, and the return value is "
1592 #: build/C/man3/erf.3:111
1594 msgid "Range error: result underflow (I<x> is subnormal)"
1597 #. e.g., tgamma(-172.5) on glibc 2.8/x86-32
1602 #: build/C/man3/erf.3:119 build/C/man3/erfc.3:117 build/C/man3/fma.3:149 build/C/man3/hypot.3:151 build/C/man3/nextafter.3:163 build/C/man3/scalb.3:166 build/C/man3/scalbln.3:148 build/C/man3/tgamma.3:148
1603 msgid "An underflow floating-point exception (B<FE_UNDERFLOW>) is raised."
1606 #. FIXME . Is it intentional that these functions do not set errno?
1607 #. sin() and cos() also don't set errno; bugs have been raised for
1610 #: build/C/man3/erf.3:124 build/C/man3/erfc.3:122 build/C/man3/fdim.3:79 build/C/man3/fma.3:154 build/C/man3/log1p.3:140 build/C/man3/logb.3:143 build/C/man3/lrint.3:107 build/C/man3/lround.3:110 build/C/man3/nextafter.3:168 build/C/man3/remquo.3:122 build/C/man3/scalb.3:172 build/C/man3/scalbln.3:153 build/C/man3/sincos.3:73
1611 msgid "These functions do not set I<errno>."
1615 #: build/C/man3/erf.3:134
1616 msgid "B<cerf>(3), B<erfc>(3), B<exp>(3)"
1620 #: build/C/man3/erfc.3:26
1626 #: build/C/man3/erfc.3:29
1627 msgid "erfc, erfcf, erfcl - complementary error function"
1631 #: build/C/man3/erfc.3:36
1634 "B<double erfc(double >I<x>B<);>\n"
1635 "B<float erfcf(float >I<x>B<);>\n"
1636 "B<long double erfcl(long double >I<x>B<);>\n"
1640 #: build/C/man3/erfc.3:47
1645 #: build/C/man3/erfc.3:57
1646 msgid "B<erfcf>(), B<erfcl>():"
1650 #: build/C/man3/erfc.3:60
1652 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600|| _ISOC99_SOURCE "
1653 "|| _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
1657 #: build/C/man3/erfc.3:71
1659 "The B<erfc>() function returns the complementary error function of I<x>, "
1660 "that is, 1.0 - erf(x)."
1664 #: build/C/man3/erfc.3:75
1666 "On success, these functions return the complementary error function of I<x>, "
1667 "a value in the range [0,2]."
1671 #: build/C/man3/erfc.3:88
1672 msgid "If I<x> is positive infinity, +0 is returned."
1676 #: build/C/man3/erfc.3:93
1677 msgid "If I<x> is negative infinity, +2 is returned."
1681 #: build/C/man3/erfc.3:96
1683 "If the function result underflows and produces an unrepresentable value, the "
1684 "return value is 0.0."
1687 #. e.g., erfc(27) on x86-32
1689 #: build/C/man3/erfc.3:102
1691 "If the function result underflows but produces a representable (i.e., "
1692 "subnormal) value, that value is returned, and a range error occurs."
1696 #: build/C/man3/erfc.3:109
1698 msgid "Range error: result underflow (result is subnormal)"
1702 #: build/C/man3/erfc.3:135
1704 "The B<erfc>() functions are provided to avoid the loss accuracy that would "
1705 "occur for the calculation 1-erf(x) for large values of I<x> (for which the "
1706 "value of erf(x) approaches 1)."
1710 #: build/C/man3/erfc.3:139
1711 msgid "B<cerf>(3), B<erf>(3), B<exp>(3)"
1715 #: build/C/man3/exp.3:36
1721 #: build/C/man3/exp.3:39
1722 msgid "exp, expf, expl - base-e exponential function"
1726 #: build/C/man3/exp.3:44
1728 msgid "B<double exp(double >I<x>B<);>\n"
1732 #: build/C/man3/exp.3:46
1734 msgid "B<float expf(float >I<x>B<);>\n"
1738 #: build/C/man3/exp.3:48
1740 msgid "B<long double expl(long double >I<x>B<);>\n"
1744 #: build/C/man3/exp.3:60
1745 msgid "B<expf>(), B<expl>():"
1749 #: build/C/man3/exp.3:73
1751 "The B<exp>() function returns the value of e (the base of natural "
1752 "logarithms) raised to the power of I<x>."
1756 #: build/C/man3/exp.3:76
1757 msgid "On success, these functions return the exponential value of I<x>."
1761 #: build/C/man3/exp.3:91
1762 msgid "If I<x> is negative infinity, +0 is returned."
1766 #: build/C/man3/exp.3:95 build/C/man3/ldexp.3:96
1767 msgid "If the result underflows, a range error occurs, and zero is returned."
1771 #: build/C/man3/exp.3:111 build/C/man3/expm1.3:122 build/C/man3/ldexp.3:113 build/C/man3/scalb.3:150 build/C/man3/scalbln.3:132
1773 msgid "Range error, overflow"
1777 #: build/C/man3/exp.3:119 build/C/man3/ldexp.3:121 build/C/man3/scalb.3:158 build/C/man3/scalbln.3:140
1779 msgid "Range error, underflow"
1783 #: build/C/man3/exp.3:127 build/C/man3/ldexp.3:129 build/C/man3/pow.3:313
1785 "I<errno> is set to B<ERANGE>. An underflow floating-point exception "
1786 "(B<FE_UNDERFLOW>) is raised."
1790 #: build/C/man3/exp.3:139
1791 msgid "B<cbrt>(3), B<cexp>(3), B<exp10>(3), B<exp2>(3), B<sqrt>(3)"
1795 #: build/C/man3/exp10.3:35
1801 #: build/C/man3/exp10.3:35 build/C/man7/math_error.7:26 build/C/man3/pow10.3:25 build/C/man3/sincos.3:9
1807 #: build/C/man3/exp10.3:38
1808 msgid "exp10, exp10f, exp10l - base-10 exponential function"
1812 #: build/C/man3/exp10.3:41 build/C/man3/fenv.3:290
1814 msgid "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
1818 #: build/C/man3/exp10.3:45
1820 msgid "B<double exp10(double >I<x>B<);>\n"
1824 #: build/C/man3/exp10.3:47
1826 msgid "B<float exp10f(float >I<x>B<);>\n"
1830 #: build/C/man3/exp10.3:49
1832 msgid "B<long double exp10l(long double >I<x>B<);>\n"
1836 #: build/C/man3/exp10.3:57
1838 "The B<exp10>() function returns the value of 10 raised to the power of "
1843 #: build/C/man3/exp10.3:60
1844 msgid "On success, these functions return the base-10 exponential value of I<x>."
1848 #: build/C/man3/exp10.3:64 build/C/man3/exp2.3:80
1850 "For various special cases, including the handling of infinity and NaN, as "
1851 "well as overflows and underflows, see B<exp>(3)."
1855 #: build/C/man3/exp10.3:74 build/C/man3/exp2.3:88
1857 "For a discussion of the errors that can occur for these functions, see "
1862 #: build/C/man3/exp10.3:74 build/C/man3/exp2.3:88 build/C/man3/fdim.3:79 build/C/man3/fenv.3:263 build/C/man3/fma.3:154 build/C/man3/fmax.3:56 build/C/man3/fmin.3:56 build/C/man3/log2.3:88 build/C/man3/lrint.3:107 build/C/man3/lround.3:110 build/C/man3/nan.3:73 build/C/man3/pow10.3:46 build/C/man3/remquo.3:122 build/C/man3/round.3:81 build/C/man3/scalbln.3:153 build/C/man3/sincos.3:73 build/C/man3/tgamma.3:156 build/C/man3/trunc.3:67
1868 #: build/C/man3/exp10.3:76 build/C/man3/exp2.3:90 build/C/man3/fdim.3:81 build/C/man3/fenv.3:265 build/C/man3/fma.3:156 build/C/man3/fmax.3:58 build/C/man3/fmin.3:58 build/C/man3/log2.3:90 build/C/man3/lrint.3:109 build/C/man3/lround.3:112 build/C/man3/nan.3:75 build/C/man3/pow10.3:48 build/C/man3/remquo.3:124 build/C/man3/round.3:83 build/C/man3/scalbln.3:155 build/C/man3/sincos.3:75 build/C/man3/tgamma.3:158 build/C/man3/trunc.3:69
1869 msgid "These functions first appeared in glibc in version 2.1."
1873 #: build/C/man3/exp10.3:78
1874 msgid "These functions are GNU extensions."
1878 #: build/C/man3/exp10.3:84
1879 msgid "B<cbrt>(3), B<exp>(3), B<exp2>(3), B<log10>(3), B<sqrt>(3)"
1883 #: build/C/man3/exp2.3:36
1889 #: build/C/man3/exp2.3:39
1890 msgid "exp2, exp2f, exp2l - base-2 exponential function"
1894 #: build/C/man3/exp2.3:44
1896 msgid "B<double exp2(double >I<x>B<);>\n"
1900 #: build/C/man3/exp2.3:46
1902 msgid "B<float exp2f(float >I<x>B<);>\n"
1906 #: build/C/man3/exp2.3:48
1908 msgid "B<long double exp2l(long double >I<x>B<);>\n"
1912 #: build/C/man3/exp2.3:61
1913 msgid "B<exp2>(), B<exp2f>(), B<exp2l>():"
1917 #: build/C/man3/exp2.3:73
1918 msgid "The B<exp2>() function returns the value of 2 raised to the power of I<x>."
1922 #: build/C/man3/exp2.3:76
1923 msgid "On success, these functions return the base-2 exponential value of I<x>."
1927 #: build/C/man3/exp2.3:102
1928 msgid "B<cbrt>(3), B<cexp2>(3), B<exp>(3), B<exp10>(3), B<sqrt>(3)"
1932 #: build/C/man3/expm1.3:30
1938 #: build/C/man3/expm1.3:30 build/C/man3/log2.3:36 build/C/man3/pow.3:35
1944 #: build/C/man3/expm1.3:33
1945 msgid "expm1, expm1f, expm1l - exponential minus 1"
1949 #: build/C/man3/expm1.3:38
1951 msgid "B<double expm1(double >I<x>B<);>\n"
1955 #: build/C/man3/expm1.3:40
1957 msgid "B<float expm1f(float >I<x>B<);>\n"
1961 #: build/C/man3/expm1.3:42
1963 msgid "B<long double expm1l(long double >I<x>B<);>\n"
1967 #: build/C/man3/expm1.3:53
1972 #: build/C/man3/expm1.3:64
1973 msgid "B<expm1f>(), B<expm1l>():"
1977 #: build/C/man3/expm1.3:75
1978 msgid "I<expm1(x)> returns a value equivalent to"
1982 #: build/C/man3/expm1.3:78
1984 msgid " exp(x) - 1\n"
1988 #: build/C/man3/expm1.3:86
1990 "It is computed in a way that is accurate even if the value of I<x> is near "
1991 "zero\\(ema case where I<exp(x) - 1> would be inaccurate due to subtraction "
1992 "of two numbers that are nearly equal."
1996 #: build/C/man3/expm1.3:89
1997 msgid "On success, these functions return I<exp(x)\\ -\\ 1>."
2001 #: build/C/man3/expm1.3:107
2002 msgid "If I<x> is negative infinity, -1 is returned."
2006 #: build/C/man3/expm1.3:115
2008 "If the result overflows, a range error occurs, and the functions return "
2009 "-B<HUGE_VAL>, -B<HUGE_VALF>, or -B<HUGE_VALL>, respectively."
2013 #. POSIX.1 specifies an optional range error (underflow) if
2014 #. x is subnormal. Glibc does not implement this.
2016 #: build/C/man3/expm1.3:134
2018 "I<errno> is set to B<ERANGE> (but see BUGS). An overflow floating-point "
2019 "exception (B<FE_OVERFLOW>) is raised."
2023 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6778
2025 #: build/C/man3/expm1.3:145
2027 "For some large negative I<x> values (where the function result approaches "
2028 "-1), B<expm1>() raises a bogus underflow floating-point exception."
2032 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6814
2033 #. e.g., expm1(1e5) through expm1(1.00199970127e5),
2034 #. but not expm1(1.00199970128e5) and beyond.
2036 #: build/C/man3/expm1.3:156
2038 "For some large positive I<x> values, B<expm1>() raises a bogus invalid "
2039 "floating-point exception in addition to the expected overflow exception, and "
2040 "returns a NaN instead of positive infinity."
2043 #. It looks like the fix was in 2.11, or possibly 2.12.
2044 #. I have no test system for 2.11, but 2.12 passes.
2045 #. From the source (sysdeps/i386/fpu/s_expm1.S) it looks
2046 #. like the changes were in 2.11.
2047 #. http://sources.redhat.com/bugzilla/show_bug.cgi?id=6788
2049 #: build/C/man3/expm1.3:168
2051 "Before version 2.11, the glibc implementation did not set I<errno> to "
2052 "B<ERANGE> when a range error occurred."
2056 #: build/C/man3/expm1.3:172
2057 msgid "B<exp>(3), B<log>(3), B<log1p>(3)"
2061 #: build/C/man3/fabs.3:32
2067 #: build/C/man3/fabs.3:35
2068 msgid "fabs, fabsf, fabsl - absolute value of floating-point number"
2072 #: build/C/man3/fabs.3:40
2074 msgid "B<double fabs(double >I<x>B<);>\n"
2078 #: build/C/man3/fabs.3:42
2080 msgid "B<float fabsf(float >I<x>B<);>\n"
2084 #: build/C/man3/fabs.3:44
2086 msgid "B<long double fabsl(long double >I<x>B<);>\n"
2090 #: build/C/man3/fabs.3:56
2091 msgid "B<fabsf>(), B<fabsl>():"
2095 #: build/C/man3/fabs.3:69
2097 "The B<fabs>() functions return the absolute value of the floating-point "
2102 #: build/C/man3/fabs.3:72
2103 msgid "These functions return the absolute value of I<x>."
2107 #: build/C/man3/fabs.3:80
2108 msgid "If I<x> is -0, +0 is returned."
2112 #: build/C/man3/fabs.3:84
2114 "If I<x> is negative infinity or positive infinity, positive infinity is "
2119 #: build/C/man3/fabs.3:99
2120 msgid "B<abs>(3), B<cabs>(3), B<ceil>(3), B<floor>(3), B<labs>(3), B<rint>(3)"
2124 #: build/C/man3/fdim.3:9
2130 #: build/C/man3/fdim.3:12
2131 msgid "fdim, fdimf, fdiml - positive difference"
2135 #: build/C/man3/fdim.3:14 build/C/man3/fmax.3:14 build/C/man3/fmin.3:14 build/C/man3/gamma.3:14 build/C/man3/ilogb.3:34 build/C/man3/logb.3:34 build/C/man3/nan.3:16 build/C/man3/nextafter.3:17 build/C/man3/scalb.3:33 build/C/man3/scalbln.3:33 build/C/man3/signbit.3:16 build/C/man3/significand.3:15 build/C/man3/tgamma.3:18
2136 msgid "B<#include E<lt>math.hE<gt>>"
2140 #: build/C/man3/fdim.3:16
2141 msgid "B<double fdim(double >I<x>B<, double >I<y>B<);>"
2145 #: build/C/man3/fdim.3:18
2146 msgid "B<float fdimf(float >I<x>B<, float >I<y>B<);>"
2150 #: build/C/man3/fdim.3:20
2151 msgid "B<long double fdiml(long double >I<x>B<, long double >I<y>B<);>"
2155 #: build/C/man3/fdim.3:31
2156 msgid "B<fdimf>(), B<fdiml>():"
2160 #: build/C/man3/fdim.3:42
2162 "These functions return the positive difference, max(I<x>-I<y>,0), between "
2167 #: build/C/man3/fdim.3:44
2168 msgid "On success, these functions return the positive difference."
2172 #: build/C/man3/fdim.3:50 build/C/man3/fma.3:63 build/C/man3/fmod.3:88 build/C/man3/nextafter.3:116 build/C/man3/remainder.3:130 build/C/man3/remquo.3:83
2173 msgid "If I<x> or I<y> is a NaN, a NaN is returned."
2177 #: build/C/man3/fdim.3:59 build/C/man3/hypot.3:122
2179 "If the result overflows, a range error occurs, and the functions return "
2180 "B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, respectively."
2183 #. Unable to test this case, since the best approximation of
2184 #. pi/2 in double precision only yields a tan() value of 1.633e16.
2189 #: build/C/man3/fdim.3:74 build/C/man3/fma.3:141 build/C/man3/nextafter.3:154 build/C/man3/scalb.3:158 build/C/man3/scalbln.3:140 build/C/man3/tan.3:129
2190 msgid "An overflow floating-point exception (B<FE_OVERFLOW>) is raised."
2194 #: build/C/man3/fdim.3:85 build/C/man3/fmin.3:62
2199 #: build/C/man3/fenv.3:27
2205 #: build/C/man3/fenv.3:27
2211 #: build/C/man3/fenv.3:27 build/C/man7/math_error.7:26 build/C/man3/matherr.3:27
2217 #: build/C/man3/fenv.3:33
2219 "feclearexcept, fegetexceptflag, feraiseexcept, fesetexceptflag, "
2220 "fetestexcept, fegetenv, fegetround, feholdexcept, fesetround, fesetenv, "
2221 "feupdateenv, feenableexcept, fedisableexcept, fegetexcept - floating-point "
2222 "rounding and exception handling"
2226 #: build/C/man3/fenv.3:36 build/C/man3/fenv.3:292
2228 msgid "B<#include E<lt>fenv.hE<gt>>\n"
2232 #: build/C/man3/fenv.3:38
2234 msgid "B<int feclearexcept(int >I<excepts>B<);>\n"
2238 #: build/C/man3/fenv.3:40
2240 msgid "B<int fegetexceptflag(fexcept_t *>I<flagp>B<, int >I<excepts>B<);>\n"
2244 #: build/C/man3/fenv.3:42
2246 msgid "B<int feraiseexcept(int >I<excepts>B<);>\n"
2250 #: build/C/man3/fenv.3:44
2252 msgid "B<int fesetexceptflag(const fexcept_t *>I<flagp>B<, int >I<excepts>B<);>\n"
2256 #: build/C/man3/fenv.3:46
2258 msgid "B<int fetestexcept(int >I<excepts>B<);>\n"
2262 #: build/C/man3/fenv.3:48
2264 msgid "B<int fegetround(void);>\n"
2268 #: build/C/man3/fenv.3:50
2270 msgid "B<int fesetround(int >I<rounding_mode>B<);>\n"
2274 #: build/C/man3/fenv.3:52
2276 msgid "B<int fegetenv(fenv_t *>I<envp>B<);>\n"
2280 #: build/C/man3/fenv.3:54
2282 msgid "B<int feholdexcept(fenv_t *>I<envp>B<);>\n"
2286 #: build/C/man3/fenv.3:56
2288 msgid "B<int fesetenv(const fenv_t *>I<envp>B<);>\n"
2292 #: build/C/man3/fenv.3:58
2294 msgid "B<int feupdateenv(const fenv_t *>I<envp>B<);>\n"
2298 #: build/C/man3/fenv.3:64
2300 "These eleven functions were defined in C99, and describe the handling of "
2301 "floating-point rounding and exceptions (overflow, zero-divide, etc.)."
2305 #: build/C/man3/fenv.3:64
2311 #: build/C/man3/fenv.3:69
2313 "The I<divide-by-zero> exception occurs when an operation on finite numbers "
2314 "produces infinity as exact answer."
2318 #: build/C/man3/fenv.3:75
2320 "The I<overflow> exception occurs when a result has to be represented as a "
2321 "floating-point number, but has (much) larger absolute value than the largest "
2322 "(finite) floating-point number that is representable."
2326 #: build/C/man3/fenv.3:82
2328 "The I<underflow> exception occurs when a result has to be represented as a "
2329 "floating-point number, but has smaller absolute value than the smallest "
2330 "positive normalized floating-point number (and would lose much accuracy when "
2331 "represented as a denormalized number)."
2335 #: build/C/man3/fenv.3:92
2337 "The I<inexact> exception occurs when the rounded result of an operation is "
2338 "not equal to the infinite precision result. It may occur whenever "
2339 "I<overflow> or I<underflow> occurs."
2343 #: build/C/man3/fenv.3:97
2345 "The I<invalid> exception occurs when there is no well-defined result for an "
2346 "operation, as for 0/0 or infinity - infinity or sqrt(-1)."
2350 #: build/C/man3/fenv.3:97
2352 msgid "Exception handling"
2356 #: build/C/man3/fenv.3:103
2358 "Exceptions are represented in two ways: as a single bit (exception "
2359 "present/absent), and these bits correspond in some implementation-defined "
2360 "way with bit positions in an integer, and also as an opaque structure that "
2361 "may contain more information about the exception (perhaps the code address "
2362 "where it occurred)."
2366 #: build/C/man3/fenv.3:119
2368 "Each of the macros B<FE_DIVBYZERO>, B<FE_INEXACT>, B<FE_INVALID>, "
2369 "B<FE_OVERFLOW>, B<FE_UNDERFLOW> is defined when the implementation supports "
2370 "handling of the corresponding exception, and if so then defines the "
2371 "corresponding bit(s), so that one can call exception handling functions, for "
2372 "example, using the integer argument B<FE_OVERFLOW>|B<FE_UNDERFLOW>. Other "
2373 "exceptions may be supported. The macro B<FE_ALL_EXCEPT> is the bitwise OR "
2374 "of all bits corresponding to supported exceptions."
2378 #: build/C/man3/fenv.3:124
2380 "The B<feclearexcept>() function clears the supported exceptions represented "
2381 "by the bits in its argument."
2385 #: build/C/man3/fenv.3:132
2387 "The B<fegetexceptflag>() function stores a representation of the state of "
2388 "the exception flags represented by the argument I<excepts> in the opaque "
2393 #: build/C/man3/fenv.3:137
2395 "The B<feraiseexcept>() function raises the supported exceptions represented "
2396 "by the bits in I<excepts>."
2400 #: build/C/man3/fenv.3:148
2402 "The B<fesetexceptflag>() function sets the complete status for the "
2403 "exceptions represented by I<excepts> to the value I<*flagp>. This value "
2404 "must have been obtained by an earlier call of B<fegetexceptflag>() with a "
2405 "last argument that contained all bits in I<excepts>."
2409 #: build/C/man3/fenv.3:155
2411 "The B<fetestexcept>() function returns a word in which the bits are set "
2412 "that were set in the argument I<excepts> and for which the corresponding "
2413 "exception is currently set."
2417 #: build/C/man3/fenv.3:155
2419 msgid "Rounding mode"
2423 #: build/C/man3/fenv.3:163
2425 "The rounding mode determines how the result of floating-point operations is "
2426 "treated when the result cannot be exactly represented in the significand. "
2427 "Various rounding modes may be provided: round to nearest (the default), "
2428 "round up (toward positive infinity), round down (toward negative infinity), "
2429 "and round toward zero."
2433 #: build/C/man3/fenv.3:172
2435 "Each of the macros B<FE_TONEAREST>, B<FE_UPWARD>, B<FE_DOWNWARD>, and "
2436 "B<FE_TOWARDZERO> is defined when the implementation supports getting and "
2437 "setting the corresponding rounding direction."
2441 #: build/C/man3/fenv.3:177
2443 "The B<fegetround>() function returns the macro corresponding to the current "
2448 #: build/C/man3/fenv.3:182
2450 "The B<fesetround>() function sets the rounding mode as specified by its "
2451 "argument and returns zero when it was successful."
2455 #: build/C/man3/fenv.3:190
2457 "C99 and POSIX.1-2008 specify an identifier, B<FLT_ROUNDS>, defined in "
2458 "I<E<lt>float.hE<gt>>, which indicates the implementation-defined rounding "
2459 "behavior for floating-point addition. This identifier has one of the "
2464 #: build/C/man3/fenv.3:190
2470 #: build/C/man3/fenv.3:192
2471 msgid "The rounding mode is not determinable."
2475 #: build/C/man3/fenv.3:192
2481 #: build/C/man3/fenv.3:194
2482 msgid "Rounding is toward 0."
2486 #: build/C/man3/fenv.3:194
2492 #: build/C/man3/fenv.3:196
2493 msgid "Rounding is toward nearest number."
2497 #: build/C/man3/fenv.3:196
2503 #: build/C/man3/fenv.3:198
2504 msgid "Rounding is toward positive infinity."
2508 #: build/C/man3/fenv.3:198
2514 #: build/C/man3/fenv.3:200
2515 msgid "Rounding is toward negative infinity."
2519 #: build/C/man3/fenv.3:202
2520 msgid "Other values represent machine-dependent, nonstandard rounding modes."
2524 #: build/C/man3/fenv.3:208
2526 "The value of B<FLT_ROUNDS> should reflect the current rounding mode as set "
2527 "by B<fesetround>() (but see BUGS)."
2531 #: build/C/man3/fenv.3:208
2533 msgid "Floating-point environment"
2537 #: build/C/man3/fenv.3:220
2539 "The entire floating-point environment, including control modes and status "
2540 "flags, can be handled as one opaque object, of type I<fenv_t>. The default "
2541 "environment is denoted by B<FE_DFL_ENV> (of type I<const fenv_t *>). This "
2542 "is the environment setup at program start and it is defined by ISO C to have "
2543 "round to nearest, all exceptions cleared and a nonstop (continue on "
2548 #: build/C/man3/fenv.3:225
2550 "The B<fegetenv>() function saves the current floating-point environment in "
2551 "the object I<*envp>."
2555 #: build/C/man3/fenv.3:232
2557 "The B<feholdexcept>() function does the same, then clears all exception "
2558 "flags, and sets a nonstop (continue on exceptions) mode, if available. It "
2559 "returns zero when successful."
2563 #: build/C/man3/fenv.3:245
2565 "The B<fesetenv>() function restores the floating-point environment from the "
2566 "object I<*envp>. This object must be known to be valid, for example, the "
2567 "result of a call to B<fegetenv>() or B<feholdexcept>() or equal to "
2568 "B<FE_DFL_ENV>. This call does not raise exceptions."
2572 #: build/C/man3/fenv.3:258
2574 "The B<feupdateenv>() function installs the floating-point environment "
2575 "represented by the object I<*envp>, except that currently raised exceptions "
2576 "are not cleared. After calling this function, the raised exceptions will be "
2577 "a bitwise OR of those previously set with those in I<*envp>. As before, the "
2578 "object I<*envp> must be known to be valid."
2581 #. Earlier seven of these functions were listed as returning void.
2582 #. This was corrected in Corrigendum 1 (ISO/IEC 9899:1999/Cor.1:2001(E))
2583 #. of the C99 Standard.
2585 #: build/C/man3/fenv.3:263
2586 msgid "These functions return zero on success and nonzero if an error occurred."
2590 #: build/C/man3/fenv.3:267
2591 msgid "IEC 60559 (IEC 559:1989), ANSI/IEEE 854, C99, POSIX.1-2001."
2595 #: build/C/man3/fenv.3:268
2601 #: build/C/man3/fenv.3:287
2603 "If possible, the GNU C Library defines a macro B<FE_NOMASK_ENV> which "
2604 "represents an environment where every exception raised causes a trap to "
2605 "occur. You can test for this macro using B<#ifdef>. It is defined only if "
2606 "B<_GNU_SOURCE> is defined. The C99 standard does not define a way to set "
2607 "individual bits in the floating-point mask, for example, to trap on specific "
2608 "flags. Since version 2.2, glibc supports the functions B<feenableexcept>() "
2609 "and B<fedisableexcept>() to set individual floating-point traps, and "
2610 "B<fegetexcept>() to query the state."
2614 #: build/C/man3/fenv.3:294
2616 msgid "B<int feenableexcept(int >I<excepts>B<);>\n"
2620 #: build/C/man3/fenv.3:296
2622 msgid "B<int fedisableexcept(int >I<excepts>B<);>\n"
2626 #: build/C/man3/fenv.3:298
2628 msgid "B<int fegetexcept(void);>\n"
2632 #: build/C/man3/fenv.3:312
2634 "The B<feenableexcept>() and B<fedisableexcept>() functions enable "
2635 "(disable) traps for each of the exceptions represented by I<excepts> and "
2636 "return the previous set of enabled exceptions when successful, and -1 "
2637 "otherwise. The B<fegetexcept>() function returns the set of all currently "
2638 "enabled exceptions."
2641 #. Aug 08, glibc 2.8
2642 #. See http://gcc.gnu.org/ml/gcc/2002-02/msg01535.html
2644 #: build/C/man3/fenv.3:323
2646 "C99 specifies that the value of B<FLT_ROUNDS> should reflect changes to the "
2647 "current rounding mode, as set by B<fesetround>(). Currently, this does not "
2648 "occur: B<FLT_ROUNDS> always has the value 1."
2652 #: build/C/man3/fenv.3:325
2653 msgid "B<math_error>(7)"
2657 #: build/C/man3/finite.3:25
2663 #: build/C/man3/finite.3:25 build/C/man3/gamma.3:9
2669 #: build/C/man3/finite.3:29
2671 "finite, finitef, finitel, isinf, isinff, isinfl, isnan, isnanf, isnanl - BSD "
2672 "floating-point classification functions"
2676 #: build/C/man3/finite.3:34
2678 msgid "B<int finite(double >I<x>B<);>\n"
2682 #: build/C/man3/finite.3:36
2684 msgid "B<int finitef(float >I<x>B<);>\n"
2688 #: build/C/man3/finite.3:38
2690 msgid "B<int finitel(long double >I<x>B<);>\n"
2694 #: build/C/man3/finite.3:40
2696 msgid "B<int isinf(double >I<x>B<);>\n"
2700 #: build/C/man3/finite.3:42
2702 msgid "B<int isinff(float >I<x>B<);>\n"
2706 #: build/C/man3/finite.3:44
2708 msgid "B<int isinfl(long double >I<x>B<);>\n"
2712 #: build/C/man3/finite.3:46
2714 msgid "B<int isnan(double >I<x>B<);>\n"
2718 #: build/C/man3/finite.3:48
2720 msgid "B<int isnanf(float >I<x>B<);>\n"
2724 #: build/C/man3/finite.3:50
2726 msgid "B<int isnanl(long double >I<x>B<);>\n"
2730 #: build/C/man3/finite.3:61
2731 msgid "B<finite>(), B<finitef>(), B<finitel>():"
2735 #: build/C/man3/finite.3:63 build/C/man3/finite.3:76 build/C/man3/lgamma.3:65
2736 msgid "_BSD_SOURCE || _SVID_SOURCE"
2740 #: build/C/man3/finite.3:65 build/C/man3/fpclassify.3:58
2745 #: build/C/man3/finite.3:67
2747 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600 || "
2752 #: build/C/man3/finite.3:74
2753 msgid "B<isinff>(), B<isinfl>():"
2757 #: build/C/man3/finite.3:78 build/C/man3/fpclassify.3:50
2762 #: build/C/man3/finite.3:80
2763 msgid "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE || _ISOC99_SOURCE;"
2767 #: build/C/man3/finite.3:86
2768 msgid "B<isnanf>(), B<isnanl>():"
2772 #: build/C/man3/finite.3:88 build/C/man3/gamma.3:38 build/C/man3/scalb.3:58
2773 msgid "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600"
2777 #: build/C/man3/finite.3:95
2779 "The B<finite>() functions return a nonzero value if I<x> is neither "
2780 "infinite nor a \"not-a-number\" (NaN) value, and 0 otherwise."
2784 #: build/C/man3/finite.3:100
2786 "The B<isnan>() functions return a nonzero value if I<x> is a NaN value, and "
2791 #: build/C/man3/finite.3:105
2793 "The B<isinf>() functions return 1 if I<x> is positive infinity, -1 if I<x> "
2794 "is negative infinity, and 0 otherwise."
2798 #. finite* not on HP-UX; they exist on Tru64.
2802 #. function occurs in 4.3BSD.
2803 #. see IEEE.3 in the 4.3BSD manual
2805 #: build/C/man3/finite.3:125
2807 "Note that these functions are obsolete. C99 defines macros B<isfinite>(), "
2808 "B<isinf>(), and B<isnan>() (for all types) replacing them. Further note "
2809 "that the C99 B<isinf>() has weaker guarantees on the return value. See "
2814 #: build/C/man3/finite.3:127
2815 msgid "B<fpclassify>(3)"
2819 #: build/C/man3/floor.3:27
2825 #: build/C/man3/floor.3:30
2826 msgid "floor, floorf, floorl - largest integral value not greater than argument"
2830 #: build/C/man3/floor.3:35
2832 msgid "B<double floor(double >I<x>B<);>\n"
2836 #: build/C/man3/floor.3:37
2838 msgid "B<float floorf(float >I<x>B<);>\n"
2842 #: build/C/man3/floor.3:39
2844 msgid "B<long double floorl(long double >I<x>B<);>\n"
2848 #: build/C/man3/floor.3:51
2849 msgid "B<floorf>(), B<floorl>():"
2853 #: build/C/man3/floor.3:62
2855 "These functions return the largest integral value that is not greater than "
2860 #: build/C/man3/floor.3:68
2861 msgid "For example, I<floor(0.5)> is 0.0, and I<floor(-0.5)> is -1.0."
2865 #: build/C/man3/floor.3:71
2866 msgid "These functions return the floor of I<x>."
2870 #: build/C/man3/floor.3:74
2871 msgid "If I<x> is integral, +0, -0, NaN, or an infinity, I<x> itself is returned."
2875 #: build/C/man3/floor.3:106
2877 "B<ceil>(3), B<lrint>(3), B<nearbyint>(3), B<rint>(3), B<round>(3), "
2882 #: build/C/man3/fma.3:12
2888 #: build/C/man3/fma.3:15
2889 msgid "fma, fmaf, fmal - floating-point multiply and add"
2893 #: build/C/man3/fma.3:20
2895 msgid "B<double fma(double >I<x>B<, double >I<y>B<, double >I<z>B<);>\n"
2899 #: build/C/man3/fma.3:22
2901 msgid "B<float fmaf(float >I<x>B<, float >I<y>B<, float >I<z>B<);>\n"
2905 #: build/C/man3/fma.3:24
2908 "B<long double fmal(long double >I<x>B<, long double >I<y>B<, long double "
2913 #: build/C/man3/fma.3:37
2914 msgid "B<fma>(), B<fmaf>(), B<fmal>():"
2918 #: build/C/man3/fma.3:53
2920 "The B<fma>() function computes I<x> * I<y> + I<z>. The result is rounded "
2921 "as one ternary operation according to the current rounding mode (see "
2926 #: build/C/man3/fma.3:57
2928 "These functions return the value of I<x> * I<y> + I<z>, rounded as one "
2929 "ternary operation."
2933 #: build/C/man3/fma.3:73
2935 "If I<x> times I<y> is an exact infinity, and I<z> is an infinity with the "
2936 "opposite sign, a domain error occurs, and a NaN is returned."
2939 #. POSIX.1-2008 allows some possible differences for the following two
2940 #. domain error cases, but on Linux they are treated the same (AFAICS).
2941 #. Nevertheless, we'll mirror POSIX.1 and describe the two cases
2943 #. POSIX.1 says that a NaN or an implementation-defined value shall
2944 #. be returned for this case.
2946 #: build/C/man3/fma.3:89
2948 "If one of I<x> or I<y> is an infinity, the other is 0, and I<z> is not a "
2949 "NaN, a domain error occurs, and a NaN is returned."
2952 #. POSIX.1 makes the domain error optional for this case.
2954 #: build/C/man3/fma.3:100
2956 "If one of I<x> or I<y> is an infinity, and the other is 0, and I<z> is a "
2957 "NaN, a domain error occurs, and a NaN is returned."
2961 #: build/C/man3/fma.3:109
2963 "If I<x> times I<y> is not an infinity times zero (or vice versa), and I<z> "
2964 "is a NaN, a NaN is returned."
2968 #: build/C/man3/fma.3:113
2970 "If the result overflows, a range error occurs, and an infinity with the "
2971 "correct sign is returned."
2975 #: build/C/man3/fma.3:117
2976 msgid "If the result underflows, a range error occurs, and a signed 0 is returned."
2980 #: build/C/man3/fma.3:124
2983 "Domain error: I<x> * I<y> + I<z>, or I<x> * I<y> is invalid and I<z> is not "
2991 #: build/C/man3/fma.3:133 build/C/man3/ilogb.3:125 build/C/man3/log1p.3:126 build/C/man3/lrint.3:102 build/C/man3/lround.3:105 build/C/man3/remainder.3:165 build/C/man3/remquo.3:117 build/C/man3/scalb.3:150 build/C/man3/sincos.3:67
2992 msgid "An invalid floating-point exception (B<FE_INVALID>) is raised."
2996 #: build/C/man3/fma.3:141 build/C/man3/hypot.3:143 build/C/man3/tgamma.3:139 build/C/man3/y0.3:188
2998 msgid "Range error: result underflow"
3002 #: build/C/man3/fma.3:161
3003 msgid "B<remainder>(3), B<remquo>(3)"
3007 #: build/C/man3/fmax.3:9
3013 #: build/C/man3/fmax.3:12
3014 msgid "fmax, fmaxf, fmaxl - determine maximum of two floating-point numbers"
3018 #: build/C/man3/fmax.3:16
3019 msgid "B<double fmax(double >I<x>B<, double >I<y>B<);>"
3023 #: build/C/man3/fmax.3:18
3024 msgid "B<float fmaxf(float >I<x>B<, float >I<y>B<);>"
3028 #: build/C/man3/fmax.3:20
3029 msgid "B<long double fmaxl(long double >I<x>B<, long double >I<y>B<);>"
3033 #: build/C/man3/fmax.3:32
3034 msgid "B<fmax>(), B<fmaxf>(), B<fmaxl>():"
3038 #: build/C/man3/fmax.3:45
3039 msgid "These functions return the larger value of I<x> and I<y>."
3043 #: build/C/man3/fmax.3:50
3044 msgid "These functions return the maximum of I<x> and I<y>."
3048 #: build/C/man3/fmax.3:52 build/C/man3/fmin.3:52
3049 msgid "If one argument is a NaN, the other argument is returned."
3053 #: build/C/man3/fmax.3:54 build/C/man3/fmin.3:54
3054 msgid "If both arguments are NaN, a NaN is returned."
3058 #: build/C/man3/fmax.3:62
3063 #: build/C/man3/fmin.3:9
3069 #: build/C/man3/fmin.3:12
3070 msgid "fmin, fminf, fminl - determine minimum of two floating-point numbers"
3074 #: build/C/man3/fmin.3:16
3075 msgid "B<double fmin(double >I<x>B<, double >I<y>B<);>"
3079 #: build/C/man3/fmin.3:18
3080 msgid "B<float fminf(float >I<x>B<, float >I<y>B<);>"
3084 #: build/C/man3/fmin.3:20
3085 msgid "B<long double fminl(long double >I<x>B<, long double >I<y>B<);>"
3089 #: build/C/man3/fmin.3:32
3090 msgid "B<fmin>(), B<fminf>(), B<fminl>():"
3094 #: build/C/man3/fmin.3:45
3095 msgid "These functions the lesser value of I<x> and I<y>."
3099 #: build/C/man3/fmin.3:50
3100 msgid "These functions return the minimum of I<x> and I<y>."
3104 #: build/C/man3/fmod.3:35
3110 #: build/C/man3/fmod.3:35
3116 #: build/C/man3/fmod.3:38
3117 msgid "fmod, fmodf, fmodl - floating-point remainder function"
3121 #: build/C/man3/fmod.3:43
3123 msgid "B<double fmod(double >I<x>B<, double >I<y>B<);>\n"
3127 #: build/C/man3/fmod.3:45
3129 msgid "B<float fmodf(float >I<x>B<, float >I<y>B<);>\n"
3133 #: build/C/man3/fmod.3:47
3135 msgid "B<long double fmodl(long double >I<x>B<, long double >I<y>B<);>\n"
3139 #: build/C/man3/fmod.3:59
3140 msgid "B<fmodf>(), B<fmodl>():"
3144 #: build/C/man3/fmod.3:74
3146 "The B<fmod>() function computes the floating-point remainder of dividing "
3147 "I<x> by I<y>. The return value is I<x> - I<n> * I<y>, where I<n> is the "
3148 "quotient of I<x> / I<y>, rounded toward zero to an integer."
3152 #: build/C/man3/fmod.3:82
3154 "On success, these functions return the value I<x>\\ -\\ I<n>*I<y>, for some "
3155 "integer I<n>, such that the returned value has the same sign as I<x> and a "
3156 "magnitude less than the magnitude of I<y>."
3160 #: build/C/man3/fmod.3:94
3161 msgid "If I<x> is an infinity, a domain error occurs, and a NaN is returned."
3165 #: build/C/man3/fmod.3:100
3166 msgid "If I<y> is zero, a domain error occurs, and a NaN is returned."
3170 #: build/C/man3/fmod.3:106
3171 msgid "If I<x> is +0 (-0), and I<y> is not zero, +0 (-0) is returned."
3174 #. [XXX see bug above] and \fIx\fP is not a NaN
3176 #: build/C/man3/fmod.3:122 build/C/man3/remainder.3:172
3178 msgid "Domain error: I<y> is zero"
3181 #. http://sources.redhat.com/bugzilla/show_bug.cgi?id=6784
3183 #: build/C/man3/fmod.3:146
3185 "Before version 2.10, the glibc implementation did not set I<errno> to "
3186 "B<EDOM> when a domain error occurred for an infinite I<x>."
3190 #: build/C/man3/fmod.3:148
3191 msgid "B<remainder>(3)"
3195 #: build/C/man3/fpclassify.3:10
3201 #: build/C/man3/fpclassify.3:14
3203 "fpclassify, isfinite, isnormal, isnan, isinf - floating-point classification "
3208 #: build/C/man3/fpclassify.3:19
3210 msgid "B<int fpclassify(>I<x>B<);>\n"
3214 #: build/C/man3/fpclassify.3:21
3216 msgid "B<int isfinite(>I<x>B<);>\n"
3220 #: build/C/man3/fpclassify.3:23
3222 msgid "B<int isnormal(>I<x>B<);>\n"
3226 #: build/C/man3/fpclassify.3:25
3228 msgid "B<int isnan(>I<x>B<);>\n"
3232 #: build/C/man3/fpclassify.3:27
3234 msgid "B<int isinf(>I<x>B<);>\n"
3238 #: build/C/man3/fpclassify.3:42
3239 msgid "B<fpclassify>(), B<isfinite>(), B<isnormal>():"
3243 #: build/C/man3/fpclassify.3:76
3245 "Floating point numbers can have special values, such as infinite or NaN. "
3246 "With the macro B<fpclassify(>I<x>B<)> you can find out what type I<x> is. "
3247 "The macro takes any floating-point expression as argument. The result is "
3248 "one of the following values:"
3252 #: build/C/man3/fpclassify.3:76
3258 #: build/C/man3/fpclassify.3:80
3259 msgid "I<x> is \"Not a Number\"."
3263 #: build/C/man3/fpclassify.3:80
3265 msgid "B<FP_INFINITE>"
3269 #: build/C/man3/fpclassify.3:84
3270 msgid "I<x> is either positive infinity or negative infinity."
3274 #: build/C/man3/fpclassify.3:84
3280 #: build/C/man3/fpclassify.3:88
3281 msgid "I<x> is zero."
3285 #: build/C/man3/fpclassify.3:88
3287 msgid "B<FP_SUBNORMAL>"
3291 #: build/C/man3/fpclassify.3:92
3292 msgid "I<x> is too small to be represented in normalized format."
3296 #: build/C/man3/fpclassify.3:92
3298 msgid "B<FP_NORMAL>"
3302 #: build/C/man3/fpclassify.3:96
3304 "if nothing of the above is correct then it must be a normal floating-point "
3309 #: build/C/man3/fpclassify.3:98
3310 msgid "The other macros provide a short answer to some standard questions."
3314 #: build/C/man3/fpclassify.3:98
3316 msgid "B<isfinite(>I<x>B<)>"
3320 #: build/C/man3/fpclassify.3:101
3321 msgid "returns a nonzero value if"
3325 #: build/C/man3/fpclassify.3:103
3326 msgid "(fpclassify(x) != FP_NAN && fpclassify(x) != FP_INFINITE)"
3330 #: build/C/man3/fpclassify.3:103
3332 msgid "B<isnormal(>I<x>B<)>"
3336 #: build/C/man3/fpclassify.3:107
3337 msgid "returns a nonzero value if (fpclassify(x) == FP_NORMAL)"
3341 #: build/C/man3/fpclassify.3:107
3343 msgid "B<isnan(>I<x>B<)>"
3347 #: build/C/man3/fpclassify.3:111
3348 msgid "returns a nonzero value if (fpclassify(x) == FP_NAN)"
3352 #: build/C/man3/fpclassify.3:111
3354 msgid "B<isinf(>I<x>B<)>"
3358 #: build/C/man3/fpclassify.3:118
3359 msgid "returns 1 if I<x> is positive infinity, and -1 if I<x> is negative infinity."
3363 #: build/C/man3/fpclassify.3:120
3364 msgid "C99, POSIX.1."
3368 #: build/C/man3/fpclassify.3:125
3370 "For B<isinf>(), the standards merely say that the return value is nonzero if "
3371 "and only if the argument has an infinite value."
3375 #: build/C/man3/fpclassify.3:132
3377 "In glibc 2.01 and earlier, B<isinf>() returns a nonzero value (actually: 1) "
3378 "if I<x> is positive infinity or negative infinity. (This is all that C99 "
3383 #: build/C/man3/fpclassify.3:137
3384 msgid "B<finite>(3), B<INFINITY>(3), B<isgreater>(3), B<signbit>(3)"
3388 #: build/C/man3/frexp.3:33
3394 #: build/C/man3/frexp.3:37
3396 "frexp, frexpf, frexpl - convert floating-point number to fractional and "
3397 "integral components"
3401 #: build/C/man3/frexp.3:42
3403 msgid "B<double frexp(double >I<x>B<, int *>I<exp>B<);>\n"
3407 #: build/C/man3/frexp.3:44
3409 msgid "B<float frexpf(float >I<x>B<, int *>I<exp>B<);>\n"
3413 #: build/C/man3/frexp.3:46
3415 msgid "B<long double frexpl(long double >I<x>B<, int *>I<exp>B<);>\n"
3419 #: build/C/man3/frexp.3:58
3420 msgid "B<frexpf>(), B<frexpl>():"
3424 #: build/C/man3/frexp.3:71
3426 "The B<frexp>() function is used to split the number I<x> into a normalized "
3427 "fraction and an exponent which is stored in I<exp>."
3431 #: build/C/man3/frexp.3:79
3433 "The B<frexp>() function returns the normalized fraction. If the argument "
3434 "I<x> is not zero, the normalized fraction is I<x> times a power of two, and "
3435 "its absolute value is always in the range 1/2 (inclusive) to 1 (exclusive), "
3440 #: build/C/man3/frexp.3:82
3442 "If I<x> is zero, then the normalized fraction is zero and zero is stored in "
3447 #: build/C/man3/frexp.3:89
3449 "If I<x> is a NaN, a NaN is returned, and the value of I<*exp> is "
3454 #: build/C/man3/frexp.3:96
3456 "If I<x> is positive infinity (negative infinity), positive infinity "
3457 "(negative infinity) is returned, and the value of I<*exp> is unspecified."
3461 #: build/C/man3/frexp.3:106
3462 msgid "The program below produces results such as the following:"
3466 #: build/C/man3/frexp.3:113
3469 "$B< ./a.out 2560>\n"
3470 "frexp(2560, &e) = 0.625: 0.625 * 2^12 = 2560\n"
3472 "frexp(-4, &e) = -0.5: -0.5 * 2^3 = -4\n"
3476 #: build/C/man3/frexp.3:115 build/C/man3/matherr.3:360
3478 msgid "Program source"
3482 #: build/C/man3/frexp.3:122
3485 "#include E<lt>math.hE<gt>\n"
3486 "#include E<lt>float.hE<gt>\n"
3487 "#include E<lt>stdio.hE<gt>\n"
3488 "#include E<lt>stdlib.hE<gt>\n"
3492 #: build/C/man3/frexp.3:128
3496 "main(int argc, char *argv[])\n"
3503 #: build/C/man3/frexp.3:131
3506 " x = strtod(argv[1], NULL);\n"
3507 " r = frexp(x, &exp);\n"
3511 #: build/C/man3/frexp.3:136
3514 " printf(\"frexp(%g, &e) = %g: %g * %d^%d = %g\\en\",\n"
3515 " x, r, r, FLT_RADIX, exp, x);\n"
3516 " exit(EXIT_SUCCESS);\n"
3521 #: build/C/man3/frexp.3:140
3522 msgid "B<ldexp>(3), B<modf>(3)"
3526 #: build/C/man3/gamma.3:9
3532 #: build/C/man3/gamma.3:12
3533 msgid "gamma, gammaf, gammal - (logarithm of the) gamma function"
3537 #: build/C/man3/gamma.3:16
3538 msgid "B<double gamma(double >I<x>B<);>"
3542 #: build/C/man3/gamma.3:18
3543 msgid "B<float gammaf(float >I<x>B<);>"
3547 #: build/C/man3/gamma.3:20
3548 msgid "B<long double gammal(long double >I<x>B<);>"
3552 #: build/C/man3/gamma.3:30
3557 #: build/C/man3/gamma.3:32 build/C/man3/lgamma.3:69
3558 msgid "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE"
3562 #: build/C/man3/gamma.3:35
3563 msgid "B<gammaf>(), B<gammal>():"
3567 #: build/C/man3/gamma.3:46
3569 "These functions are deprecated: instead, use either the B<tgamma>(3) or the "
3570 "B<lgamma>(3) functions, as appropriate."
3574 #: build/C/man3/gamma.3:49 build/C/man3/lgamma.3:74
3575 msgid "For the definition of the Gamma function, see B<tgamma>(3)."
3579 #: build/C/man3/gamma.3:49
3581 msgid "*BSD version"
3585 #: build/C/man3/gamma.3:53
3587 "The libm in 4.4BSD and some versions of FreeBSD had a B<gamma>() function "
3588 "that computes the Gamma function, as one would expect."
3592 #: build/C/man3/gamma.3:53
3594 msgid "glibc version"
3598 #: build/C/man3/gamma.3:59
3600 "Glibc has a B<gamma>() function that is equivalent to B<lgamma>(3) and "
3601 "computes the natural logarithm of the Gamma function."
3605 #: build/C/man3/gamma.3:62 build/C/man3/gamma.3:65
3606 msgid "See B<lgamma>(3)."
3610 #: build/C/man3/gamma.3:68
3612 "Because of historical variations in behavior across systems, this function "
3613 "is not specified in any standard."
3617 #: build/C/man3/gamma.3:69
3623 #: build/C/man3/gamma.3:81
3625 "4.2BSD had a B<gamma>() that computed ln(|Gamma(|I<x>|)|), leaving the sign "
3626 "of Gamma(|I<x>|) in the external integer I<signgam>. In 4.3BSD the name "
3627 "was changed to B<lgamma>(3), and the man page promises"
3631 #: build/C/man3/gamma.3:85
3633 "At some time in the future the name gamma will be rehabilitated and used for "
3634 "the Gamma function"
3637 #. The FreeBSD man page says about gamma() that it is like lgamma()
3638 #. except that is does not set signgam.
3639 #. Also, that 4.4BSD has a gamma() that computes the true gamma function.
3641 #: build/C/man3/gamma.3:97
3643 "This did indeed happen in 4.4BSD, where B<gamma>() computes the Gamma "
3644 "function (with no effect on I<signgam>). However, this came too late, and "
3645 "we now have B<tgamma>(3), the \"true gamma\" function."
3649 #: build/C/man3/gamma.3:101
3650 msgid "B<lgamma>(3), B<signgam>(3), B<tgamma>(3)"
3654 #: build/C/man3/hypot.3:33
3660 #: build/C/man3/hypot.3:36
3661 msgid "hypot, hypotf, hypotl - Euclidean distance function"
3665 #: build/C/man3/hypot.3:41
3667 msgid "B<double hypot(double >I<x>B<, double >I<y>B<);>\n"
3671 #: build/C/man3/hypot.3:43
3673 msgid "B<float hypotf(float >I<x>B<, float >I<y>B<);>\n"
3677 #: build/C/man3/hypot.3:45
3679 msgid "B<long double hypotl(long double >I<x>B<, long double >I<y>B<);>\n"
3683 #: build/C/man3/hypot.3:56
3688 #: build/C/man3/hypot.3:66
3689 msgid "B<hypotf>(), B<hypotl>():"
3693 #: build/C/man3/hypot.3:87
3695 "The B<hypot>() function returns sqrt(I<x>*I<x>+I<y>*I<y>). This is the "
3696 "length of the hypotenuse of a right-angled triangle with sides of length "
3697 "I<x> and I<y>, or the distance of the point (I<x>,I<y>) from the origin."
3700 #. e.g., hypot(DBL_MIN, DBL_MIN) does the right thing, as does, say
3701 #. hypot(DBL_MAX/2.0, DBL_MAX/2.0).
3703 #: build/C/man3/hypot.3:92
3705 "The calculation is performed without undue overflow or underflow during the "
3706 "intermediate steps of the calculation."
3710 #: build/C/man3/hypot.3:98
3712 "On success, these functions return the length of a right-angled triangle "
3713 "with sides of length I<x> and I<y>."
3717 #: build/C/man3/hypot.3:105
3718 msgid "If I<x> or I<y> is an infinity, positive infinity is returned."
3722 #: build/C/man3/hypot.3:113
3724 "If I<x> or I<y> is a NaN, and the other argument is not an infinity, a NaN "
3728 #. Actually, could the result not be subnormal if both arguments
3729 #. are subnormal? I think not -- mtk, Jul 2008
3731 #: build/C/man3/hypot.3:128
3733 "If both arguments are subnormal, and the result is subnormal, a range error "
3734 "occurs, and the correct result is returned."
3737 #. FIXME . Is it intentional that these functions do not set errno?
3738 #. They do set errno for the y == 0 case, below.
3739 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6783
3741 #: build/C/man3/hypot.3:158 build/C/man3/ilogb.3:130 build/C/man3/remainder.3:172
3742 msgid "These functions do not set I<errno> for this case."
3746 #: build/C/man3/hypot.3:167
3747 msgid "B<cabs>(3), B<sqrt>(3)"
3751 #: build/C/man3/ilogb.3:29
3757 #: build/C/man3/ilogb.3:32
3758 msgid "ilogb, ilogbf, ilogbl - get integer exponent of a floating-point value"
3762 #: build/C/man3/ilogb.3:36
3763 msgid "B<int ilogb(double >I<x>B<);>"
3767 #: build/C/man3/ilogb.3:38
3768 msgid "B<int ilogbf(float >I<x>B<);>"
3772 #: build/C/man3/ilogb.3:40
3773 msgid "B<int ilogbl(long double >I<x>B<);>"
3777 #: build/C/man3/ilogb.3:50
3782 #: build/C/man3/ilogb.3:62
3783 msgid "B<ilogbf>(), B<ilogbl>():"
3787 #: build/C/man3/ilogb.3:78
3789 "These functions return the exponent part of their argument as a signed "
3790 "integer. When no error occurs, these functions are equivalent to the "
3791 "corresponding B<logb>(3) functions, cast to I<int>."
3795 #: build/C/man3/ilogb.3:82
3797 "On success, these functions return the exponent of I<x>, as a signed "
3801 #. the POSIX.1 spec for logb() says logb() gives pole error for this
3802 #. case, but for ilogb() it says domain error.
3803 #. glibc: The numeric value is either `INT_MIN' or `-INT_MAX'.
3805 #: build/C/man3/ilogb.3:90
3807 "If I<x> is zero, then a domain error occurs, and the functions return "
3811 #. glibc: The numeric value is either `INT_MIN' or `INT_MAX'.
3812 #. On i386, FP_ILOGB0 and FP_ILOGBNAN have the same value.
3814 #: build/C/man3/ilogb.3:97
3816 "If I<x> is a NaN, then a domain error occurs, and the functions return "
3821 #. POSIX.1-2001 also says:
3822 #. If the correct value is greater than {INT_MAX}, {INT_MAX}
3823 #. shall be returned and a domain error shall occur.
3825 #. If the correct value is less than {INT_MIN}, {INT_MIN}
3826 #. shall be returned and a domain error shall occur.
3828 #: build/C/man3/ilogb.3:110
3830 "If I<x> is negative infinity or positive infinity, then a domain error "
3831 "occurs, and the functions return B<INT_MAX>."
3835 #: build/C/man3/ilogb.3:117
3837 msgid "Domain error: I<x> is 0 or a NaN"
3840 #. FIXME . Is it intentional that these functions do not set errno,
3841 #. or raise an exception?
3842 #. log(), log2(), log10() do set errno
3843 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6794
3845 #: build/C/man3/ilogb.3:146
3846 msgid "These functions do not set I<errno> or raise an exception for this case."
3850 #: build/C/man3/ilogb.3:152
3851 msgid "B<log>(3), B<logb>(3), B<significand>(3)"
3855 #: build/C/man3/infnan.3:33
3861 #: build/C/man3/infnan.3:33
3867 #: build/C/man3/infnan.3:36
3868 msgid "infnan - deal with infinite or not-a-number (NaN) result"
3872 #: build/C/man3/infnan.3:41
3874 msgid "B<double infnan(int >I<error>B<);>\n"
3878 #: build/C/man3/infnan.3:54
3880 "The B<infnan>() function returns a suitable value for infinity and "
3881 "\"not-a-number\" (NaN) results. The value of I<error> can be B<ERANGE> to "
3882 "represent infinity or anything else to represent NaN. I<errno> is also set."
3886 #: build/C/man3/infnan.3:60
3887 msgid "If I<error> is B<ERANGE> (Infinity), B<HUGE_VAL> is returned."
3891 #: build/C/man3/infnan.3:62
3892 msgid "If I<error> is -B<ERANGE> (-Infinity), -B<HUGE_VAL> is returned."
3896 #: build/C/man3/infnan.3:64
3897 msgid "If I<error> is anything else, NAN is returned."
3901 #: build/C/man3/infnan.3:65
3907 #: build/C/man3/infnan.3:68
3908 msgid "The value of I<error> is \"not-a-number\" (NaN)."
3912 #: build/C/man3/infnan.3:68
3918 #: build/C/man3/infnan.3:71
3919 msgid "The value of I<error> is positive infinity or negative infinity."
3923 #: build/C/man3/infnan.3:73
3928 #: build/C/man3/infnan.3:76
3930 "This obsolete function was provided in libc4 and libc5, but is not available "
3935 #: build/C/man3/isgreater.3:10
3941 #: build/C/man3/isgreater.3:10
3947 #: build/C/man3/isgreater.3:14
3949 "isgreater, isgreaterequal, isless, islessequal, islessgreater, isunordered - "
3950 "floating-point relational tests without exception for NaN"
3954 #: build/C/man3/isgreater.3:19
3956 msgid "B<int isgreater(>I<x>B<, >I<y>B<);>\n"
3960 #: build/C/man3/isgreater.3:21
3962 msgid "B<int isgreaterequal(>I<x>B<, >I<y>B<);>\n"
3966 #: build/C/man3/isgreater.3:23
3968 msgid "B<int isless(>I<x>B<, >I<y>B<);>\n"
3972 #: build/C/man3/isgreater.3:25
3974 msgid "B<int islessequal(>I<x>B<, >I<y>B<);>\n"
3978 #: build/C/man3/isgreater.3:27
3980 msgid "B<int islessgreater(>I<x>B<, >I<y>B<);>\n"
3984 #: build/C/man3/isgreater.3:29
3986 msgid "B<int isunordered(>I<x>B<, >I<y>B<);>\n"
3990 #: build/C/man3/isgreater.3:40
3991 msgid "All functions described here:"
3995 #: build/C/man3/isgreater.3:53
3997 "The normal relation operations (like B<E<lt>>, \"less than\") will fail if "
3998 "one of the operands is NaN. This will cause an exception. To avoid this, "
3999 "C99 defines the macros listed below."
4003 #: build/C/man3/isgreater.3:59
4005 "These macros are guaranteed to evaluate their arguments only once. The "
4006 "arguments must be of real floating-point type (note: do not pass integer "
4007 "values as arguments to these macros, since the arguments will I<not> be "
4008 "promoted to real-floating types)."
4012 #: build/C/man3/isgreater.3:59
4014 msgid "B<isgreater>()"
4018 #: build/C/man3/isgreater.3:63
4019 msgid "determines I<(x)\\ E<gt>\\ (y)> without an exception if I<x> or I<y> is NaN."
4023 #: build/C/man3/isgreater.3:63
4025 msgid "B<isgreaterequal>()"
4029 #: build/C/man3/isgreater.3:67
4031 "determines I<(x)\\ E<gt>=\\ (y)> without an exception if I<x> or I<y> is "
4036 #: build/C/man3/isgreater.3:67
4042 #: build/C/man3/isgreater.3:71
4043 msgid "determines I<(x)\\ E<lt>\\ (y)> without an exception if I<x> or I<y> is NaN."
4047 #: build/C/man3/isgreater.3:71
4049 msgid "B<islessequal>()"
4053 #: build/C/man3/isgreater.3:75
4055 "determines I<(x)\\ E<lt>=\\ (y)> without an exception if I<x> or I<y> is "
4060 #: build/C/man3/isgreater.3:75
4062 msgid "B<islessgreater>()"
4066 #: build/C/man3/isgreater.3:81
4068 "determines I<(x)\\ E<lt> (y) || (x) E<gt>\\ (y)> without an exception if "
4069 "I<x> or I<y> is NaN. This macro is not equivalent to I<x\\ !=\\ y> because "
4070 "that expression is true if I<x> or I<y> is NaN."
4074 #: build/C/man3/isgreater.3:81
4076 msgid "B<isunordered>()"
4080 #: build/C/man3/isgreater.3:85
4082 "determines whether its arguments are unordered, that is, whether at least "
4083 "one of the arguments is a NaN."
4087 #: build/C/man3/isgreater.3:90
4089 "The macros other than B<isunordered>() return the result of the relational "
4090 "comparison; these macros return 0 if either argument is a NaN."
4094 #: build/C/man3/isgreater.3:93
4095 msgid "B<isunordered>() returns 1 if I<x> or I<y> is NaN and 0 otherwise."
4099 #: build/C/man3/isgreater.3:102
4101 "Not all hardware supports these functions, and where hardware support isn't "
4102 "provided, they will be emulated by macros. This will result in a "
4103 "performance penalty. Don't use these functions if NaN is of no concern for "
4108 #: build/C/man3/isgreater.3:105
4109 msgid "B<fpclassify>(3), B<isnan>(3)"
4113 #: build/C/man3/j0.3:36
4119 #: build/C/man3/j0.3:40
4121 "j0, j0f, j0l, j1, j1f, j1l, jn, jnf, jnl - Bessel functions of the first "
4126 #: build/C/man3/j0.3:46
4127 msgid "B<double j0(double >I<x>B<);>"
4131 #: build/C/man3/j0.3:48
4132 msgid "B<double j1(double >I<x>B<);>"
4136 #: build/C/man3/j0.3:50
4137 msgid "B<double jn(int >I<n>B<, double >I<x>B<);>"
4141 #: build/C/man3/j0.3:52
4142 msgid "B<float j0f(float >I<x>B<);>"
4146 #: build/C/man3/j0.3:54
4147 msgid "B<float j1f(float >I<x>B<);>"
4151 #: build/C/man3/j0.3:56
4152 msgid "B<float jnf(int >I<n>B<, float >I<x>B<);>"
4156 #: build/C/man3/j0.3:58
4157 msgid "B<long double j0l(long double >I<x>B<);>"
4161 #: build/C/man3/j0.3:60
4162 msgid "B<long double j1l(long double >I<x>B<);>"
4166 #: build/C/man3/j0.3:62
4167 msgid "B<long double jnl(int >I<n>B<, long double >I<x>B<);>"
4171 #: build/C/man3/j0.3:74
4172 msgid "B<j0>(), B<j1>(), B<jn>():"
4176 #: build/C/man3/j0.3:76 build/C/man3/y0.3:76
4177 msgid "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE"
4181 #: build/C/man3/j0.3:84
4182 msgid "B<j0f>(), B<j0l>(), B<j1f>(), B<j1l>(), B<jnf>(), B<jnl>():"
4185 #. Also seems to work: -std=c99 -D_XOPEN_SOURCE
4187 #: build/C/man3/j0.3:87 build/C/man3/y0.3:87
4188 msgid "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600"
4192 #: build/C/man3/j0.3:100
4194 "The B<j0>() and B<j1>() functions return Bessel functions of I<x> of the "
4195 "first kind of orders 0 and 1, respectively. The B<jn>() function returns "
4196 "the Bessel function of I<x> of the first kind of order I<n>."
4200 #: build/C/man3/j0.3:110
4202 "The B<j0f>() etc. and B<j0l>() etc. functions are versions that take and "
4203 "return I<float> and I<long double> values, respectively."
4207 #: build/C/man3/j0.3:114
4209 "On success, these functions return the appropriate Bessel value of the first "
4214 #: build/C/man3/j0.3:125
4216 "If I<x> is too large in magnitude, or the result underflows, a range error "
4217 "occurs, and the return value is 0."
4221 #: build/C/man3/j0.3:132
4223 msgid "Range error: result underflow, or I<x> is too large in magnitude"
4226 #. An underflow floating-point exception
4227 #. .RB ( FE_UNDERFLOW )
4230 #: build/C/man3/j0.3:140
4231 msgid "I<errno> is set to B<ERANGE>."
4234 #. FIXME . Is it intentional that these functions do not raise exceptions?
4236 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6805
4238 #: build/C/man3/j0.3:146
4239 msgid "These functions do not raise exceptions for B<fetestexcept>(3)."
4243 #: build/C/man3/j0.3:152 build/C/man3/y0.3:223
4245 "The functions returning I<double> conform to SVr4, 4.3BSD, POSIX.1-2001. "
4246 "The others are nonstandard functions that also exist on the BSDs."
4250 #: build/C/man3/j0.3:159
4252 "There are errors of up to 2e-16 in the values returned by B<j0>(), B<j1>() "
4253 "and B<jn>() for values of I<x> between -8 and 8."
4257 #: build/C/man3/j0.3:161
4262 #: build/C/man3/ldexp.3:34
4268 #: build/C/man3/ldexp.3:37
4270 "ldexp, ldexpf, ldexpl - multiply floating-point number by integral power of "
4275 #: build/C/man3/ldexp.3:42
4277 msgid "B<double ldexp(double >I<x>B<, int >I<exp>B<);>\n"
4281 #: build/C/man3/ldexp.3:44
4283 msgid "B<float ldexpf(float >I<x>B<, int >I<exp>B<);>\n"
4287 #: build/C/man3/ldexp.3:46
4289 msgid "B<long double ldexpl(long double >I<x>B<, int >I<exp>B<);>\n"
4293 #: build/C/man3/ldexp.3:58
4294 msgid "B<ldexpf>(), B<ldexpl>():"
4298 #: build/C/man3/ldexp.3:73
4300 "The B<ldexp>() function returns the result of multiplying the "
4301 "floating-point number I<x> by 2 raised to the power I<exp>."
4305 #: build/C/man3/ldexp.3:76
4306 msgid "On success, these functions return I<x * (2^exp)>."
4310 #: build/C/man3/ldexp.3:82
4311 msgid "If I<exp> is zero, then I<x> is returned."
4315 #: build/C/man3/ldexp.3:106 build/C/man3/scalb.3:128 build/C/man3/scalbln.3:120
4317 "If the result overflows, a range error occurs, and the functions return "
4318 "B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, respectively, with a sign the "
4323 #: build/C/man3/ldexp.3:139
4324 msgid "B<frexp>(3), B<modf>(3), B<scalbln>(3)"
4328 #: build/C/man3/lgamma.3:11
4334 #: build/C/man3/lgamma.3:15
4336 "lgamma, lgammaf, lgammal, lgamma_r, lgammaf_r, lgammal_r, signgam - log "
4341 #: build/C/man3/lgamma.3:20
4343 msgid "B<double lgamma(double >I<x>B<);>\n"
4347 #: build/C/man3/lgamma.3:22
4349 msgid "B<float lgammaf(float >I<x>B<);>\n"
4353 #: build/C/man3/lgamma.3:24
4355 msgid "B<long double lgammal(long double >I<x>B<);>\n"
4359 #: build/C/man3/lgamma.3:26
4361 msgid "B<double lgamma_r(double >I<x>B<, int *>I<signp>B<);>\n"
4365 #: build/C/man3/lgamma.3:28
4367 msgid "B<float lgammaf_r(float >I<x>B<, int *>I<signp>B<);>\n"
4371 #: build/C/man3/lgamma.3:30
4373 msgid "B<long double lgammal_r(long double >I<x>B<, int *>I<signp>B<);>\n"
4377 #: build/C/man3/lgamma.3:32
4379 msgid "B<extern int >I<signgam>B<;>\n"
4383 #: build/C/man3/lgamma.3:43
4384 msgid "B<lgamma>():"
4388 #: build/C/man3/lgamma.3:53
4389 msgid "B<lgammaf>(), B<lgammal>():"
4393 #: build/C/man3/lgamma.3:63
4394 msgid "B<lgamma_r>(), B<lgammaf_r>(), B<lgammal_r>():"
4398 #: build/C/man3/lgamma.3:67
4403 #: build/C/man3/lgamma.3:84
4405 "The B<lgamma>() function returns the natural logarithm of the absolute "
4406 "value of the Gamma function. The sign of the Gamma function is returned in "
4407 "the external integer I<signgam> declared in I<E<lt>math.hE<gt>>. It is 1 "
4408 "when the Gamma function is positive or zero, -1 when it is negative."
4412 #: build/C/man3/lgamma.3:92
4414 "Since using a constant location I<signgam> is not thread-safe, the functions "
4415 "B<lgamma_r>() etc. have been introduced; they return the sign via the "
4416 "argument I<signp>."
4420 #: build/C/man3/lgamma.3:94
4421 msgid "On success, these functions return the natural logarithm of Gamma(x)."
4425 #: build/C/man3/lgamma.3:102
4426 msgid "If I<x> is 1 or 2, +0 is returned."
4430 #: build/C/man3/lgamma.3:118
4432 "If I<x> is a nonpositive integer, a pole error occurs, and the functions "
4433 "return +B<HUGE_VAL>, +B<HUGE_VALF>, or +B<HUGE_VALL>, respectively."
4437 #: build/C/man3/lgamma.3:128 build/C/man3/tgamma.3:88
4439 "If the result overflows, a range error occurs, and the functions return "
4440 "B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, respectively, with the correct "
4441 "mathematical sign."
4445 #: build/C/man3/lgamma.3:135
4447 msgid "Pole error: I<x> is a nonpositive integer"
4451 #: build/C/man3/lgamma.3:163
4453 "The B<lgamma>() functions are specified in C99 and POSIX.1-2001. "
4454 "I<signgam> is specified in POSIX.1-2001, but not in C99. The B<lgamma_r>() "
4455 "functions are nonstandard, but present on several other systems."
4458 #. http://sources.redhat.com/bugzilla/show_bug.cgi?id=6777
4460 #: build/C/man3/lgamma.3:173
4462 "In glibc 2.9 and earlier, when a pole error occurs, I<errno> is set to "
4463 "B<EDOM>; instead of the POSIX-mandated B<ERANGE>. Since version 2.10, glibc "
4464 "does the right thing."
4468 #: build/C/man3/lgamma.3:175
4469 msgid "B<tgamma>(3)"
4473 #: build/C/man3/log.3:36
4479 #: build/C/man3/log.3:39
4480 msgid "log, logf, logl - natural logarithmic function"
4484 #: build/C/man3/log.3:44
4486 msgid "B<double log(double >I<x>B<);>\n"
4490 #: build/C/man3/log.3:46
4492 msgid "B<float logf(float >I<x>B<);>\n"
4496 #: build/C/man3/log.3:48
4498 msgid "B<long double logl(long double >I<x>B<);>\n"
4502 #: build/C/man3/log.3:60
4503 msgid "B<logf>(), B<logl>():"
4507 #: build/C/man3/log.3:72
4508 msgid "The B<log>() function returns the natural logarithm of I<x>."
4512 #: build/C/man3/log.3:75
4513 msgid "On success, these functions return the natural logarithm of I<x>."
4517 #: build/C/man3/log.3:84
4518 msgid "If I<x> is 1, the result is +0."
4522 #: build/C/man3/log.3:99 build/C/man3/logb.3:111
4524 "If I<x> is zero, then a pole error occurs, and the functions return "
4525 "-B<HUGE_VAL>, -B<HUGE_VALF>, or -B<HUGE_VALL>, respectively."
4529 #: build/C/man3/log.3:104
4531 "If I<x> is negative (including negative infinity), then a domain error "
4532 "occurs, and a NaN (not a number) is returned."
4536 #: build/C/man3/log.3:111 build/C/man3/y0.3:165
4538 msgid "Domain error: I<x> is negative"
4542 #: build/C/man3/log.3:119
4544 msgid "Pole error: I<x> is zero"
4548 #: build/C/man3/log.3:127 build/C/man3/tgamma.3:128
4550 "I<errno> is set to B<ERANGE>. A divide-by-zero floating-point exception "
4551 "(B<FE_DIVBYZERO>) is raised."
4555 #: build/C/man3/log.3:140
4557 "In glibc 2.5 and earlier, taking the B<log>() of a NaN produces a bogus "
4558 "invalid floating-point (B<FE_INVALID>) exception."
4562 #: build/C/man3/log.3:147
4563 msgid "B<cbrt>(3), B<clog>(3), B<log10>(3), B<log1p>(3), B<log2>(3), B<sqrt>(3)"
4567 #: build/C/man3/log10.3:36
4573 #: build/C/man3/log10.3:39
4574 msgid "log10, log10f, log10l - base-10 logarithmic function"
4578 #: build/C/man3/log10.3:44
4580 msgid "B<double log10(double >I<x>B<);>\n"
4584 #: build/C/man3/log10.3:46
4586 msgid "B<float log10f(float >I<x>B<);>\n"
4590 #: build/C/man3/log10.3:48
4592 msgid "B<long double log10l(long double >I<x>B<);>\n"
4596 #: build/C/man3/log10.3:60
4597 msgid "B<log10f>(), B<log10l>():"
4601 #: build/C/man3/log10.3:72
4602 msgid "The B<log10>() function returns the base 10 logarithm of I<x>."
4606 #: build/C/man3/log10.3:75
4607 msgid "On success, these functions return the base 10 logarithm of I<x>."
4611 #: build/C/man3/log10.3:80 build/C/man3/log2.3:80
4613 "For special cases, including where I<x> is 0, 1, negative, infinity, or NaN, "
4618 #: build/C/man3/log10.3:88 build/C/man3/log2.3:88
4620 "For a discussion of the errors that can occur for these functions, see "
4625 #: build/C/man3/log10.3:101
4626 msgid "B<cbrt>(3), B<clog10>(3), B<exp10>(3), B<log>(3), B<log2>(3), B<sqrt>(3)"
4630 #: build/C/man3/log1p.3:29
4636 #: build/C/man3/log1p.3:32
4637 msgid "log1p, log1pf, log1pl - logarithm of 1 plus argument"
4641 #: build/C/man3/log1p.3:37
4643 msgid "B<double log1p(double >I<x>B<);>\n"
4647 #: build/C/man3/log1p.3:39
4649 msgid "B<float log1pf(float >I<x>B<);>\n"
4653 #: build/C/man3/log1p.3:41
4655 msgid "B<long double log1pl(long double >I<x>B<);>\n"
4659 #: build/C/man3/log1p.3:52
4664 #: build/C/man3/log1p.3:63
4665 msgid "B<log1pf>(), B<log1pl>():"
4669 #: build/C/man3/log1p.3:74
4670 msgid "I<log1p(x)> returns a value equivalent to"
4674 #: build/C/man3/log1p.3:77
4676 msgid " log (1 + I<x>)\n"
4680 #: build/C/man3/log1p.3:81
4682 "It is computed in a way that is accurate even if the value of I<x> is near "
4687 #: build/C/man3/log1p.3:84
4688 msgid "On success, these functions return the natural logarithm of I<(1\\ +\\ x)>."
4692 #: build/C/man3/log1p.3:103
4694 "If I<x> is -1, a pole error occurs, and the functions return -B<HUGE_VAL>, "
4695 "-B<HUGE_VALF>, or -B<HUGE_VALL>, respectively."
4698 #. POSIX.1 specifies a possible range error if x is subnormal
4699 #. glibc 2.8 doesn't do this
4701 #: build/C/man3/log1p.3:111
4703 "If I<x> is less than -1 (including negative infinity), a domain error "
4704 "occurs, and a NaN (not a number) is returned."
4708 #: build/C/man3/log1p.3:118
4710 msgid "Domain error: I<x> is less than -1"
4714 #: build/C/man3/log1p.3:126
4716 msgid "Pole error: I<x> is -1"
4723 #: build/C/man3/log1p.3:134 build/C/man3/logb.3:131
4724 msgid "A divide-by-zero floating-point exception (B<FE_DIVBYZERO>) is raised."
4728 #: build/C/man3/log1p.3:147
4729 msgid "B<exp>(3), B<expm1>(3), B<log>(3)"
4733 #: build/C/man3/log2.3:36
4739 #: build/C/man3/log2.3:39
4740 msgid "log2, log2f, log2l - base-2 logarithmic function"
4744 #: build/C/man3/log2.3:44
4746 msgid "B<double log2(double >I<x>B<);>\n"
4750 #: build/C/man3/log2.3:46
4752 msgid "B<float log2f(float >I<x>B<);>\n"
4756 #: build/C/man3/log2.3:48
4758 msgid "B<long double log2l(long double >I<x>B<);>\n"
4762 #: build/C/man3/log2.3:61
4763 msgid "B<log2>(), B<log2f>(), B<log2l>():"
4767 #: build/C/man3/log2.3:72
4768 msgid "The B<log2>() function returns the base 2 logarithm of I<x>."
4772 #: build/C/man3/log2.3:75
4773 msgid "On success, these functions return the base 2 logarithm of I<x>."
4777 #: build/C/man3/log2.3:102
4778 msgid "B<cbrt>(3), B<clog2>(3), B<log>(3), B<log10>(3), B<sqrt>(3)"
4782 #: build/C/man3/logb.3:29
4788 #: build/C/man3/logb.3:32
4789 msgid "logb, logbf, logbl - get exponent of a floating-point value"
4793 #: build/C/man3/logb.3:36
4794 msgid "B<double logb(double >I<x>B<);>"
4798 #: build/C/man3/logb.3:38
4799 msgid "B<float logbf(float >I<x>B<);>"
4803 #: build/C/man3/logb.3:40
4804 msgid "B<long double logbl(long double >I<x>B<);>"
4808 #: build/C/man3/logb.3:50
4813 #: build/C/man3/logb.3:61
4814 msgid "B<logbf>(), B<logbl>():"
4818 #: build/C/man3/logb.3:86
4820 "These functions extract the exponent from the internal floating-point "
4821 "representation of I<x> and return it as a floating-point value. The integer "
4822 "constant B<FLT_RADIX>, defined in I<E<lt>float.hE<gt>>, indicates the radix "
4823 "used for the system's floating-point representation. If B<FLT_RADIX> is 2, "
4824 "B<logb(>I<x>B<)> is equal to B<floor(log2(>I<x>B<))>, except that it is "
4829 #: build/C/man3/logb.3:94
4831 "If I<x> is subnormal, B<logb>() returns the exponent I<x> would have if it "
4836 #: build/C/man3/logb.3:97
4837 msgid "On success, these functions return the exponent of I<x>."
4841 #: build/C/man3/logb.3:116
4843 "If I<x> is negative infinity or positive infinity, then positive infinity is "
4848 #: build/C/man3/logb.3:123
4850 msgid "Pole error: I<x> is 0"
4854 #: build/C/man3/logb.3:148
4855 msgid "B<ilogb>(3), B<log>(3)"
4859 #: build/C/man3/lrint.3:27
4865 #: build/C/man3/lrint.3:30
4866 msgid "lrint, lrintf, lrintl, llrint, llrintf, llrintl - round to nearest integer"
4870 #: build/C/man3/lrint.3:35
4872 msgid "B<long int lrint(double >I<x>B<);>\n"
4876 #: build/C/man3/lrint.3:37
4878 msgid "B<long int lrintf(float >I<x>B<);>\n"
4882 #: build/C/man3/lrint.3:39
4884 msgid "B<long int lrintl(long double >I<x>B<);>\n"
4888 #: build/C/man3/lrint.3:41
4890 msgid "B<long long int llrint(double >I<x>B<);>\n"
4894 #: build/C/man3/lrint.3:43
4896 msgid "B<long long int llrintf(float >I<x>B<);>\n"
4900 #: build/C/man3/lrint.3:45
4902 msgid "B<long long int llrintl(long double >I<x>B<);>\n"
4906 #: build/C/man3/lrint.3:56 build/C/man3/lround.3:57
4907 msgid "All functions shown above:"
4911 #: build/C/man3/lrint.3:68
4913 "These functions round their argument to the nearest integer value, using the "
4914 "current rounding direction (see B<fesetround>(3))."
4918 #: build/C/man3/lrint.3:73
4920 "Note that unlike B<rint>(3), etc., the return type of these functions "
4921 "differs from that of their arguments."
4925 #: build/C/man3/lrint.3:75 build/C/man3/lround.3:78 build/C/man3/rint.3:107 build/C/man3/round.3:75 build/C/man3/trunc.3:63
4926 msgid "These functions return the rounded integer value."
4929 #. The return value is -(LONG_MAX - 1) or -(LLONG_MAX -1)
4931 #: build/C/man3/lrint.3:87 build/C/man3/lround.3:90
4933 "If I<x> is a NaN or an infinity, or the rounded value is too large to be "
4934 "stored in a I<long> (I<long long> in the case of the B<ll*> functions) then "
4935 "a domain error occurs, and the return value is unspecified."
4939 #: build/C/man3/lrint.3:94 build/C/man3/lround.3:97
4941 msgid "Domain error: I<x> is a NaN or infinite, or the rounded value is too large"
4945 #: build/C/man3/lrint.3:118
4947 "B<ceil>(3), B<floor>(3), B<lround>(3), B<nearbyint>(3), B<rint>(3), "
4952 #: build/C/man3/lround.3:27
4958 #: build/C/man3/lround.3:31
4960 "lround, lroundf, lroundl, llround, llroundf, llroundl - round to nearest "
4961 "integer, away from zero"
4965 #: build/C/man3/lround.3:36
4967 msgid "B<long int lround(double >I<x>B<);>\n"
4971 #: build/C/man3/lround.3:38
4973 msgid "B<long int lroundf(float >I<x>B<);>\n"
4977 #: build/C/man3/lround.3:40
4979 msgid "B<long int lroundl(long double >I<x>B<);>\n"
4983 #: build/C/man3/lround.3:42
4985 msgid "B<long long int llround(double >I<x>B<);>\n"
4989 #: build/C/man3/lround.3:44
4991 msgid "B<long long int llroundf(float >I<x>B<);>\n"
4995 #: build/C/man3/lround.3:46
4997 msgid "B<long long int llroundl(long double >I<x>B<);>\n"
5001 #: build/C/man3/lround.3:70
5003 "These functions round their argument to the nearest integer value, rounding "
5004 "away from zero, regardless of the current rounding direction (see "
5009 #: build/C/man3/lround.3:76
5011 "Note that unlike B<round>(3), B<ceil>(3), etc., the return type of these "
5012 "functions differs from that of their arguments."
5016 #: build/C/man3/lround.3:121 build/C/man3/trunc.3:87
5018 "B<ceil>(3), B<floor>(3), B<lrint>(3), B<nearbyint>(3), B<rint>(3), "
5023 #: build/C/man7/math_error.7:26
5029 #: build/C/man7/math_error.7:29
5030 msgid "math_error - detecting errors from mathematical functions"
5034 #: build/C/man7/math_error.7:34
5037 "B<#include E<lt>math.hE<gt>>\n"
5038 "B<#include E<lt>errno.hE<gt>>\n"
5039 "B<#include E<lt>fenv.hE<gt>>\n"
5043 #: build/C/man7/math_error.7:53
5045 "When an error occurs, most library functions indicate this fact by returning "
5046 "a special value (e.g., -1 or NULL). Because they typically return a "
5047 "floating-point number, the mathematical functions declared in "
5048 "I<E<lt>math.hE<gt>> indicate an error using other mechanisms. There are two "
5049 "error-reporting mechanisms: the older one sets I<errno>; the newer one uses "
5050 "the floating-point exception mechanism (the use of B<feclearexcept>(3) and "
5051 "B<fetestexcept>(3), as outlined below) described in B<fenv>(3)."
5055 #: build/C/man7/math_error.7:58
5057 "A portable program that needs to check for an error from a mathematical "
5058 "function should set I<errno> to zero, and make the following call"
5062 #: build/C/man7/math_error.7:62
5064 msgid "feclearexcept(FE_ALL_EXCEPT);\n"
5068 #: build/C/man7/math_error.7:66
5069 msgid "before calling a mathematical function."
5073 #: build/C/man7/math_error.7:72
5075 "Upon return from the mathematical function, if I<errno> is nonzero, or the "
5076 "following call (see B<fenv>(3)) returns nonzero"
5080 #: build/C/man7/math_error.7:77
5083 "fetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW |\n"
5089 #. FE_INVALID = 0x01,
5090 #. __FE_DENORM = 0x02,
5091 #. FE_DIVBYZERO = 0x04,
5092 #. FE_OVERFLOW = 0x08,
5093 #. FE_UNDERFLOW = 0x10,
5094 #. FE_INEXACT = 0x20
5097 #: build/C/man7/math_error.7:90
5098 msgid "then an error occurred in the mathematical function."
5102 #: build/C/man7/math_error.7:93
5104 "The error conditions that can occur for mathematical functions are described "
5109 #: build/C/man7/math_error.7:93
5111 msgid "Domain error"
5115 #: build/C/man7/math_error.7:109
5117 "A I<domain error> occurs when a mathematical function is supplied with an "
5118 "argument whose value falls outside the domain for which the function is "
5119 "defined (e.g., giving a negative argument to B<log>(3)). When a domain "
5120 "error occurs, math functions commonly return a NaN (though some functions "
5121 "return a different value in this case); I<errno> is set to B<EDOM>, and an "
5122 "\"invalid\" (B<FE_INVALID>) floating-point exception is raised."
5126 #: build/C/man7/math_error.7:109
5132 #: build/C/man7/math_error.7:133
5134 "A I<pole error> occurs when the mathematical result of a function is an "
5135 "exact infinity (e.g., the logarithm of 0 is negative infinity). When a pole "
5136 "error occurs, the function returns the (signed) value B<HUGE_VAL>, "
5137 "B<HUGE_VALF>, or B<HUGE_VALL>, depending on whether the function result type "
5138 "is I<double>, I<float>, or I<long double>. The sign of the result is that "
5139 "which is mathematically correct for the function. I<errno> is set to "
5140 "B<ERANGE>, and a \"divide-by-zero\" (B<FE_DIVBYZERO>) floating-point "
5141 "exception is raised."
5145 #: build/C/man7/math_error.7:133
5151 #: build/C/man7/math_error.7:140
5153 "A I<range error> occurs when the magnitude of the function result means that "
5154 "it cannot be represented in the result type of the function. The return "
5155 "value of the function depends on whether the range error was an overflow or "
5160 #: build/C/man7/math_error.7:162
5162 "A floating result I<overflows> if the result is finite, but is too large to "
5163 "represented in the result type. When an overflow occurs, the function "
5164 "returns the value B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, depending on "
5165 "whether the function result type is I<double>, I<float>, or I<long double>. "
5166 "I<errno> is set to B<ERANGE>, and an \"overflow\" (B<FE_OVERFLOW>) "
5167 "floating-point exception is raised."
5171 #: build/C/man7/math_error.7:177
5173 "A floating result I<underflows> if the result is too small to be represented "
5174 "in the result type. If an underflow occurs, a mathematical function "
5175 "typically returns 0.0 (C99 says a function shall return \"an "
5176 "implementation-defined value whose magnitude is no greater than the smallest "
5177 "normalized positive number in the specified type\"). I<errno> may be set to "
5178 "B<ERANGE>, and an \"overflow\" (B<FE_UNDERFLOW>) floating-point exception "
5183 #: build/C/man7/math_error.7:187
5185 "Some functions deliver a range error if the supplied argument value, or the "
5186 "correct function result, would be I<subnormal>. A subnormal value is one "
5187 "that is nonzero, but with a magnitude that is so small that it can't be "
5188 "presented in normalized form (i.e., with a 1 in the most significant bit of "
5189 "the significand). The representation of a subnormal number will contain one "
5190 "or more leading zeros in the significand."
5193 #. See CONFORMANCE in the glibc 2.8 (and earlier) source.
5195 #: build/C/man7/math_error.7:209
5197 "The I<math_errhandling> identifier specified by C99 and POSIX.1-2001 is not "
5198 "supported by glibc. This identifier is supposed to indicate which of the "
5199 "two error-notification mechanisms (I<errno>, exceptions retrievable via "
5200 "B<fettestexcept>(3)) is in use. The standards require that at least one be "
5201 "in use, but permit both to be available. The current (version 2.8) "
5202 "situation under glibc is messy. Most (but not all) functions raise "
5203 "exceptions on errors. Some also set I<errno>. A few functions set "
5204 "I<errno>, but don't raise an exception. A very few functions do neither. "
5205 "See the individual manual pages for details."
5208 #. http://www.securecoding.cert.org/confluence/display/seccode/FLP32-C.+Prevent+or+detect+domain+and+range+errors+in+math+functions
5210 #: build/C/man7/math_error.7:222
5212 "To avoid the complexities of using I<errno> and B<fetestexcept>(3) for "
5213 "error checking, it is often advised that one should instead check for bad "
5214 "argument values before each call. For example, the following code ensures "
5215 "that B<log>(3)'s argument is not a NaN and is not zero (a pole error) or "
5216 "less than zero (a domain error):"
5220 #: build/C/man7/math_error.7:226
5222 msgid "double x, r;\n"
5226 #: build/C/man7/math_error.7:230
5229 "if (isnan(x) || islessequal(x, 0)) {\n"
5230 " /* Deal with NaN / pole error / domain error */\n"
5235 #: build/C/man7/math_error.7:232
5237 msgid "r = log(x);\n"
5241 #: build/C/man7/math_error.7:240
5243 "The discussion on this page does not apply to the complex mathematical "
5244 "functions (i.e., those declared by I<E<lt>complex.hE<gt>>), which in general "
5245 "are not required to return errors by C99 and POSIX.1-2001."
5249 #: build/C/man7/math_error.7:256
5251 "The B<gcc>(1) I<-fno-math-errno> option causes the executable to employ "
5252 "implementations of some mathematical functions that are faster than the "
5253 "standard implementations, but do not set I<errno> on error. (The B<gcc>(1) "
5254 "I<-ffast-math> option also enables I<-fno-math-errno>.) An error can still "
5255 "be tested for using B<fetestexcept>(3)."
5259 #: build/C/man7/math_error.7:265
5261 "B<gcc>(1), B<errno>(3), B<fenv>(3), B<fpclassify>(3), B<INFINITY>(3), "
5262 "B<isgreater>(3), B<matherr>(3), B<nan>(3)"
5266 #: build/C/man7/math_error.7:267
5267 msgid "I<info libc>"
5271 #: build/C/man3/matherr.3:27
5277 #: build/C/man3/matherr.3:27
5283 #: build/C/man3/matherr.3:30
5284 msgid "matherr - SVID math library exception handling"
5288 #: build/C/man3/matherr.3:34
5291 "B<#define _SVID_SOURCE> /* See feature_test_macros(7) */\n"
5292 "B<#include E<lt>math.hE<gt>>\n"
5296 #: build/C/man3/matherr.3:36
5298 msgid "B<int matherr(struct exception *>I<exc>B<);>\n"
5302 #: build/C/man3/matherr.3:38
5304 msgid "B<extern _LIB_VERSION_TYPE _LIB_VERSION;>\n"
5308 #: build/C/man3/matherr.3:51
5310 "The System V Interface Definition (SVID) specifies that various math "
5311 "functions should invoke a function called B<matherr>() if a math exception "
5312 "is detected. This function is called before the math function returns; "
5313 "after B<matherr>() returns, the system then returns to the math function, "
5314 "which in turn returns to the caller."
5318 #: build/C/man3/matherr.3:62
5320 "The B<matherr>() mechanism is supported by glibc, but is now obsolete: new "
5321 "applications should use the techniques described in B<math_error>(7) and "
5322 "B<fenv>(3). This page documents the glibc B<matherr>() mechanism as an aid "
5323 "for maintaining and porting older applications."
5327 #: build/C/man3/matherr.3:75
5329 "To employ B<matherr>(), the programmer must define the B<_SVID_SOURCE> "
5330 "feature test macro (before including I<any> header files), and assign the "
5331 "value B<_SVID_> to the external variable B<_LIB_VERSION>."
5335 #: build/C/man3/matherr.3:87
5337 "The system provides a default version of B<matherr>(). This version does "
5338 "nothing, and returns zero (see below for the significance of this). The "
5339 "default B<matherr>() can be overridden by a programmer-defined version, "
5340 "which will be invoked when an exception occurs. The function is invoked "
5341 "with one argument, a pointer to an I<exception> structure, defined as "
5346 #: build/C/man3/matherr.3:97
5349 "struct exception {\n"
5350 " int type; /* Exception type */\n"
5351 " char *name; /* Name of function causing exception */\n"
5352 " double arg1; /* 1st argument to function */\n"
5353 " double arg2; /* 2nd argument to function */\n"
5354 " double retval; /* Function return value */\n"
5359 #: build/C/man3/matherr.3:103
5360 msgid "The I<type> field has one of the following values:"
5364 #: build/C/man3/matherr.3:103
5370 #: build/C/man3/matherr.3:111
5372 "A domain error occurred (the function argument was outside the range for "
5373 "which the function is defined). The return value depends on the function; "
5374 "I<errno> is set to B<EDOM>."
5378 #: build/C/man3/matherr.3:111
5384 #: build/C/man3/matherr.3:122
5386 "A pole error occurred (the function result is an infinity). The return "
5387 "value in most cases is B<HUGE> (the largest single precision floating-point "
5388 "number), appropriately signed. In most cases, I<errno> is set to B<EDOM>."
5392 #: build/C/man3/matherr.3:122
5398 #: build/C/man3/matherr.3:131
5400 "An overflow occurred. In most cases, the value B<HUGE> is returned, and "
5401 "I<errno> is set to B<ERANGE>."
5405 #: build/C/man3/matherr.3:131
5407 msgid "B<UNDERFLOW>"
5411 #: build/C/man3/matherr.3:138
5412 msgid "An underflow occurred. 0.0 is returned, and I<errno> is set to B<ERANGE>."
5416 #: build/C/man3/matherr.3:138
5422 #: build/C/man3/matherr.3:145
5424 "Total loss of significance. 0.0 is returned, and I<errno> is set to "
5429 #: build/C/man3/matherr.3:145
5435 #: build/C/man3/matherr.3:150
5437 "Partial loss of significance. This value is unused on glibc (and many other "
5442 #: build/C/man3/matherr.3:158
5444 "The I<arg1> and I<arg2> fields are the arguments supplied to the function "
5445 "(I<arg2> is undefined for functions that take only one argument)."
5449 #: build/C/man3/matherr.3:166
5451 "The I<retval> field specifies the return value that the math function will "
5452 "return to its caller. The programmer-defined B<matherr>() can modify this "
5453 "field to change the return value of the math function."
5457 #: build/C/man3/matherr.3:173
5459 "If the B<matherr>() function returns zero, then the system sets I<errno> as "
5460 "described above, and may print an error message on standard error (see "
5465 #: build/C/man3/matherr.3:179
5467 "If the B<matherr>() function returns a nonzero value, then the system does "
5468 "not set I<errno>, and doesn't print an error message."
5472 #: build/C/man3/matherr.3:179
5474 msgid "Math functions that employ matherr()"
5478 #: build/C/man3/matherr.3:189
5480 "The table below lists the functions and circumstances in which B<matherr>() "
5481 "is called. The \"Type\" column indicates the value assigned to "
5482 "I<exc-E<gt>type> when calling B<matherr>(). The \"Result\" column is the "
5483 "default return value assigned to I<exc-E<gt>retval>."
5487 #: build/C/man3/matherr.3:195
5489 "The \"Msg?\" and \"errno\" columns describe the default behavior if "
5490 "B<matherr>() returns zero. If the \"Msg?\" columns contains \"y\", then "
5491 "the system prints an error message on standard error."
5495 #: build/C/man3/matherr.3:197
5496 msgid "The table uses the following notations and abbreviations:"
5500 #: build/C/man3/matherr.3:209
5503 "x first argument to function\n"
5504 "y second argument to function\n"
5505 "fin finite value for argument\n"
5506 "neg negative value for argument\n"
5507 "int integral value for argument\n"
5508 "o/f result overflowed\n"
5509 "u/f result underflowed\n"
5510 "|x| absolute value of x\n"
5511 "X_TLOSS is a constant defined in I<E<lt>math.hE<gt>>\n"
5515 #: build/C/man3/matherr.3:216
5517 msgid "Function\tType\tResult\tMsg?\terrno\n"
5521 #: build/C/man3/matherr.3:217
5523 msgid "acos(|x|E<gt>1)\tDOMAIN\tHUGE\ty\tEDOM\n"
5527 #: build/C/man3/matherr.3:218
5529 msgid "asin(|x|E<gt>1)\tDOMAIN\tHUGE\ty\tEDOM\n"
5533 #: build/C/man3/matherr.3:219
5535 msgid "atan2(0,0)\tDOMAIN\tHUGE\ty\tEDOM\n"
5538 #. retval is 0.0/0.0
5540 #: build/C/man3/matherr.3:220
5542 msgid "acosh(xE<lt>1)\tDOMAIN\tNAN\ty\tEDOM\t\n"
5545 #. retval is 0.0/0.0
5547 #: build/C/man3/matherr.3:221
5549 msgid "atanh(|x|E<gt>1)\tDOMAIN\tNAN\ty\tEDOM\t\n"
5554 #: build/C/man3/matherr.3:222
5556 msgid "atanh(|x|==1)\tSING\t(xE<gt>0.0)?\ty\tEDOM\t\n"
5560 #: build/C/man3/matherr.3:223 build/C/man3/matherr.3:268
5562 msgid "\\ \t\\ \tHUGE_VAL :\n"
5566 #: build/C/man3/matherr.3:224 build/C/man3/matherr.3:269
5568 msgid "\\ \t\\ \t-HUGE_VAL\n"
5572 #: build/C/man3/matherr.3:225
5574 msgid "cosh(fin) o/f\tOVERFLOW\tHUGE\tn\tERANGE\n"
5578 #: build/C/man3/matherr.3:226
5580 msgid "sinh(fin) o/f\tOVERFLOW\t(xE<gt>0.0) ?\tn\tERANGE\n"
5584 #: build/C/man3/matherr.3:227
5586 msgid "\\ \t\\ \tHUGE : -HUGE\n"
5590 #: build/C/man3/matherr.3:228
5592 msgid "sqrt(xE<lt>0)\tDOMAIN\t0.0\ty\tEDOM\n"
5596 #: build/C/man3/matherr.3:229
5598 msgid "hypot(fin,fin) o/f\tOVERFLOW\tHUGE\tn\tERANGE\n"
5602 #: build/C/man3/matherr.3:230
5604 msgid "exp(fin) o/f\tOVERFLOW\tHUGE\tn\tERANGE\n"
5608 #: build/C/man3/matherr.3:231
5610 msgid "exp(fin) u/f\tUNDERFLOW\t0.0\tn\tERANGE\n"
5614 #: build/C/man3/matherr.3:232
5616 msgid "exp2(fin) o/f\tOVERFLOW\tHUGE\tn\tERANGE\n"
5620 #: build/C/man3/matherr.3:233
5622 msgid "exp2(fin) u/f\tUNDERFLOW\t0.0\tn\tERANGE\n"
5626 #: build/C/man3/matherr.3:234
5628 msgid "exp10(fin) o/f\tOVERFLOW\tHUGE\tn\tERANGE\n"
5632 #: build/C/man3/matherr.3:235
5634 msgid "exp10(fin) u/f\tUNDERFLOW\t0.0\tn\tERANGE\n"
5638 #: build/C/man3/matherr.3:236
5640 msgid "j0(|x|E<gt>X_TLOSS)\tTLOSS\t0.0\ty\tERANGE\n"
5644 #: build/C/man3/matherr.3:237
5646 msgid "j1(|x|E<gt>X_TLOSS)\tTLOSS\t0.0\ty\tERANGE\n"
5650 #: build/C/man3/matherr.3:238
5652 msgid "jn(|x|E<gt>X_TLOSS)\tTLOSS\t0.0\ty\tERANGE\n"
5656 #: build/C/man3/matherr.3:239
5658 msgid "y0(xE<gt>X_TLOSS)\tTLOSS\t0.0\ty\tERANGE\n"
5662 #: build/C/man3/matherr.3:240
5664 msgid "y1(xE<gt>X_TLOSS)\tTLOSS\t0.0\ty\tERANGE\n"
5668 #: build/C/man3/matherr.3:241
5670 msgid "yn(xE<gt>X_TLOSS)\tTLOSS\t0.0\ty\tERANGE\n"
5674 #: build/C/man3/matherr.3:242
5676 msgid "y0(0)\tDOMAIN\t-HUGE\ty\tEDOM\n"
5680 #: build/C/man3/matherr.3:243
5682 msgid "y0(xE<lt>0)\tDOMAIN\t-HUGE\ty\tEDOM\n"
5686 #: build/C/man3/matherr.3:244
5688 msgid "y1(0)\tDOMAIN\t-HUGE\ty\tEDOM\n"
5692 #: build/C/man3/matherr.3:245
5694 msgid "y1(xE<lt>0)\tDOMAIN\t-HUGE\ty\tEDOM\n"
5698 #: build/C/man3/matherr.3:246
5700 msgid "yn(n,0)\tDOMAIN\t-HUGE\ty\tEDOM\n"
5704 #: build/C/man3/matherr.3:247
5706 msgid "yn(xE<lt>0)\tDOMAIN\t-HUGE\ty\tEDOM\n"
5710 #: build/C/man3/matherr.3:248
5712 msgid "lgamma(fin) o/f\tOVERFLOW\tHUGE\tn\tERANGE\n"
5716 #: build/C/man3/matherr.3:249
5718 msgid "lgamma(-int) or\tSING\tHUGE\ty\tEDOM\n"
5722 #: build/C/man3/matherr.3:250
5724 msgid "\\ \\ lgamma(0)\n"
5728 #: build/C/man3/matherr.3:251
5730 msgid "tgamma(fin) o/f\tOVERFLOW\tHUGE_VAL\tn\tERANGE\n"
5734 #: build/C/man3/matherr.3:252
5736 msgid "tgamma(-int)\tSING\tNAN\ty\tEDOM\n"
5740 #: build/C/man3/matherr.3:253
5742 msgid "tgamma(0)\tSING\tcopysign(\ty\tERANGE\n"
5746 #: build/C/man3/matherr.3:254
5748 msgid "\\ \t\\ \tHUGE_VAL,x)\n"
5752 #: build/C/man3/matherr.3:255
5754 msgid "log(0)\tSING\t-HUGE\ty\tEDOM\n"
5758 #: build/C/man3/matherr.3:256
5760 msgid "log(xE<lt>0)\tDOMAIN\t-HUGE\ty\tEDOM\n"
5763 #. different from log()
5765 #: build/C/man3/matherr.3:257
5767 msgid "log2(0)\tSING\t-HUGE\tn\tEDOM\t\n"
5770 #. different from log()
5772 #: build/C/man3/matherr.3:258
5774 msgid "log2(xE<lt>0)\tDOMAIN\t-HUGE\tn\tEDOM\t\n"
5778 #: build/C/man3/matherr.3:259
5780 msgid "log10(0)\tSING\t-HUGE\ty\tEDOM\n"
5784 #: build/C/man3/matherr.3:260
5786 msgid "log10(xE<lt>0)\tDOMAIN\t-HUGE\ty\tEDOM\n"
5790 #: build/C/man3/matherr.3:261
5792 msgid "pow(0.0,0.0)\tDOMAIN\t0.0\ty\tEDOM\n"
5796 #: build/C/man3/matherr.3:262
5798 msgid "pow(x,y) o/f\tOVERFLOW\tHUGE\tn\tERANGE\n"
5802 #: build/C/man3/matherr.3:263
5804 msgid "pow(x,y) u/f\tUNDERFLOW\t0.0\tn\tERANGE\n"
5808 #: build/C/man3/matherr.3:264
5810 msgid "pow(NaN,0.0)\tDOMAIN\tx\tn\tEDOM\n"
5815 #: build/C/man3/matherr.3:265
5817 msgid "0**neg\tDOMAIN\t0.0\ty\tEDOM\t\n"
5821 #: build/C/man3/matherr.3:266
5823 msgid "neg**non-int\tDOMAIN\t0.0\ty\tEDOM\n"
5827 #: build/C/man3/matherr.3:267
5829 msgid "scalb() o/f\tOVERFLOW\t(xE<gt>0.0) ?\tn\tERANGE\n"
5833 #: build/C/man3/matherr.3:270
5835 msgid "scalb() u/f\tUNDERFLOW\tcopysign(\tn\tERANGE\n"
5839 #: build/C/man3/matherr.3:271
5841 msgid "\\ \t\\ \t\\ \\ 0.0,x)\n"
5845 #: build/C/man3/matherr.3:272
5847 msgid "fmod(x,0)\tDOMAIN\tx\ty\tEDOM\n"
5850 #. retval is 0.0/0.0
5852 #: build/C/man3/matherr.3:273
5854 msgid "remainder(x,0)\tDOMAIN\tNAN\ty\tEDOM\t\n"
5858 #: build/C/man3/matherr.3:296
5860 "The example program demonstrates the use of B<matherr>() when calling "
5861 "B<log>(3). The program takes up to three command-line arguments. The first "
5862 "argument is the floating-point number to be given to B<log>(3). If the "
5863 "optional second argument is provided, then B<_LIB_VERSION> is set to "
5864 "B<_SVID_> so that B<matherr>() is called, and the integer supplied in the "
5865 "command-line argument is used as the return value from B<matherr>(). If the "
5866 "optional third command-line argument is supplied, then it specifies an "
5867 "alternative return value that B<matherr>() should assign as the return "
5868 "value of the math function."
5872 #: build/C/man3/matherr.3:301
5874 "The following example run, where B<log>(3) is given an argument of 0.0, "
5875 "does not use B<matherr>():"
5879 #: build/C/man3/matherr.3:307
5882 "$B< ./a.out 0.0>\n"
5883 "errno: Numerical result out of range\n"
5888 #: build/C/man3/matherr.3:313
5889 msgid "In the following run, B<matherr>() is called, and returns 0:"
5893 #: build/C/man3/matherr.3:323
5896 "$B< ./a.out 0.0 0>\n"
5897 "matherr SING exception in log() function\n"
5898 " args: 0.000000, 0.000000\n"
5899 " retval: -340282346638528859811704183484516925440.000000\n"
5901 "errno: Numerical argument out of domain\n"
5902 "x=-340282346638528859811704183484516925440.000000\n"
5906 #: build/C/man3/matherr.3:327
5907 msgid "The message \"log: SING error\" was printed by the C library."
5911 #: build/C/man3/matherr.3:331
5912 msgid "In the following run, B<matherr>() is called, and returns a nonzero value:"
5916 #: build/C/man3/matherr.3:339
5919 "$B< ./a.out 0.0 1>\n"
5920 "matherr SING exception in log() function\n"
5921 " args: 0.000000, 0.000000\n"
5922 " retval: -340282346638528859811704183484516925440.000000\n"
5923 "x=-340282346638528859811704183484516925440.000000\n"
5927 #: build/C/man3/matherr.3:345
5929 "In this case, the C library did not print a message, and I<errno> was not "
5934 #: build/C/man3/matherr.3:350
5936 "In the following run, B<matherr>() is called, changes the return value of "
5937 "the math function, and returns a nonzero value:"
5941 #: build/C/man3/matherr.3:358
5944 "$B< ./a.out 0.0 1 12345.0>\n"
5945 "matherr SING exception in log() function\n"
5946 " args: 0.000000, 0.000000\n"
5947 " retval: -340282346638528859811704183484516925440.000000\n"
5952 #: build/C/man3/matherr.3:368
5955 "#define _SVID_SOURCE\n"
5956 "#include E<lt>errno.hE<gt>\n"
5957 "#include E<lt>math.hE<gt>\n"
5958 "#include E<lt>stdio.hE<gt>\n"
5959 "#include E<lt>stdlib.hE<gt>\n"
5963 #: build/C/man3/matherr.3:374
5966 "static int matherr_ret = 0; /* Value that matherr()\n"
5967 " should return */\n"
5968 "static int change_retval = 0; /* Should matherr() change\n"
5969 " function\\(aqs return value? */\n"
5970 "static double new_retval; /* New function return value */\n"
5974 #: build/C/man3/matherr.3:389
5978 "matherr(struct exception *exc)\n"
5980 " fprintf(stderr, \"matherr %s exception in %s() function\\en\",\n"
5981 " (exc-E<gt>type == DOMAIN) ? \"DOMAIN\" :\n"
5982 " (exc-E<gt>type == OVERFLOW) ? \"OVERFLOW\" :\n"
5983 " (exc-E<gt>type == UNDERFLOW) ? \"UNDERFLOW\" :\n"
5984 " (exc-E<gt>type == SING) ? \"SING\" :\n"
5985 " (exc-E<gt>type == TLOSS) ? \"TLOSS\" :\n"
5986 " (exc-E<gt>type == PLOSS) ? \"PLOSS\" : \"???\",\n"
5987 " exc-E<gt>name);\n"
5988 " fprintf(stderr, \" args: %f, %f\\en\",\n"
5989 " exc-E<gt>arg1, exc-E<gt>arg2);\n"
5990 " fprintf(stderr, \" retval: %f\\en\", exc-E<gt>retval);\n"
5994 #: build/C/man3/matherr.3:392
5997 " if (change_retval)\n"
5998 " exc-E<gt>retval = new_retval;\n"
6002 #: build/C/man3/matherr.3:395
6005 " return matherr_ret;\n"
6010 #: build/C/man3/matherr.3:400
6014 "main(int argc, char *argv[])\n"
6020 #: build/C/man3/matherr.3:406
6023 " if (argc E<lt> 2) {\n"
6024 " fprintf(stderr, \"Usage: %s E<lt>argvalE<gt>\"\n"
6025 " \" [E<lt>matherr-retE<gt> "
6026 "[E<lt>new-func-retvalE<gt>]]\\en\", argv[0]);\n"
6027 " exit(EXIT_FAILURE);\n"
6032 #: build/C/man3/matherr.3:411
6035 " if (argc E<gt> 2) {\n"
6036 " _LIB_VERSION = _SVID_;\n"
6037 " matherr_ret = atoi(argv[2]);\n"
6042 #: build/C/man3/matherr.3:416
6045 " if (argc E<gt> 3) {\n"
6046 " change_retval = 1;\n"
6047 " new_retval = atof(argv[3]);\n"
6052 #: build/C/man3/matherr.3:420
6055 " x = log(atof(argv[1]));\n"
6056 " if (errno != 0)\n"
6057 " perror(\"errno\");\n"
6061 #: build/C/man3/matherr.3:424
6064 " printf(\"x=%f\\en\", x);\n"
6065 " exit(EXIT_SUCCESS);\n"
6070 #: build/C/man3/matherr.3:429
6071 msgid "B<fenv>(3), B<math_error>(7), B<standards>(7)"
6075 #: build/C/man3/modf.3:33
6081 #: build/C/man3/modf.3:37
6083 "modf, modff, modfl - extract signed integral and fractional values from "
6084 "floating-point number"
6088 #: build/C/man3/modf.3:42
6090 msgid "B<double modf(double >I<x>B<, double *>I<iptr>B<);>\n"
6094 #: build/C/man3/modf.3:44
6096 msgid "B<float modff(float >I<x>B<, float *>I<iptr>B<);>\n"
6100 #: build/C/man3/modf.3:46
6102 msgid "B<long double modfl(long double >I<x>B<, long double *>I<iptr>B<);>\n"
6106 #: build/C/man3/modf.3:58
6107 msgid "B<modf>(), B<modfl>():"
6111 #: build/C/man3/modf.3:72
6113 "The B<modf>() function breaks the argument I<x> into an integral part and a "
6114 "fractional part, each of which has the same sign as I<x>. The integral part "
6115 "is stored in the location pointed to by I<iptr>."
6119 #: build/C/man3/modf.3:76
6120 msgid "The B<modf>() function returns the fractional part of I<x>."
6124 #: build/C/man3/modf.3:82
6125 msgid "If I<x> is a NaN, a NaN is returned, and I<*iptr> is set to a NaN."
6129 #: build/C/man3/modf.3:88
6131 "If I<x> is positive infinity (negative infinity), +0 (-0) is returned, and "
6132 "I<*iptr> is set to positive infinity (negative infinity)."
6136 #: build/C/man3/modf.3:99
6137 msgid "B<frexp>(3), B<ldexp>(3)"
6141 #: build/C/man3/nan.3:11
6147 #: build/C/man3/nan.3:14
6148 msgid "nan, nanf, nanl - return 'Not a Number'"
6152 #: build/C/man3/nan.3:18
6153 msgid "B<double nan(const char *>I<tagp>B<);>"
6157 #: build/C/man3/nan.3:20
6158 msgid "B<float nanf(const char *>I<tagp>B<);>"
6162 #: build/C/man3/nan.3:22
6163 msgid "B<long double nanl(const char *>I<tagp>B<);>"
6167 #: build/C/man3/nan.3:34
6168 msgid "B<nan>(), B<nanf>(), B<nanl>():"
6172 #: build/C/man3/nan.3:48
6174 "These functions return a representation (determined by I<tagp>) of a quiet "
6175 "NaN. If the implementation does not support quiet NaNs, these functions "
6180 #: build/C/man3/nan.3:52
6181 msgid "The call I<nan(\"char-sequence\")> is equivalent to:"
6185 #: build/C/man3/nan.3:55
6187 msgid " strtod(\"NAN(char-sequence)\", NULL);\n"
6191 #: build/C/man3/nan.3:65
6193 "Similarly, calls to B<nanf>() and B<nanl>() are equivalent to analogous "
6194 "calls to B<strtof>(3) and B<strtold>(3)."
6198 #: build/C/man3/nan.3:73
6200 "The argument I<tagp> is used in an unspecified manner. On IEEE 754 systems, "
6201 "there are many representations of NaN, and I<tagp> selects one. On other "
6202 "systems it may do nothing."
6206 #: build/C/man3/nan.3:79
6208 "C99, POSIX.1-2001. See also IEC 559 and the appendix with recommended "
6209 "functions in IEEE 754/IEEE 854."
6213 #: build/C/man3/nan.3:83
6214 msgid "B<isnan>(3), B<strtod>(3), B<math_error>(7)"
6218 #: build/C/man3/nextafter.3:11
6224 #: build/C/man3/nextafter.3:15
6226 "nextafter, nextafterf, nextafterl, nexttoward, nexttowardf, nexttowardl - "
6227 "floating-point number manipulation"
6231 #: build/C/man3/nextafter.3:19
6232 msgid "B<double nextafter(double >I<x>B<, double >I<y>B<);>"
6236 #: build/C/man3/nextafter.3:21
6237 msgid "B<float nextafterf(float >I<x>B<, float >I<y>B<);>"
6241 #: build/C/man3/nextafter.3:23
6242 msgid "B<long double nextafterl(long double >I<x>B<, long double >I<y>B<);>"
6246 #: build/C/man3/nextafter.3:25
6247 msgid "B<double nexttoward(double >I<x>B<, long double >I<y>B<);>"
6251 #: build/C/man3/nextafter.3:27
6252 msgid "B<float nexttowardf(float >I<x>B<, long double >I<y>B<);>"
6256 #: build/C/man3/nextafter.3:29
6257 msgid "B<long double nexttowardl(long double >I<x>B<, long double >I<y>B<);>"
6261 #: build/C/man3/nextafter.3:39
6262 msgid "B<nextafter>():"
6266 #: build/C/man3/nextafter.3:51
6267 msgid "B<nextafterf>(), B<nextafterl>():"
6271 #: build/C/man3/nextafter.3:62
6272 msgid "B<nexttoward>(), B<nexttowardf>(), B<nexttowardl>():"
6276 #: build/C/man3/nextafter.3:83
6278 "The B<nextafter>() functions return the next representable floating-point "
6279 "value following I<x> in the direction of I<y>. If I<y> is less than I<x>, "
6280 "these functions will return the largest representable number less than I<x>."
6284 #: build/C/man3/nextafter.3:85
6285 msgid "If I<x> equals I<y>, the functions return I<y>."
6289 #: build/C/man3/nextafter.3:93
6291 "The B<nexttoward>() functions do the same as the B<nextafter>() functions, "
6292 "except that they have a I<long double> second argument."
6296 #: build/C/man3/nextafter.3:99
6298 "On success, these functions return the next representable floating-point "
6299 "value after I<x> in the direction of I<y>."
6303 #: build/C/man3/nextafter.3:109
6304 msgid "If I<x> equals I<y>, then I<y> (cast to the same type as I<x>) is returned."
6309 #: build/C/man3/nextafter.3:129
6311 "If I<x> is finite, and the result would overflow, a range error occurs, and "
6312 "the functions return B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, "
6313 "respectively, with the correct mathematical sign."
6317 #: build/C/man3/nextafter.3:138
6319 "If I<x> is not equal to I<y>, and the correct function result would be "
6320 "subnormal, zero, or underflow, a range error occurs, and either the correct "
6321 "value (if it can be represented), or 0.0, is returned."
6325 #: build/C/man3/nextafter.3:154
6327 msgid "Range error: result is subnormal or underflows"
6331 #: build/C/man3/nextafter.3:177
6333 "In glibc version 2.5 and earlier, these functions do not raise an underflow "
6334 "floating-point (B<FE_UNDERFLOW>) exception when an underflow occurs."
6338 #: build/C/man3/nextafter.3:179
6339 msgid "B<nearbyint>(3)"
6343 #: build/C/man3/pow.3:35
6349 #: build/C/man3/pow.3:38
6350 msgid "pow, powf, powl - power functions"
6354 #: build/C/man3/pow.3:43
6356 msgid "B<double pow(double >I<x>B<, double >I<y>B<);>\n"
6360 #: build/C/man3/pow.3:45
6362 msgid "B<float powf(float >I<x>B<, float >I<y>B<);>\n"
6366 #: build/C/man3/pow.3:47
6368 msgid "B<long double powl(long double >I<x>B<, long double >I<y>B<);>\n"
6372 #: build/C/man3/pow.3:59
6373 msgid "B<powf>(), B<powl>():"
6377 #: build/C/man3/pow.3:72
6379 "The B<pow>() function returns the value of I<x> raised to the power of "
6384 #: build/C/man3/pow.3:77
6385 msgid "On success, these functions return the value of I<x> to the power of I<y>."
6388 #. The domain error is generated at least as far back as glibc 2.4
6390 #: build/C/man3/pow.3:85
6392 "If I<x> is a finite value less than 0, and I<y> is a finite noninteger, a "
6393 "domain error occurs, and a NaN is returned."
6396 #. The range error is generated at least as far back as glibc 2.4
6398 #: build/C/man3/pow.3:95
6400 "If the result overflows, a range error occurs, and the functions return "
6401 "B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, respectively, with the "
6402 "mathematically correct sign."
6405 #. POSIX.1 does not specify the sign of the zero,
6406 #. but http://sources.redhat.com/bugzilla/show_bug.cgi?id=2678
6407 #. points out that the zero has the wrong sign in some cases.
6409 #: build/C/man3/pow.3:102
6411 "If result underflows, and is not representable, a range error occurs, and "
6416 #: build/C/man3/pow.3:108
6417 msgid "Except as specified below, if I<x> or I<y> is a NaN, the result is a NaN."
6421 #: build/C/man3/pow.3:114
6422 msgid "If I<x> is +1, the result is 1.0 (even if I<y> is a NaN)."
6426 #: build/C/man3/pow.3:120
6427 msgid "If I<y> is 0, the result is 1.0 (even if I<x> is a NaN)."
6431 #: build/C/man3/pow.3:128
6433 "If I<x> is +0 (-0), and I<y> is an odd integer greater than 0, the result is "
6438 #: build/C/man3/pow.3:136
6440 "If I<x> is 0, and I<y> greater than 0 and not an odd integer, the result is "
6445 #: build/C/man3/pow.3:144
6447 "If I<x> is -1, and I<y> is positive infinity or negative infinity, the "
6452 #: build/C/man3/pow.3:152
6454 "If the absolute value of I<x> is less than 1, and I<y> is negative infinity, "
6455 "the result is positive infinity."
6459 #: build/C/man3/pow.3:160
6461 "If the absolute value of I<x> is greater than 1, and I<y> is negative "
6462 "infinity, the result is +0."
6466 #: build/C/man3/pow.3:168
6468 "If the absolute value of I<x> is less than 1, and I<y> is positive infinity, "
6473 #: build/C/man3/pow.3:176
6475 "If the absolute value of I<x> is greater than 1, and I<y> is positive "
6476 "infinity, the result is positive infinity."
6480 #: build/C/man3/pow.3:184
6482 "If I<x> is negative infinity, and I<y> is an odd integer less than 0, the "
6487 #: build/C/man3/pow.3:192
6489 "If I<x> is negative infinity, and I<y> less than 0 and not an odd integer, "
6494 #: build/C/man3/pow.3:200
6496 "If I<x> is negative infinity, and I<y> is an odd integer greater than 0, the "
6497 "result is negative infinity."
6501 #: build/C/man3/pow.3:208
6503 "If I<x> is negative infinity, and I<y> greater than 0 and not an odd "
6504 "integer, the result is positive infinity."
6508 #: build/C/man3/pow.3:216
6509 msgid "If I<x> is positive infinity, and I<y> less than 0, the result is +0."
6513 #: build/C/man3/pow.3:224
6515 "If I<x> is positive infinity, and I<y> greater than 0, the result is "
6516 "positive infinity."
6520 #: build/C/man3/pow.3:239
6522 "If I<x> is +0 or -0, and I<y> is an odd integer less than 0, a pole error "
6523 "occurs and B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, is returned, with the "
6524 "same sign as I<x>."
6527 #. The pole error is generated at least as far back as glibc 2.4
6529 #: build/C/man3/pow.3:253
6531 "If I<x> is +0 or -0, and I<y> is less than 0 and not an odd integer, a pole "
6532 "error occurs and +B<HUGE_VAL>, +B<HUGE_VALF>, or +B<HUGE_VALL>, is returned."
6536 #: build/C/man3/pow.3:280
6538 msgid "Domain error: I<x> is negative, and I<y> is a finite noninteger"
6542 #: build/C/man3/pow.3:288
6544 msgid "Pole error: I<x> is zero, and I<y> is negative"
6548 #: build/C/man3/pow.3:297
6550 msgid "Range error: the result overflows"
6554 #: build/C/man3/pow.3:305
6556 msgid "Range error: the result underflows"
6560 #. http://sources.redhat.com/bugzilla/show_bug.cgi?id=6776
6561 #. or possibly 2.9, I haven't found the source code change
6562 #. and I don't have a 2.9 system to test
6564 #: build/C/man3/pow.3:333
6566 "In glibc 2.9 and earlier, when a pole error occurs, I<errno> is set to "
6567 "B<EDOM> instead of the POSIX-mandated B<ERANGE>. Since version 2.10, glibc "
6568 "does the right thing."
6571 #. see bug http://sources.redhat.com/bugzilla/show_bug.cgi?id=3866
6572 #. and http://sources.redhat.com/bugzilla/show_bug.cgi?id=369
6574 #: build/C/man3/pow.3:353
6576 "If I<x> is negative, then large negative or positive I<y> values yield a NaN "
6577 "as the function result, with I<errno> set to B<EDOM>, and an invalid "
6578 "(B<FE_INVALID>) floating-point exception. For example, with B<pow>(), one "
6579 "sees this behavior when the absolute value of I<y> is greater than about "
6583 #. FIXME . Actually, 2.3.2 is the earliest test result I have; so yet
6584 #. to confirm if this error occurs only in 2.3.2.
6586 #: build/C/man3/pow.3:362
6588 "In version 2.3.2 and earlier, when an overflow or underflow error occurs, "
6589 "glibc's B<pow>() generates a bogus invalid floating-point exception "
6590 "(B<FE_INVALID>) in addition to the overflow or underflow exception."
6594 #: build/C/man3/pow.3:366
6595 msgid "B<cbrt>(3), B<cpow>(3), B<sqrt>(3)"
6599 #: build/C/man3/pow10.3:25
6605 #: build/C/man3/pow10.3:28
6606 msgid "pow10, pow10f, pow10l - base-10 power functions"
6610 #: build/C/man3/pow10.3:32 build/C/man3/sincos.3:16
6613 "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
6614 "B<#include E<lt>math.hE<gt>>\n"
6618 #: build/C/man3/pow10.3:34
6620 msgid "B<double pow10(double >I<x>B<);>\n"
6624 #: build/C/man3/pow10.3:36
6626 msgid "B<float pow10f(float >I<x>B<);>\n"
6630 #: build/C/man3/pow10.3:38
6632 msgid "B<long double pow10l(long double >I<x>B<);>\n"
6636 #: build/C/man3/pow10.3:46
6637 msgid "The B<pow10>() function returns the value of 10 raised to the power I<x>."
6641 #: build/C/man3/pow10.3:50
6642 msgid "This is a GNU extension."
6646 #: build/C/man3/pow10.3:53
6647 msgid "These functions are identical to the functions listed under B<exp10>(3)."
6651 #: build/C/man3/pow10.3:56
6652 msgid "B<exp10>(3), B<pow>(3)"
6656 #: build/C/man3/remainder.3:37
6662 #: build/C/man3/remainder.3:41
6664 "drem, dremf, dreml, remainder, remainderf, remainderl - floating-point "
6665 "remainder function"
6669 #: build/C/man3/remainder.3:49
6672 "/* The C99 versions */\n"
6673 "B<double remainder(double >I<x>B<, double >I<y>B<);>\n"
6674 "B<float remainderf(float >I<x>B<, float >I<y>B<);>\n"
6675 "B<long double remainderl(long double >I<x>B<, long double >I<y>B<);>\n"
6679 #: build/C/man3/remainder.3:54
6682 "/* Obsolete synonyms */\n"
6683 "B<double drem(double >I<x>B<, double >I<y>B<);>\n"
6684 "B<float dremf(float >I<x>B<, float >I<y>B<);>\n"
6685 "B<long double dreml(long double >I<x>B<, long double >I<y>B<);>\n"
6689 #: build/C/man3/remainder.3:65
6690 msgid "B<remainder>():"
6694 #: build/C/man3/remainder.3:70
6696 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || "
6697 "_XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED || _ISOC99_SOURCE || "
6698 "_POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
6702 #: build/C/man3/remainder.3:77
6703 msgid "B<remainderf>(), B<remainderl>():"
6707 #: build/C/man3/remainder.3:88
6708 msgid "B<drem>(), B<dremf>(), B<dreml>():"
6712 #: build/C/man3/remainder.3:90 build/C/man3/significand.3:35
6713 msgid "_SVID_SOURCE || _BSD_SOURCE"
6717 #: build/C/man3/remainder.3:111
6719 "The B<remainder>() function computes the remainder of dividing I<x> by "
6720 "I<y>. The return value is I<x>-I<n>*I<y>, where I<n> is the value I<x\\ /\\ "
6721 "y>, rounded to the nearest integer. If the absolute value of I<x>-I<n>*I<y> "
6722 "is 0.5, I<n> is chosen to be even."
6726 #: build/C/man3/remainder.3:114
6728 "These functions are unaffected by the current rounding mode (see "
6733 #: build/C/man3/remainder.3:118
6734 msgid "The B<drem>() function does precisely the same thing."
6738 #: build/C/man3/remainder.3:124
6740 "On success, these functions return the floating-point remainder, "
6741 "I<x>-I<n>*I<y>. If the return value is 0, it has the sign of I<x>."
6745 #: build/C/man3/remainder.3:139 build/C/man3/remquo.3:92
6747 "If I<x> is an infinity, and I<y> is not a NaN, a domain error occurs, and a "
6752 #: build/C/man3/remainder.3:150 build/C/man3/remquo.3:101
6754 "If I<y> is zero, and I<x> is not a NaN, a domain error occurs, and a NaN is "
6759 #: build/C/man3/remainder.3:157
6761 msgid "Domain error: I<x> is an infinity and I<y> is not a NaN"
6766 #: build/C/man3/remainder.3:188
6768 "The functions B<remainder>(), B<remainderf>(), and B<remainderl>() are "
6769 "specified in C99 and POSIX.1-2001."
6773 #: build/C/man3/remainder.3:204
6775 "The function B<drem>() is from 4.3BSD. The I<float> and I<long double> "
6776 "variants B<dremf>() and B<dreml>() exist on some systems, such as Tru64 "
6777 "and glibc2. Avoid the use of these functions in favor of B<remainder>() "
6782 #: build/C/man3/remainder.3:206
6787 #: build/C/man3/remainder.3:208
6789 msgid " remainder(nan(\"\"), 0);\n"
6792 #. FIXME . this bug occurs as at glibc 2.8.
6793 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6779
6795 #: build/C/man3/remainder.3:213
6797 "returns a NaN, as expected, but wrongly causes a domain error; it should "
6798 "yield a silent NaN."
6802 #: build/C/man3/remainder.3:215
6803 msgid "The call \"remainder(29.0, 3.0)\" returns -1."
6807 #: build/C/man3/remainder.3:219
6808 msgid "B<div>(3), B<fmod>(3), B<remquo>(3)"
6812 #: build/C/man3/remquo.3:12
6818 #: build/C/man3/remquo.3:15
6819 msgid "remquo, remquof, remquol - remainder and part of quotient"
6823 #: build/C/man3/remquo.3:20
6825 msgid "B<double remquo(double >I<x>B<, double >I<y>B<, int *>I<quo>B<);>\n"
6829 #: build/C/man3/remquo.3:22
6831 msgid "B<float remquof(float >I<x>B<, float >I<y>B<, int *>I<quo>B<);>\n"
6835 #: build/C/man3/remquo.3:24
6838 "B<long double remquol(long double >I<x>B<, long double >I<y>B<, int "
6843 #: build/C/man3/remquo.3:37
6844 msgid "B<remquo>(), B<remquof>(), B<remquol>():"
6848 #: build/C/man3/remquo.3:55
6850 "These functions compute the remainder and part of the quotient upon division "
6851 "of I<x> by I<y>. A few bits of the quotient are stored via the I<quo> "
6852 "pointer. The remainder is returned as the function result."
6856 #: build/C/man3/remquo.3:59
6858 "The value of the remainder is the same as that computed by the "
6859 "B<remainder>(3) function."
6863 #: build/C/man3/remquo.3:65
6865 "The value stored via the I<quo> pointer has the sign of I<x\\ /\\ y> and "
6866 "agrees with the quotient in at least the low order 3 bits."
6869 #. A possible application of this function might be the computation
6870 #. of sin(x). Compute remquo(x, pi/2, &quo) or so.
6872 #. glibc, UnixWare: return 3 bits
6873 #. MacOS 10: return 7 bits
6875 #: build/C/man3/remquo.3:73
6877 "For example, I<remquo(29.0,\\ 3.0)> returns -1.0 and might store 2. Note "
6878 "that the actual quotient might not fit in an integer."
6882 #: build/C/man3/remquo.3:77
6884 "On success, these functions return the same value as the analogous functions "
6885 "described in B<remainder>(3)."
6889 #: build/C/man3/remquo.3:108
6892 "Domain error: I<x> is an infinity or I<y> is 0, and the other argument is "
6897 #: build/C/man3/remquo.3:130
6898 msgid "B<fmod>(3), B<logb>(3), B<remainder>(3)"
6902 #: build/C/man3/rint.3:27
6908 #: build/C/man3/rint.3:31
6910 "nearbyint, nearbyintf, nearbyintl, rint, rintf, rintl - round to nearest "
6915 #: build/C/man3/rint.3:36
6917 msgid "B<double nearbyint(double >I<x>B<);>\n"
6921 #: build/C/man3/rint.3:38
6923 msgid "B<float nearbyintf(float >I<x>B<);>\n"
6927 #: build/C/man3/rint.3:40
6929 msgid "B<long double nearbyintl(long double >I<x>B<);>\n"
6933 #: build/C/man3/rint.3:42
6935 msgid "B<double rint(double >I<x>B<);>\n"
6939 #: build/C/man3/rint.3:44
6941 msgid "B<float rintf(float >I<x>B<);>\n"
6945 #: build/C/man3/rint.3:46
6947 msgid "B<long double rintl(long double >I<x>B<);>\n"
6951 #: build/C/man3/rint.3:59
6952 msgid "B<nearbyint>(), B<nearbyintf>(), B<nearbyintl>():"
6956 #: build/C/man3/rint.3:61
6958 "_XOPEN_SOURCE\\ E<gt>=\\ 600 || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L || "
6963 #: build/C/man3/rint.3:67
6968 #: build/C/man3/rint.3:78
6969 msgid "B<rintf>(), B<rintl>():"
6973 #: build/C/man3/rint.3:95
6975 "The B<nearbyint>() functions round their argument to an integer value in "
6976 "floating-point format, using the current rounding direction (see "
6977 "B<fesetround>(3)) and without raising the I<inexact> exception."
6981 #: build/C/man3/rint.3:105
6983 "The B<rint>() functions do the same, but will raise the I<inexact> "
6984 "exception (B<FE_INEXACT>, checkable via B<fetestexcept>(3)) when the result "
6985 "differs in value from the argument."
6989 #: build/C/man3/rint.3:135
6991 "If you want to store the rounded value in an integer type, you probably want "
6992 "to use one of the functions described in B<lrint>(3) instead."
6996 #: build/C/man3/rint.3:141
6997 msgid "B<ceil>(3), B<floor>(3), B<lrint>(3), B<round>(3), B<trunc>(3)"
7001 #: build/C/man3/round.3:27
7007 #: build/C/man3/round.3:30
7008 msgid "round, roundf, roundl - round to nearest integer, away from zero"
7012 #: build/C/man3/round.3:35
7014 msgid "B<double round(double >I<x>B<);>\n"
7018 #: build/C/man3/round.3:37
7020 msgid "B<float roundf(float >I<x>B<);>\n"
7024 #: build/C/man3/round.3:39
7026 msgid "B<long double roundl(long double >I<x>B<);>\n"
7030 #: build/C/man3/round.3:52
7031 msgid "B<round>(), B<roundf>(), B<roundl>():"
7035 #: build/C/man3/round.3:67
7037 "These functions round I<x> to the nearest integer, but round halfway cases "
7038 "away from zero (regardless of the current rounding direction, see "
7039 "B<fenv>(3)), instead of to the nearest even integer like B<rint>(3)."
7043 #: build/C/man3/round.3:73
7044 msgid "For example, I<round(0.5)> is 1.0, and I<round(-0.5)> is -1.0."
7047 #. The POSIX.1-2001 APPLICATION USAGE SECTION discusses this point.
7049 #: build/C/man3/round.3:101
7051 "POSIX.1-2001 contains text about overflow (which might set I<errno> to "
7052 "B<ERANGE>, or raise an B<FE_OVERFLOW> exception). In practice, the result "
7053 "cannot overflow on any current machine, so this error-handling stuff is just "
7054 "nonsense. (More precisely, overflow can happen only when the maximum value "
7055 "of the exponent is smaller than the number of mantissa bits. For the "
7056 "IEEE-754 standard 32-bit and 64-bit floating-point numbers the maximum value "
7057 "of the exponent is 128 (respectively, 1024), and the number of mantissa bits "
7058 "is 24 (respectively, 53).)"
7062 #: build/C/man3/round.3:106
7064 "If you want to store the rounded value in an integer type, you probably want "
7065 "to use one of the functions described in B<lround>(3) instead."
7069 #: build/C/man3/round.3:113
7071 "B<ceil>(3), B<floor>(3), B<lround>(3), B<nearbyint>(3), B<rint>(3), "
7076 #: build/C/man3/scalb.3:27
7082 #: build/C/man3/scalb.3:27
7088 #: build/C/man3/scalb.3:31
7090 "scalb, scalbf, scalbl - multiply floating-point number by integral power of "
7095 #: build/C/man3/scalb.3:35
7096 msgid "B<double scalb(double >I<x>B<, double >I<exp>B<);>"
7100 #: build/C/man3/scalb.3:37
7101 msgid "B<float scalbf(float >I<x>B<, float >I<exp>B<);>"
7105 #: build/C/man3/scalb.3:39
7106 msgid "B<long double scalbl(long double >I<x>B<, long double >I<exp>B<);>"
7110 #: build/C/man3/scalb.3:49
7115 #: build/C/man3/scalb.3:52
7117 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || "
7118 "_XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
7122 #: build/C/man3/scalb.3:56
7123 msgid "B<scalbf>(), B<scalbl>():"
7127 #: build/C/man3/scalb.3:69 build/C/man3/scalbln.3:85
7129 "These functions multiply their first argument I<x> by B<FLT_RADIX> (probably "
7130 "2) to the power of I<exp>, that is:"
7134 #: build/C/man3/scalb.3:72 build/C/man3/scalbln.3:88
7136 msgid " x * FLT_RADIX ** exp\n"
7139 #. not in /usr/include but in a gcc lib
7141 #: build/C/man3/scalb.3:79 build/C/man3/scalbln.3:95
7143 "The definition of B<FLT_RADIX> can be obtained by including "
7144 "I<E<lt>float.hE<gt>>."
7148 #: build/C/man3/scalb.3:81 build/C/man3/scalbln.3:97
7149 msgid "On success, these functions return I<x> * B<FLT_RADIX> ** I<exp>."
7153 #: build/C/man3/scalb.3:87
7154 msgid "If I<x> or I<exp> is a NaN, a NaN is returned."
7158 #: build/C/man3/scalb.3:95
7160 "If I<x> is positive infinity (negative infinity), and I<exp> is not negative "
7161 "infinity, positive infinity (negative infinity) is returned."
7165 #: build/C/man3/scalb.3:101
7167 "If I<x> is +0 (-0), and I<exp> is not positive infinity, +0 (-0) is "
7172 #: build/C/man3/scalb.3:109
7174 "If I<x> is zero, and I<exp> is positive infinity, a domain error occurs, and "
7175 "a NaN is returned."
7179 #: build/C/man3/scalb.3:118
7181 "If I<x> is an infinity, and I<exp> is negative infinity, a domain error "
7182 "occurs, and a NaN is returned."
7186 #: build/C/man3/scalb.3:133 build/C/man3/scalbln.3:125
7188 "If the result underflows, a range error occurs, and the functions return "
7189 "zero, with a sign the same as I<x>."
7193 #: build/C/man3/scalb.3:140
7196 "Domain error: I<x> is 0, and I<exp> is positive infinity, or I<x> is "
7197 "positive infinity and I<exp> is negative infinity and the other argument is "
7202 #: build/C/man3/scalb.3:186
7204 "B<scalb>() is specified in POSIX.1-2001, but marked obsolescent. "
7205 "POSIX.1-2008 removes the specification of B<scalb>(), recommending the use "
7206 "of B<scalbln>(3), B<scalblnf>(3), or B<scalblnl>(3) instead. The "
7207 "B<scalb>() function is from 4.3BSD."
7210 #. Looking at header files: scalbf() is present on the
7211 #. BSDs, Tru64, HP-UX 11, Irix 6.5; scalbl() is on HP-UX 11 and Tru64.
7213 #: build/C/man3/scalb.3:195
7215 "B<scalbf>() and B<scalbl>() are unstandardized; B<scalbf>() is "
7216 "nevertheless present on several other systems"
7220 #: build/C/man3/scalb.3:198
7221 msgid "B<ldexp>(3), B<scalbln>(3)"
7225 #: build/C/man3/scalbln.3:27
7231 #: build/C/man3/scalbln.3:31
7233 "scalbn, scalbnf, scalbnl, scalbln, scalblnf, scalblnl - multiply "
7234 "floating-point number by integral power of radix"
7238 #: build/C/man3/scalbln.3:35
7239 msgid "B<double scalbln(double >I<x>B<, long int >I<exp>B<);>"
7243 #: build/C/man3/scalbln.3:37
7244 msgid "B<float scalblnf(float >I<x>B<, long int >I<exp>B<);>"
7248 #: build/C/man3/scalbln.3:39
7249 msgid "B<long double scalblnl(long double >I<x>B<, long int >I<exp>B<);>"
7253 #: build/C/man3/scalbln.3:41
7254 msgid "B<double scalbn(double >I<x>B<, int >I<exp>B<);>"
7258 #: build/C/man3/scalbln.3:43
7259 msgid "B<float scalbnf(float >I<x>B<, int >I<exp>B<);>"
7263 #: build/C/man3/scalbln.3:45
7264 msgid "B<long double scalbnl(long double >I<x>B<, int >I<exp>B<);>"
7268 #: build/C/man3/scalbln.3:57
7269 msgid "B<scalbln>(), B<scalblnf>(), B<scalblnl>():"
7273 #: build/C/man3/scalbln.3:68
7274 msgid "B<scalbn>(), B<scalbnf>(), B<scalbnl>():"
7278 #: build/C/man3/scalbln.3:166
7280 "These functions differ from the obsolete functions described in B<scalb>(3) "
7281 "in the type of their second argument. The functions described on this page "
7282 "have a second argument of an integral type, while those in B<scalb>(3) have "
7283 "a second argument of type I<double>."
7287 #: build/C/man3/scalbln.3:173
7289 "If B<FLT_RADIX> equals 2 (which is usual), then B<scalbn>() is equivalent "
7294 #: build/C/man3/scalbln.3:176
7295 msgid "B<ldexp>(3), B<scalb>(3)"
7299 #: build/C/man3/signbit.3:11
7305 #: build/C/man3/signbit.3:14
7306 msgid "signbit - test sign of a real floating-point number"
7310 #: build/C/man3/signbit.3:18
7311 msgid "B<int signbit(>I<x>B<);>"
7315 #: build/C/man3/signbit.3:28
7316 msgid "B<signbit>():"
7320 #: build/C/man3/signbit.3:42
7322 "B<signbit>() is a generic macro which can work on all real floating-point "
7323 "types. It returns a nonzero value if the value of I<x> has its sign bit "
7328 #: build/C/man3/signbit.3:51
7330 "This is not the same as I<x E<lt> 0.0>, because IEEE 754 floating point "
7331 "allows zero to be signed. The comparison I<-0.0 E<lt> 0.0> is false, but "
7332 "I<signbit(-0.0)> will return a nonzero value."
7336 #: build/C/man3/signbit.3:53
7337 msgid "NaNs and infinities have a sign bit."
7341 #: build/C/man3/signbit.3:59
7343 "The B<signbit>() macro returns nonzero if the sign of I<x> is negative; "
7344 "otherwise it returns zero."
7348 #: build/C/man3/signbit.3:67
7349 msgid "B<copysign>(3)"
7353 #: build/C/man3/significand.3:9
7359 #: build/C/man3/significand.3:9
7365 #: build/C/man3/significand.3:13
7367 "significand, significandf, significandl - get mantissa of floating-point "
7372 #: build/C/man3/significand.3:17
7373 msgid "B<double significand(double >I<x>B<);>"
7377 #: build/C/man3/significand.3:19
7378 msgid "B<float significandf(float >I<x>B<);>"
7382 #: build/C/man3/significand.3:21
7383 msgid "B<long double significandl(long double >I<x>B<);>"
7387 #: build/C/man3/significand.3:33
7388 msgid "B<significand>(), B<significandf>(), B<significandl>():"
7392 #: build/C/man3/significand.3:44
7394 "The B<significand>() function returns the mantissa of I<x> scaled to the "
7395 "range [1,2). It is equivalent to"
7399 #: build/C/man3/significand.3:47
7400 msgid "scalb(x, (double) -ilogb(x))"
7404 #: build/C/man3/significand.3:51
7406 "This function exists mainly for use in certain standardized tests for IEEE "
7411 #. This function came from BSD.
7413 #: build/C/man3/significand.3:57
7415 "These functions are nonstandard; the I<double> version is available on a "
7416 "number of other systems."
7420 #: build/C/man3/significand.3:60
7421 msgid "B<ilogb>(3), B<scalb>(3)"
7425 #: build/C/man3/sin.3:35
7431 #: build/C/man3/sin.3:38
7432 msgid "sin, sinf, sinl - sine function"
7436 #: build/C/man3/sin.3:43
7438 msgid "B<double sin(double >I<x>B<);>\n"
7442 #: build/C/man3/sin.3:45
7444 msgid "B<float sinf(float >I<x>B<);>\n"
7448 #: build/C/man3/sin.3:47
7450 msgid "B<long double sinl(long double >I<x>B<);>\n"
7454 #: build/C/man3/sin.3:59
7455 msgid "B<sinf>(), B<sinl>():"
7459 #: build/C/man3/sin.3:72
7461 "The B<sin>() function returns the sine of I<x>, where I<x> is given in "
7466 #: build/C/man3/sin.3:75
7467 msgid "On success, these functions return the sine of I<x>."
7471 #: build/C/man3/sin.3:126
7473 "B<acos>(3), B<asin>(3), B<atan>(3), B<atan2>(3), B<cos>(3), B<csin>(3), "
7474 "B<sincos>(3), B<tan>(3)"
7478 #: build/C/man3/sincos.3:9
7484 #: build/C/man3/sincos.3:12
7485 msgid "sincos, sincosf, sincosl - calculate sin and cos simultaneously"
7489 #: build/C/man3/sincos.3:18
7491 msgid "B<void sincos(double >I<x>B<, double *>I<sin>B<, double *>I<cos>B<);>\n"
7495 #: build/C/man3/sincos.3:20
7497 msgid "B<void sincosf(float >I<x>B<, float *>I<sin>B<, float *>I<cos>B<);>\n"
7501 #: build/C/man3/sincos.3:22
7504 "B<void sincosl(long double >I<x>B<, long double *>I<sin>B<, long double "
7509 #: build/C/man3/sincos.3:32
7511 "Several applications need sine and cosine of the same angle I<x>. This "
7512 "function computes both at the same time, and stores the results in I<*sin> "
7517 #: build/C/man3/sincos.3:40
7518 msgid "If I<x> is a NaN, a NaN is returned in I<*sin> and I<*cos>."
7522 #: build/C/man3/sincos.3:49
7524 "If I<x> is positive infinity or negative infinity, a domain error occurs, "
7525 "and a NaN is returned in I<*sin> and I<*cos>."
7529 #: build/C/man3/sincos.3:52
7530 msgid "These functions return I<void>."
7534 #: build/C/man3/sincos.3:77
7535 msgid "This function is a GNU extension."
7539 #: build/C/man3/sincos.3:81
7540 msgid "B<cos>(3), B<sin>(3), B<tan>(3)"
7544 #: build/C/man3/sinh.3:36
7550 #: build/C/man3/sinh.3:39
7551 msgid "sinh, sinhf, sinhl - hyperbolic sine function"
7555 #: build/C/man3/sinh.3:44
7557 msgid "B<double sinh(double >I<x>B<);>\n"
7561 #: build/C/man3/sinh.3:46
7563 msgid "B<float sinhf(float >I<x>B<);>\n"
7567 #: build/C/man3/sinh.3:48
7569 msgid "B<long double sinhl(long double >I<x>B<);>\n"
7573 #: build/C/man3/sinh.3:60
7574 msgid "B<sinhf>(), B<sinhl>():"
7578 #: build/C/man3/sinh.3:73
7580 "The B<sinh>() function returns the hyperbolic sine of I<x>, which is "
7581 "defined mathematically as:"
7585 #: build/C/man3/sinh.3:76
7587 msgid " sinh(x) = (exp(x) - exp(-x)) / 2\n"
7591 #: build/C/man3/sinh.3:80
7592 msgid "On success, these functions return the hyperbolic sine of I<x>."
7596 #. POSIX.1-2001 documents an optional range error (underflow)
7598 #. glibc 2.8 does not do this.
7600 #: build/C/man3/sinh.3:107
7602 "If the result overflows, a range error occurs, and the functions return "
7603 "B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, respectively, with the same sign "
7608 #: build/C/man3/sinh.3:135
7609 msgid "B<acosh>(3), B<asinh>(3), B<atanh>(3), B<cosh>(3), B<csinh>(3), B<tanh>(3)"
7613 #: build/C/man3/sqrt.3:34
7619 #: build/C/man3/sqrt.3:37
7620 msgid "sqrt, sqrtf, sqrtl - square root function"
7624 #: build/C/man3/sqrt.3:42
7626 msgid "B<double sqrt(double >I<x>B<);>\n"
7630 #: build/C/man3/sqrt.3:44
7632 msgid "B<float sqrtf(float >I<x>B<);>\n"
7636 #: build/C/man3/sqrt.3:46
7638 msgid "B<long double sqrtl(long double >I<x>B<);>\n"
7642 #: build/C/man3/sqrt.3:58
7643 msgid "B<sqrtf>(), B<sqrtl>():"
7647 #: build/C/man3/sqrt.3:70
7648 msgid "The B<sqrt>() function returns the nonnegative square root of I<x>."
7652 #: build/C/man3/sqrt.3:73
7653 msgid "On success, these functions return the square root of I<x>."
7657 #: build/C/man3/sqrt.3:91
7658 msgid "If I<x> is less than -0, a domain error occurs, and a NaN is returned."
7662 #: build/C/man3/sqrt.3:98
7664 msgid "Domain error: I<x> less than -0"
7668 #: build/C/man3/sqrt.3:116
7669 msgid "B<cbrt>(3), B<csqrt>(3), B<hypot>(3)"
7673 #: build/C/man3/tan.3:35
7679 #: build/C/man3/tan.3:38
7680 msgid "tan, tanf, tanl - tangent function"
7684 #: build/C/man3/tan.3:43
7686 msgid "B<double tan(double >I<x>B<);>\n"
7690 #: build/C/man3/tan.3:45
7692 msgid "B<float tanf(float >I<x>B<);>\n"
7696 #: build/C/man3/tan.3:47
7698 msgid "B<long double tanl(long double >I<x>B<);>\n"
7702 #: build/C/man3/tan.3:59
7703 msgid "B<tanf>(), B<tanl>():"
7707 #: build/C/man3/tan.3:72
7709 "The B<tan>() function returns the tangent of I<x>, where I<x> is given in "
7714 #: build/C/man3/tan.3:75
7715 msgid "On success, these functions return the tangent of I<x>."
7718 #. I think overflow can't occur, because the closest floating-point
7719 #. representation of pi/2 is still not close enough to pi/2 to
7720 #. produce a large enough value to overflow.
7721 #. Testing certainly seems to bear this out. -- mtk, Jul 08
7723 #. POSIX.1 allows an optional underflow error;
7724 #. glibc 2.8 doesn't do this
7725 #. POSIX.1 an optional range error for subnormal x;
7726 #. glibc 2.8 doesn't do this
7728 #: build/C/man3/tan.3:103
7730 "If the correct result would overflow, a range error occurs, and the "
7731 "functions return B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, respectively, "
7732 "with the mathematically correct sign."
7736 #: build/C/man3/tan.3:150
7738 "B<acos>(3), B<asin>(3), B<atan>(3), B<atan2>(3), B<cos>(3), B<ctan>(3), "
7743 #: build/C/man3/tanh.3:35
7749 #: build/C/man3/tanh.3:38
7750 msgid "tanh, tanhf, tanhl - hyperbolic tangent function"
7754 #: build/C/man3/tanh.3:43
7756 msgid "B<double tanh(double >I<x>B<);>\n"
7760 #: build/C/man3/tanh.3:45
7762 msgid "B<float tanhf(float >I<x>B<);>\n"
7766 #: build/C/man3/tanh.3:47
7768 msgid "B<long double tanhl(long double >I<x>B<);>\n"
7772 #: build/C/man3/tanh.3:59
7773 msgid "B<tanhf>(), B<tanhl>():"
7777 #: build/C/man3/tanh.3:72
7779 "The B<tanh>() function returns the hyperbolic tangent of I<x>, which is "
7780 "defined mathematically as:"
7784 #: build/C/man3/tanh.3:75
7786 msgid " tanh(x) = sinh(x) / cosh(x)\n"
7790 #: build/C/man3/tanh.3:79
7791 msgid "On success, these functions return the hyperbolic tangent of I<x>."
7795 #: build/C/man3/tanh.3:111
7796 msgid "B<acosh>(3), B<asinh>(3), B<atanh>(3), B<cosh>(3), B<ctanh>(3), B<sinh>(3)"
7800 #: build/C/man3/tgamma.3:13
7806 #: build/C/man3/tgamma.3:16
7807 msgid "tgamma, tgammaf, tgammal - true gamma function"
7811 #: build/C/man3/tgamma.3:20
7812 msgid "B<double tgamma(double >I<x>B<);>"
7816 #: build/C/man3/tgamma.3:22
7817 msgid "B<float tgammaf(float >I<x>B<);>"
7821 #: build/C/man3/tgamma.3:24
7822 msgid "B<long double tgammal(long double >I<x>B<);>"
7826 #: build/C/man3/tgamma.3:36
7827 msgid "B<tgamma>(), B<tgammaf>(), B<tgammal>():"
7831 #: build/C/man3/tgamma.3:46
7832 msgid "The Gamma function is defined by"
7836 #: build/C/man3/tgamma.3:48
7838 msgid " Gamma(x) = integral from 0 to infinity of t^(x-1) e^-t dt\n"
7842 #: build/C/man3/tgamma.3:51
7844 "It is defined for every real number except for nonpositive integers. For "
7845 "nonnegative integral I<m> one has"
7849 #: build/C/man3/tgamma.3:53
7851 msgid " Gamma(m+1) = m!\n"
7855 #: build/C/man3/tgamma.3:55
7856 msgid "and, more generally, for all I<x>:"
7860 #: build/C/man3/tgamma.3:57
7862 msgid " Gamma(x+1) = x * Gamma(x)\n"
7866 #: build/C/man3/tgamma.3:60
7868 "Furthermore, the following is valid for all values of I<x> outside the "
7873 #: build/C/man3/tgamma.3:62
7875 msgid " Gamma(x) * Gamma(1 - x) = PI / sin(PI * x)\n"
7879 #: build/C/man3/tgamma.3:65
7880 msgid "On success, these functions return Gamma(x)."
7884 #: build/C/man3/tgamma.3:79
7886 "If I<x> is a negative integer, or is negative infinity, a domain error "
7887 "occurs, and a NaN is returned."
7891 #: build/C/man3/tgamma.3:92
7893 "If the result underflows, a range error occurs, and the functions return 0, "
7894 "with the correct mathematical sign."
7898 #: build/C/man3/tgamma.3:103
7900 "If I<x> is -0 or +0, a pole error occurs, and the functions return "
7901 "B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, respectively, with the same sign "
7906 #: build/C/man3/tgamma.3:110
7908 msgid "Domain error: I<x> is a negative integer, or negative infinity"
7911 #. FIXME . errno is not set to EDOM for x == -inf
7912 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6809
7914 #: build/C/man3/tgamma.3:120
7916 "I<errno> is set to B<EDOM>. An invalid floating-point exception "
7917 "(B<FE_INVALID>) is raised (but see BUGS)."
7921 #: build/C/man3/tgamma.3:120
7923 msgid "Pole error: I<x> is +0 or -0"
7927 #: build/C/man3/tgamma.3:139
7929 "glibc also gives the following error which is not specified in C99 or "
7933 #. FIXME . Is it intentional that errno is not set:
7934 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6810
7936 #. glibc (as at 2.8) also supports and an inexact
7937 #. exception for various cases.
7939 #: build/C/man3/tgamma.3:156
7940 msgid "I<errno> is not set for this case."
7944 #: build/C/man3/tgamma.3:167
7946 "This function had to be called \"true gamma function\" since there is "
7947 "already a function B<gamma>(3) that returns something else (see B<gamma>(3) "
7951 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6809
7953 #: build/C/man3/tgamma.3:175
7955 "If I<x> is negative infinity, I<errno> is not set (it should be set to "
7960 #: build/C/man3/tgamma.3:184
7962 "In glibc versions 2.3.3 and earlier, an argument of +0 or -0 incorrectly "
7963 "produced a domain error (I<errno> set to B<EDOM> and an B<FE_INVALID> "
7964 "exception raised), rather than a pole error."
7968 #: build/C/man3/tgamma.3:187
7969 msgid "B<gamma>(3), B<lgamma>(3)"
7973 #: build/C/man3/trunc.3:25
7979 #: build/C/man3/trunc.3:28
7980 msgid "trunc, truncf, truncl - round to integer, toward zero"
7984 #: build/C/man3/trunc.3:33
7986 msgid "B<double trunc(double >I<x>B<);>\n"
7990 #: build/C/man3/trunc.3:35
7992 msgid "B<float truncf(float >I<x>B<);>\n"
7996 #: build/C/man3/trunc.3:37
7998 msgid "B<long double truncl(long double >I<x>B<);>\n"
8002 #: build/C/man3/trunc.3:50
8003 msgid "B<trunc>(), B<truncf>(), B<truncl>():"
8007 #: build/C/man3/trunc.3:61
8009 "These functions round I<x> to the nearest integer not larger in absolute "
8014 #: build/C/man3/trunc.3:65
8015 msgid "If I<x> is integral, infinite, or NaN, I<x> itself is returned."
8019 #: build/C/man3/y0.3:36
8025 #: build/C/man3/y0.3:36
8031 #: build/C/man3/y0.3:40
8033 "y0, y0f, y0l, y1, y1f, y1l, yn, ynf, ynl - Bessel functions of the second "
8038 #: build/C/man3/y0.3:45
8040 msgid "B<double y0(double >I<x>B<);>\n"
8044 #: build/C/man3/y0.3:47
8046 msgid "B<double y1(double >I<x>B<);>\n"
8050 #: build/C/man3/y0.3:49
8052 msgid "B<double yn(int >I<n>B<, double >I<x>B<);>\n"
8056 #: build/C/man3/y0.3:51
8058 msgid "B<float y0f(float >I<x>B<);>\n"
8062 #: build/C/man3/y0.3:53
8064 msgid "B<float y1f(float >I<x>B<);>\n"
8068 #: build/C/man3/y0.3:55
8070 msgid "B<float ynf(int >I<n>B<, float >I<x>B<);>\n"
8074 #: build/C/man3/y0.3:57
8076 msgid "B<long double y0l(long double >I<x>B<);>\n"
8080 #: build/C/man3/y0.3:59
8082 msgid "B<long double y1l(long double >I<x>B<);>\n"
8086 #: build/C/man3/y0.3:61
8088 msgid "B<long double ynl(int >I<n>B<, long double >I<x>B<);>\n"
8092 #: build/C/man3/y0.3:74
8093 msgid "B<y0>(), B<y1>(), B<yn>():"
8097 #: build/C/man3/y0.3:84
8098 msgid "B<y0f>(), B<y0l>(), B<y1f>(), B<y1l>(), B<ynf>(), B<ynl>():"
8102 #: build/C/man3/y0.3:101
8104 "The B<y0>() and B<y1>() functions return Bessel functions of I<x> of the "
8105 "second kind of orders 0 and 1, respectively. The B<yn>() function returns "
8106 "the Bessel function of I<x> of the second kind of order I<n>."
8110 #: build/C/man3/y0.3:103
8111 msgid "The value of I<x> must be positive."
8115 #: build/C/man3/y0.3:113
8117 "The B<y0f>() etc. and B<y0l>() etc. functions are versions that take and "
8118 "return I<float> and I<long double> values, respectively."
8122 #: build/C/man3/y0.3:117
8124 "On success, these functions return the appropriate Bessel value of the "
8125 "second kind for I<x>."
8129 #: build/C/man3/y0.3:133
8131 "If I<x> is negative, a domain error occurs, and the functions return "
8132 "-B<HUGE_VAL>, -B<HUGE_VALF>, or -B<HUGE_VALL>, respectively. (POSIX.1-2001 "
8133 "also allows a NaN return for this case.)"
8137 #: build/C/man3/y0.3:144
8139 "If I<x> is 0.0, a pole error occurs, and the functions return -B<HUGE_VAL>, "
8140 "-B<HUGE_VALF>, or -B<HUGE_VALL>, respectively."
8144 #: build/C/man3/y0.3:148
8145 msgid "If the result underflows, a range error occurs, and the functions return 0.0"
8149 #: build/C/man3/y0.3:158
8151 "If the result overflows, a range error occurs, and the functions return "
8152 "-B<HUGE_VAL>, -B<HUGE_VALF>, or -B<HUGE_VALL>, respectively. (POSIX.1-2001 "
8153 "also allows a 0.0 return for this case.)"
8157 #: build/C/man3/y0.3:173
8159 msgid "Pole error: I<x> is 0.0"
8162 #. Before POSIX.1-2001 TC2, this was (inconsistently) specified
8163 #. as a range error.
8164 #. FIXME . y0(0.0) gives EDOM
8165 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6808
8167 #: build/C/man3/y0.3:188
8169 "I<errno> is set to B<ERANGE> (but see BUGS). No B<FE_DIVBYZERO> exception "
8170 "is returned by B<fetestexcept>(3) for this case."
8173 #. e.g., y0(1e33) on glibc 2.8/x86-32
8174 #. An underflow floating-point exception
8175 #. .RB ( FE_UNDERFLOW )
8177 #. FIXME . Is it intentional that these functions do not use FE_*?
8178 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6806
8180 #: build/C/man3/y0.3:204
8182 "I<errno> is set to B<ERANGE>. No B<FE_UNDERFLOW> exception is returned by "
8183 "B<fetestexcept>(3) for this case."
8186 #. e.g., yn(10, 1e-40) on glibc 2.8/x86-32
8190 #. FIXME . Is it intentional that errno is not set?
8191 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6808
8193 #: build/C/man3/y0.3:217
8195 "I<errno> is not set for this case. An overflow floating-point exception "
8196 "(B<FE_OVERFLOW>) is raised."
8200 #. Bug raised: http://sourceware.org/bugzilla/show_bug.cgi?id=6807
8202 #: build/C/man3/y0.3:233
8204 "On a pole error, these functions set I<errno> to B<EDOM>, instead of "
8205 "B<ERANGE> as POSIX.1-2004 requires."
8208 #. FIXME . Actually, 2.3.2 is the earliest test result I have; so yet
8209 #. to confirm if this error occurs only in 2.3.2.
8211 #: build/C/man3/y0.3:240
8213 "In glibc version 2.3.2 and earlier, these functions do not raise an invalid "
8214 "floating-point exception (B<FE_INVALID>) when a domain error occurs."
8218 #: build/C/man3/y0.3:242