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: 2015-01-01 22:50+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=UTF-8\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:50
105 "The macro B<INFINITY> expands to a I<float> constant representing positive "
110 #: build/C/man3/INFINITY.3:65
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:77
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 positive infinity."
127 #: build/C/man3/INFINITY.3:77 build/C/man3/abs.3:91 build/C/man3/acos.3:113 build/C/man3/acosh.3:120 build/C/man3/asin.3:111 build/C/man3/asinh.3:113 build/C/man3/atan.3:104 build/C/man3/atan2.3:166 build/C/man3/atanh.3:139 build/C/man3/cbrt.3:98 build/C/man3/ceil.3:89 build/C/man3/copysign.3:103 build/C/man3/cos.3:112 build/C/man3/cosh.3:119 build/C/man3/div.3:100 build/C/man3/erf.3:134 build/C/man3/erfc.3:130 build/C/man3/exp.3:128 build/C/man3/exp10.3:77 build/C/man3/exp2.3:91 build/C/man3/expm1.3:144 build/C/man3/fabs.3:93 build/C/man3/fdim.3:89 build/C/man3/fenv.3:284 build/C/man3/floor.3:88 build/C/man3/fma.3:164 build/C/man3/fmax.3:66 build/C/man3/fmin.3:66 build/C/man3/fmod.3:146 build/C/man3/fpclassify.3:128 build/C/man3/frexp.3:116 build/C/man3/gamma.3:65 build/C/man3/hypot.3:158 build/C/man3/ilogb.3:154 build/C/man3/infnan.3:87 build/C/man3/isgreater.3:136 build/C/man3/j0.3:157 build/C/man3/ldexp.3:137 build/C/man3/lgamma.3:158 build/C/man3/log.3:128 build/C/man3/log10.3:89 build/C/man3/log1p.3:150 build/C/man3/log2.3:91 build/C/man3/logb.3:151 build/C/man3/lrint.3:121 build/C/man3/lround.3:124 build/C/man3/modf.3:103 build/C/man3/nan.3:75 build/C/man3/nextafter.3:190 build/C/man3/pow.3:316 build/C/man3/pow10.3:49 build/C/man3/remainder.3:180 build/C/man3/remquo.3:132 build/C/man3/rint.3:133 build/C/man3/round.3:96 build/C/man3/scalb.3:177 build/C/man3/scalbln.3:171 build/C/man3/signbit.3:66 build/C/man3/significand.3:51 build/C/man3/sin.3:116 build/C/man3/sincos.3:84 build/C/man3/sinh.3:124 build/C/man3/sqrt.3:107 build/C/man3/tan.3:141 build/C/man3/tanh.3:108 build/C/man3/tgamma.3:162 build/C/man3/trunc.3:83 build/C/man3/y0.3:230
129 msgid "CONFORMING TO"
133 #: build/C/man3/INFINITY.3:79
138 #: build/C/man3/INFINITY.3:79
144 #: build/C/man3/INFINITY.3:101
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:101 build/C/man3/abs.3:133 build/C/man3/acos.3:119 build/C/man3/acosh.3:126 build/C/man3/asin.3:117 build/C/man3/asinh.3:119 build/C/man3/atan.3:110 build/C/man3/atan2.3:172 build/C/man3/atanh.3:156 build/C/man3/cbrt.3:102 build/C/man3/ceil.3:120 build/C/man3/copysign.3:112 build/C/man3/cos.3:125 build/C/man3/cosh.3:130 build/C/man3/div.3:115 build/C/man3/erf.3:140 build/C/man3/erfc.3:146 build/C/man3/exp.3:134 build/C/man3/exp10.3:79 build/C/man3/exp2.3:97 build/C/man3/expm1.3:178 build/C/man3/fabs.3:99 build/C/man3/fdim.3:91 build/C/man3/fenv.3:342 build/C/man3/finite.3:155 build/C/man3/floor.3:110 build/C/man3/fma.3:166 build/C/man3/fmax.3:68 build/C/man3/fmin.3:68 build/C/man3/fmod.3:160 build/C/man3/fpclassify.3:142 build/C/man3/frexp.3:155 build/C/man3/gamma.3:97 build/C/man3/hypot.3:164 build/C/man3/ilogb.3:156 build/C/man3/isgreater.3:143 build/C/man3/j0.3:172 build/C/man3/ldexp.3:143 build/C/man3/lgamma.3:177 build/C/man3/log.3:141 build/C/man3/log10.3:95 build/C/man3/log1p.3:153 build/C/man3/log2.3:97 build/C/man3/logb.3:153 build/C/man3/lrint.3:123 build/C/man3/lround.3:126 build/C/man7/math_error.7:256 build/C/man3/matherr.3:430 build/C/man3/modf.3:109 build/C/man3/nan.3:79 build/C/man3/nextafter.3:199 build/C/man3/pow.3:365 build/C/man3/pow10.3:54 build/C/man3/remainder.3:215 build/C/man3/remquo.3:134 build/C/man3/rint.3:155 build/C/man3/round.3:119 build/C/man3/scalb.3:200 build/C/man3/scalbln.3:189 build/C/man3/signbit.3:70 build/C/man3/significand.3:57 build/C/man3/sin.3:129 build/C/man3/sincos.3:86 build/C/man3/sinh.3:130 build/C/man3/sqrt.3:113 build/C/man3/tan.3:154 build/C/man3/tanh.3:114 build/C/man3/tgamma.3:188 build/C/man3/trunc.3:94 build/C/man3/y0.3:253
160 #: build/C/man3/INFINITY.3:104
161 msgid "B<fpclassify>(3), B<math_error>(7)"
165 #: build/C/man3/INFINITY.3:104 build/C/man3/abs.3:139 build/C/man3/acos.3:127 build/C/man3/acosh.3:133 build/C/man3/asin.3:125 build/C/man3/asinh.3:126 build/C/man3/atan.3:119 build/C/man3/atan2.3:180 build/C/man3/atanh.3:163 build/C/man3/cbrt.3:105 build/C/man3/ceil.3:127 build/C/man3/copysign.3:114 build/C/man3/cos.3:134 build/C/man3/cosh.3:137 build/C/man3/div.3:118 build/C/man3/erf.3:144 build/C/man3/erfc.3:150 build/C/man3/exp.3:140 build/C/man3/exp10.3:85 build/C/man3/exp2.3:103 build/C/man3/expm1.3:182 build/C/man3/fabs.3:106 build/C/man3/fdim.3:93 build/C/man3/fenv.3:344 build/C/man3/finite.3:157 build/C/man3/floor.3:117 build/C/man3/fma.3:169 build/C/man3/fmax.3:70 build/C/man3/fmin.3:70 build/C/man3/fmod.3:162 build/C/man3/fpclassify.3:147 build/C/man3/frexp.3:158 build/C/man3/gamma.3:101 build/C/man3/hypot.3:167 build/C/man3/ilogb.3:160 build/C/man3/infnan.3:92 build/C/man3/isgreater.3:146 build/C/man3/j0.3:174 build/C/man3/ldexp.3:147 build/C/man3/lgamma.3:179 build/C/man3/log.3:148 build/C/man3/log10.3:102 build/C/man3/log1p.3:157 build/C/man3/log2.3:103 build/C/man3/logb.3:156 build/C/man3/lrint.3:130 build/C/man3/lround.3:133 build/C/man7/math_error.7:267 build/C/man3/matherr.3:434 build/C/man3/modf.3:112 build/C/man3/nan.3:83 build/C/man3/nextafter.3:201 build/C/man3/pow.3:369 build/C/man3/pow10.3:57 build/C/man3/remainder.3:219 build/C/man3/remquo.3:138 build/C/man3/rint.3:161 build/C/man3/round.3:126 build/C/man3/scalb.3:203 build/C/man3/scalbln.3:192 build/C/man3/signbit.3:72 build/C/man3/significand.3:60 build/C/man3/sin.3:138 build/C/man3/sincos.3:90 build/C/man3/sinh.3:137 build/C/man3/sqrt.3:117 build/C/man3/tan.3:162 build/C/man3/tanh.3:121 build/C/man3/tgamma.3:191 build/C/man3/trunc.3:101 build/C/man3/y0.3:255
171 #: build/C/man3/INFINITY.3:112 build/C/man3/abs.3:147 build/C/man3/acos.3:135 build/C/man3/acosh.3:141 build/C/man3/asin.3:133 build/C/man3/asinh.3:134 build/C/man3/atan.3:127 build/C/man3/atan2.3:188 build/C/man3/atanh.3:171 build/C/man3/cbrt.3:113 build/C/man3/ceil.3:135 build/C/man3/copysign.3:122 build/C/man3/cos.3:142 build/C/man3/cosh.3:145 build/C/man3/div.3:126 build/C/man3/erf.3:152 build/C/man3/erfc.3:158 build/C/man3/exp.3:148 build/C/man3/exp10.3:93 build/C/man3/exp2.3:111 build/C/man3/expm1.3:190 build/C/man3/fabs.3:114 build/C/man3/fdim.3:101 build/C/man3/fenv.3:352 build/C/man3/finite.3:165 build/C/man3/floor.3:125 build/C/man3/fma.3:177 build/C/man3/fmax.3:78 build/C/man3/fmin.3:78 build/C/man3/fmod.3:170 build/C/man3/fpclassify.3:155 build/C/man3/frexp.3:166 build/C/man3/gamma.3:109 build/C/man3/hypot.3:175 build/C/man3/ilogb.3:168 build/C/man3/infnan.3:100 build/C/man3/isgreater.3:154 build/C/man3/j0.3:182 build/C/man3/ldexp.3:155 build/C/man3/lgamma.3:187 build/C/man3/log.3:156 build/C/man3/log10.3:110 build/C/man3/log1p.3:165 build/C/man3/log2.3:111 build/C/man3/logb.3:164 build/C/man3/lrint.3:138 build/C/man3/lround.3:141 build/C/man7/math_error.7:275 build/C/man3/matherr.3:442 build/C/man3/modf.3:120 build/C/man3/nan.3:91 build/C/man3/nextafter.3:209 build/C/man3/pow.3:377 build/C/man3/pow10.3:65 build/C/man3/remainder.3:227 build/C/man3/remquo.3:146 build/C/man3/rint.3:169 build/C/man3/round.3:134 build/C/man3/scalb.3:211 build/C/man3/scalbln.3:200 build/C/man3/signbit.3:80 build/C/man3/significand.3:68 build/C/man3/sin.3:146 build/C/man3/sincos.3:98 build/C/man3/sinh.3:145 build/C/man3/sqrt.3:125 build/C/man3/tan.3:170 build/C/man3/tanh.3:129 build/C/man3/tgamma.3:199 build/C/man3/trunc.3:109 build/C/man3/y0.3:263
173 "This page is part of release 3.75 of the Linux I<man-pages> project. A "
174 "description of the project, information about reporting bugs, and the latest "
175 "version of this page, can be found at "
176 "\\%http://www.kernel.org/doc/man-pages/."
180 #: build/C/man3/abs.3:34
186 #: build/C/man3/abs.3:34
192 #: 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
198 #: build/C/man3/abs.3:37
199 msgid "abs, labs, llabs, imaxabs - compute the absolute value of an integer"
203 #: build/C/man3/abs.3:40 build/C/man3/div.3:41
205 msgid "B<#include E<lt>stdlib.hE<gt>>\n"
209 #: build/C/man3/abs.3:42
211 msgid "B<int abs(int >I<j>B<);>\n"
215 #: build/C/man3/abs.3:44
217 msgid "B<long int labs(long int >I<j>B<);>\n"
221 #: build/C/man3/abs.3:46
223 msgid "B<long long int llabs(long long int >I<j>B<);>\n"
227 #: build/C/man3/abs.3:48 build/C/man3/div.3:49
229 msgid "B<#include E<lt>inttypes.hE<gt>>\n"
233 #: build/C/man3/abs.3:50
235 msgid "B<intmax_t imaxabs(intmax_t >I<j>B<);>\n"
239 #: 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
240 msgid "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
244 #: build/C/man3/abs.3:59
249 #: 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
251 "_XOPEN_SOURCE\\ E<gt>=\\ 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ "
256 #: 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
257 msgid "or I<cc\\ -std=c99>"
261 #: build/C/man3/abs.3:79
263 "The B<abs>() function computes the absolute value of the integer argument "
264 "I<j>. The B<labs>(), B<llabs>() and B<imaxabs>() functions compute the "
265 "absolute value of the argument I<j> of the appropriate integer type for the "
270 #: build/C/man3/abs.3:79 build/C/man3/acos.3:73 build/C/man3/acosh.3:84 build/C/man3/asin.3:74 build/C/man3/asinh.3:84 build/C/man3/atan.3:74 build/C/man3/atan2.3:72 build/C/man3/atanh.3:84 build/C/man3/cbrt.3:79 build/C/man3/ceil.3:69 build/C/man3/copysign.3:81 build/C/man3/cos.3:75 build/C/man3/cosh.3:79 build/C/man3/div.3:89 build/C/man3/erf.3:83 build/C/man3/erfc.3:71 build/C/man3/exp.3:74 build/C/man3/exp10.3:58 build/C/man3/exp2.3:74 build/C/man3/expm1.3:88 build/C/man3/fabs.3:68 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:87 build/C/man3/frexp.3:74 build/C/man3/gamma.3:59 build/C/man3/hypot.3:92 build/C/man3/ilogb.3:78 build/C/man3/infnan.3:56 build/C/man3/isgreater.3:111 build/C/man3/j0.3:121 build/C/man3/ldexp.3:73 build/C/man3/lgamma.3:96 build/C/man3/log.3:73 build/C/man3/log10.3:73 build/C/man3/log1p.3:83 build/C/man3/log2.3:73 build/C/man3/logb.3:94 build/C/man3/lrint.3:74 build/C/man3/lround.3:77 build/C/man3/modf.3:76 build/C/man3/nextafter.3:104 build/C/man3/pow.3:75 build/C/man3/remainder.3:118 build/C/man3/remquo.3:73 build/C/man3/rint.3:111 build/C/man3/round.3:75 build/C/man3/scalb.3:79 build/C/man3/scalbln.3:95 build/C/man3/signbit.3:53 build/C/man3/sin.3:76 build/C/man3/sincos.3:49 build/C/man3/sinh.3:79 build/C/man3/sqrt.3:71 build/C/man3/tan.3:76 build/C/man3/tanh.3:78 build/C/man3/tgamma.3:67 build/C/man3/trunc.3:63 build/C/man3/y0.3:126
276 #: build/C/man3/abs.3:82
278 "Returns the absolute value of the integer argument, of the appropriate "
279 "integer type for the function."
283 #: build/C/man3/abs.3:82 build/C/man3/asinh.3:105 build/C/man3/atan.3:96 build/C/man3/cbrt.3:90 build/C/man3/ceil.3:81 build/C/man3/copysign.3:95 build/C/man3/cos.3:104 build/C/man3/div.3:91 build/C/man3/erf.3:126 build/C/man3/erfc.3:122 build/C/man3/expm1.3:136 build/C/man3/fabs.3:85 build/C/man3/fdim.3:81 build/C/man3/fenv.3:265 build/C/man3/finite.3:121 build/C/man3/floor.3:80 build/C/man3/fma.3:156 build/C/man3/fmax.3:58 build/C/man3/fmin.3:58 build/C/man3/fpclassify.3:118 build/C/man3/frexp.3:108 build/C/man3/ilogb.3:146 build/C/man3/isgreater.3:125 build/C/man3/ldexp.3:129 build/C/man3/log1p.3:142 build/C/man3/logb.3:143 build/C/man3/lrint.3:110 build/C/man3/lround.3:113 build/C/man3/matherr.3:275 build/C/man3/modf.3:95 build/C/man3/nextafter.3:179 build/C/man3/remquo.3:124 build/C/man3/rint.3:122 build/C/man3/round.3:88 build/C/man3/scalbln.3:160 build/C/man3/signbit.3:61 build/C/man3/sin.3:108 build/C/man3/sincos.3:76 build/C/man3/tan.3:133 build/C/man3/tanh.3:100 build/C/man3/trunc.3:75
289 #: build/C/man3/abs.3:83 build/C/man3/asinh.3:106 build/C/man3/atan.3:97 build/C/man3/cbrt.3:91 build/C/man3/ceil.3:82 build/C/man3/copysign.3:96 build/C/man3/cos.3:105 build/C/man3/div.3:92 build/C/man3/erf.3:127 build/C/man3/erfc.3:123 build/C/man3/expm1.3:137 build/C/man3/fabs.3:86 build/C/man3/fdim.3:82 build/C/man3/fenv.3:266 build/C/man3/finite.3:122 build/C/man3/floor.3:81 build/C/man3/fma.3:157 build/C/man3/fmax.3:59 build/C/man3/fmin.3:59 build/C/man3/fpclassify.3:119 build/C/man3/frexp.3:109 build/C/man3/ilogb.3:147 build/C/man3/isgreater.3:126 build/C/man3/ldexp.3:130 build/C/man3/log1p.3:143 build/C/man3/logb.3:144 build/C/man3/lrint.3:111 build/C/man3/lround.3:114 build/C/man3/matherr.3:276 build/C/man3/modf.3:96 build/C/man3/nextafter.3:180 build/C/man3/remquo.3:125 build/C/man3/rint.3:123 build/C/man3/round.3:89 build/C/man3/scalbln.3:161 build/C/man3/signbit.3:62 build/C/man3/sin.3:109 build/C/man3/sincos.3:77 build/C/man3/tan.3:134 build/C/man3/tanh.3:101 build/C/man3/trunc.3:76
291 msgid "Multithreading (see pthreads(7))"
295 #: build/C/man3/abs.3:91
297 "The B<abs>(), B<labs>(), B<llabs>(), and B<imaxabs>() functions are "
301 #. POSIX.1 (1996 edition) requires only the
305 #: build/C/man3/abs.3:106
307 "SVr4, POSIX.1-2001, 4.3BSD, C99. C89 only includes the B<abs>() and "
308 "B<labs>() functions; the functions B<llabs>() and B<imaxabs>() were added "
313 #: build/C/man3/abs.3:106 build/C/man3/ceil.3:95 build/C/man3/copysign.3:108 build/C/man3/erfc.3:136 build/C/man3/fenv.3:286 build/C/man3/finite.3:135 build/C/man3/floor.3:94 build/C/man3/fpclassify.3:135 build/C/man3/gamma.3:68 build/C/man3/infnan.3:89 build/C/man3/isgreater.3:138 build/C/man7/math_error.7:187 build/C/man3/pow10.3:51 build/C/man3/rint.3:135 build/C/man3/round.3:98 build/C/man3/scalbln.3:173 build/C/man3/tgamma.3:164 build/C/man3/trunc.3:85
319 #: build/C/man3/abs.3:109
321 "Trying to take the absolute value of the most negative integer is not "
326 #: build/C/man3/abs.3:117
328 "The B<llabs>() function is included in glibc since version 2.0. The "
329 "B<imaxabs>() function is included in glibc since version 2.1.1."
333 #: build/C/man3/abs.3:123
335 "For B<llabs>() to be declared, it may be necessary to define "
336 "B<_ISOC99_SOURCE> or B<_ISOC9X_SOURCE> (depending on the version of glibc) "
337 "before including any standard headers."
341 #: build/C/man3/abs.3:133
343 "By default, GCC handles B<abs>(), B<labs>(), and (since GCC 3.0) B<llabs>() "
344 "and B<imaxabs>() as built-in functions."
348 #: build/C/man3/abs.3:139
349 msgid "B<cabs>(3), B<ceil>(3), B<fabs>(3), B<floor>(3), B<rint>(3)"
353 #: build/C/man3/acos.3:35
359 #: build/C/man3/acos.3:35 build/C/man3/acosh.3:35 build/C/man3/asin.3:35 build/C/man3/atan2.3:35 build/C/man3/cosh.3:36 build/C/man3/exp.3:36 build/C/man3/exp2.3:36 build/C/man3/hypot.3:33 build/C/man3/log.3:36 build/C/man3/log10.3:36 build/C/man3/nan.3:11 build/C/man3/remainder.3:37 build/C/man3/sinh.3:36 build/C/man3/sqrt.3:34 build/C/man3/tgamma.3:13
365 #: build/C/man3/acos.3:38
366 msgid "acos, acosf, acosl - arc cosine function"
370 #: build/C/man3/acos.3:45
373 "B<double acos(double >I<x>B<);>\n"
374 "B<float acosf(float >I<x>B<);>\n"
375 "B<long double acosl(long double >I<x>B<);>\n"
379 #: 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
380 msgid "Link with I<-lm>."
384 #: build/C/man3/acos.3:57
385 msgid "B<acosf>(), B<acosl>():"
389 #: 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
391 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600 || "
392 "_ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
396 #: build/C/man3/acos.3:73
398 "The B<acos>() function calculates the arc cosine of I<x>; that is the value "
399 "whose cosine is I<x>."
403 #: build/C/man3/acos.3:77
405 "On success, these functions return the arc cosine of I<x> in radians; the "
406 "return value is in the range [0,\\ pi]."
410 #: build/C/man3/acos.3:81 build/C/man3/acosh.3:91 build/C/man3/asin.3:82 build/C/man3/asinh.3:91 build/C/man3/atan.3:82 build/C/man3/atanh.3:91 build/C/man3/cos.3:82 build/C/man3/cosh.3:86 build/C/man3/erf.3:91 build/C/man3/erfc.3:79 build/C/man3/exp.3:82 build/C/man3/expm1.3:96 build/C/man3/fabs.3:75 build/C/man3/j0.3:129 build/C/man3/ldexp.3:87 build/C/man3/lgamma.3:102 build/C/man3/log.3:81 build/C/man3/log1p.3:91 build/C/man3/logb.3:102 build/C/man3/scalbln.3:106 build/C/man3/sin.3:83 build/C/man3/sinh.3:86 build/C/man3/sqrt.3:78 build/C/man3/tan.3:83 build/C/man3/tanh.3:85 build/C/man3/tgamma.3:73 build/C/man3/y0.3:134
411 msgid "If I<x> is a NaN, a NaN is returned."
415 #: build/C/man3/acos.3:86 build/C/man3/acosh.3:95
416 msgid "If I<x> is +1, +0 is returned."
420 #: build/C/man3/acos.3:92 build/C/man3/cos.3:88 build/C/man3/sin.3:92 build/C/man3/tan.3:89
422 "If I<x> is positive infinity or negative infinity, a domain error occurs, "
423 "and a NaN is returned."
427 #. POSIX.1-2001 documents an optional range error for subnormal x;
428 #. glibc 2.8 does not do this.
430 #: build/C/man3/acos.3:98 build/C/man3/asin.3:96
432 "If I<x> is outside the range [-1,\\ 1], a domain error occurs, and a NaN is "
437 #: build/C/man3/acos.3:98 build/C/man3/acosh.3:105 build/C/man3/asin.3:96 build/C/man3/asinh.3:103 build/C/man3/atan.3:94 build/C/man3/atan2.3:162 build/C/man3/atanh.3:115 build/C/man3/cbrt.3:88 build/C/man3/ceil.3:78 build/C/man3/copysign.3:93 build/C/man3/cos.3:88 build/C/man3/cosh.3:104 build/C/man3/erf.3:106 build/C/man3/erfc.3:102 build/C/man3/exp.3:105 build/C/man3/exp10.3:65 build/C/man3/exp2.3:81 build/C/man3/expm1.3:117 build/C/man3/fabs.3:83 build/C/man3/fdim.3:59 build/C/man3/floor.3:77 build/C/man3/fma.3:117 build/C/man3/fmax.3:54 build/C/man3/fmin.3:54 build/C/man3/fmod.3:120 build/C/man3/frexp.3:106 build/C/man3/gamma.3:62 build/C/man3/hypot.3:128 build/C/man3/ilogb.3:110 build/C/man3/infnan.3:76 build/C/man3/isgreater.3:123 build/C/man3/j0.3:136 build/C/man3/ldexp.3:106 build/C/man3/lgamma.3:132 build/C/man3/log.3:105 build/C/man3/log10.3:81 build/C/man3/log1p.3:113 build/C/man3/log2.3:81 build/C/man3/logb.3:116 build/C/man3/lrint.3:88 build/C/man3/lround.3:91 build/C/man3/modf.3:93 build/C/man3/nextafter.3:149 build/C/man3/pow.3:256 build/C/man3/remainder.3:150 build/C/man3/remquo.3:101 build/C/man3/rint.3:119 build/C/man3/round.3:83 build/C/man3/scalb.3:138 build/C/man3/scalbln.3:130 build/C/man3/signbit.3:59 build/C/man3/sin.3:92 build/C/man3/sincos.3:52 build/C/man3/sinh.3:109 build/C/man3/sqrt.3:92 build/C/man3/tan.3:107 build/C/man3/tanh.3:98 build/C/man3/tgamma.3:107 build/C/man3/trunc.3:71 build/C/man3/y0.3:171
443 #: build/C/man3/acos.3:103 build/C/man3/acosh.3:110 build/C/man3/asin.3:101 build/C/man3/atanh.3:120 build/C/man3/cos.3:93 build/C/man3/cosh.3:109 build/C/man3/erf.3:111 build/C/man3/erfc.3:107 build/C/man3/exp.3:110 build/C/man3/exp10.3:70 build/C/man3/exp2.3:86 build/C/man3/expm1.3:122 build/C/man3/fdim.3:64 build/C/man3/fma.3:122 build/C/man3/fmod.3:125 build/C/man3/hypot.3:133 build/C/man3/ilogb.3:115 build/C/man3/j0.3:141 build/C/man3/ldexp.3:111 build/C/man3/lgamma.3:137 build/C/man3/log.3:110 build/C/man3/log10.3:86 build/C/man3/log1p.3:118 build/C/man3/log2.3:86 build/C/man3/logb.3:121 build/C/man3/lrint.3:93 build/C/man3/lround.3:96 build/C/man3/nextafter.3:154 build/C/man3/pow.3:281 build/C/man3/remainder.3:155 build/C/man3/remquo.3:106 build/C/man3/scalb.3:143 build/C/man3/scalbln.3:135 build/C/man3/sin.3:97 build/C/man3/sincos.3:57 build/C/man3/sinh.3:114 build/C/man3/sqrt.3:97 build/C/man3/tan.3:112 build/C/man3/tgamma.3:112 build/C/man3/y0.3:176
445 "See B<math_error>(7) for information on how to determine whether an error "
446 "has occurred when calling these functions."
450 #: build/C/man3/acos.3:105 build/C/man3/acosh.3:112 build/C/man3/asin.3:103 build/C/man3/atanh.3:122 build/C/man3/cos.3:95 build/C/man3/cosh.3:111 build/C/man3/erf.3:113 build/C/man3/erfc.3:109 build/C/man3/exp.3:112 build/C/man3/expm1.3:124 build/C/man3/fdim.3:66 build/C/man3/fma.3:124 build/C/man3/fmod.3:127 build/C/man3/hypot.3:135 build/C/man3/ilogb.3:117 build/C/man3/j0.3:143 build/C/man3/ldexp.3:113 build/C/man3/lgamma.3:139 build/C/man3/log.3:112 build/C/man3/log1p.3:120 build/C/man3/logb.3:123 build/C/man3/lrint.3:95 build/C/man3/lround.3:98 build/C/man3/nextafter.3:156 build/C/man3/pow.3:283 build/C/man3/remainder.3:157 build/C/man3/remquo.3:108 build/C/man3/scalb.3:145 build/C/man3/scalbln.3:137 build/C/man3/sin.3:99 build/C/man3/sincos.3:59 build/C/man3/sinh.3:116 build/C/man3/sqrt.3:99 build/C/man3/tan.3:114 build/C/man3/tgamma.3:114 build/C/man3/y0.3:178
451 msgid "The following errors can occur:"
455 #: build/C/man3/acos.3:105 build/C/man3/asin.3:103
457 msgid "Domain error: I<x> is outside the range [-1,\\ 1]"
461 #: build/C/man3/acos.3:113 build/C/man3/acosh.3:120 build/C/man3/asin.3:111 build/C/man3/atanh.3:130 build/C/man3/fmod.3:146 build/C/man3/log.3:120 build/C/man3/pow.3:291 build/C/man3/remainder.3:180 build/C/man3/sqrt.3:107 build/C/man3/y0.3:186
463 "I<errno> is set to B<EDOM>. An invalid floating-point exception "
464 "(B<FE_INVALID>) is raised."
468 #: build/C/man3/acos.3:119 build/C/man3/acosh.3:126 build/C/man3/asin.3:117 build/C/man3/asinh.3:119 build/C/man3/atan.3:110 build/C/man3/atan2.3:172 build/C/man3/atanh.3:145 build/C/man3/ceil.3:95 build/C/man3/exp.3:134 build/C/man3/exp2.3:97 build/C/man3/fabs.3:99 build/C/man3/floor.3:94 build/C/man3/fmod.3:152 build/C/man3/frexp.3:122 build/C/man3/ldexp.3:143 build/C/man3/log.3:134 build/C/man3/log10.3:95 build/C/man3/modf.3:109 build/C/man3/pow.3:322 build/C/man3/sin.3:122 build/C/man3/sinh.3:130 build/C/man3/sqrt.3:113 build/C/man3/tan.3:147 build/C/man3/tanh.3:114
470 "C99, POSIX.1-2001. The variant returning I<double> also conforms to SVr4, "
475 #: build/C/man3/acos.3:127
477 "B<asin>(3), B<atan>(3), B<atan2>(3), B<cacos>(3), B<cos>(3), B<sin>(3), "
482 #: build/C/man3/acosh.3:35
488 #: build/C/man3/acosh.3:38
489 msgid "acosh, acoshf, acoshl - inverse hyperbolic cosine function"
493 #: build/C/man3/acosh.3:43
495 msgid "B<double acosh(double >I<x>B<);>\n"
499 #: build/C/man3/acosh.3:45
501 msgid "B<float acoshf(float >I<x>B<);>\n"
505 #: build/C/man3/acosh.3:47
507 msgid "B<long double acoshl(long double >I<x>B<);>\n"
511 #: build/C/man3/acosh.3:58
516 #: 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
518 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || "
519 "_XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED || _ISOC99_SOURCE || "
520 "_POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
524 #: build/C/man3/acosh.3:69
525 msgid "B<acoshf>(), B<acoshl>():"
529 #: build/C/man3/acosh.3:84
531 "The B<acosh>() function calculates the inverse hyperbolic cosine of I<x>; "
532 "that is the value whose hyperbolic cosine is I<x>."
536 #: build/C/man3/acosh.3:87
537 msgid "On success, these functions return the inverse hyperbolic cosine of I<x>."
541 #: build/C/man3/acosh.3:99 build/C/man3/exp.3:87 build/C/man3/expm1.3:105 build/C/man3/log.3:90 build/C/man3/log1p.3:95 build/C/man3/sqrt.3:86 build/C/man3/tgamma.3:77
542 msgid "If I<x> is positive infinity, positive infinity is returned."
546 #: build/C/man3/acosh.3:105
548 "If I<x> is less than 1, a domain error occurs, and the functions return a "
553 #: build/C/man3/acosh.3:112
555 msgid "Domain error: I<x> is less than 1"
559 #: build/C/man3/acosh.3:133
560 msgid "B<asinh>(3), B<atanh>(3), B<cacosh>(3), B<cosh>(3), B<sinh>(3), B<tanh>(3)"
564 #: build/C/man3/asin.3:35
570 #: build/C/man3/asin.3:38
571 msgid "asin, asinf, asinl - arc sine function"
575 #: build/C/man3/asin.3:43
577 msgid "B<double asin(double >I<x>B<);>\n"
581 #: build/C/man3/asin.3:45
583 msgid "B<float asinf(float >I<x>B<);>\n"
587 #: build/C/man3/asin.3:47
589 msgid "B<long double asinl(long double >I<x>B<);>\n"
593 #: build/C/man3/asin.3:59
594 msgid "B<asinf>(), B<asinl>():"
598 #: build/C/man3/asin.3:74
600 "The B<asin>() function calculates the principal value of the arc sine of "
601 "I<x>; that is the value whose sine is I<x>."
605 #: build/C/man3/asin.3:78
607 "On success, these functions return the principal value of the arc sine of "
608 "I<x> in radians; the return value is in the range [-pi/2,\\ pi/2]."
612 #: build/C/man3/asin.3:87 build/C/man3/asinh.3:95 build/C/man3/atan.3:87 build/C/man3/atanh.3:95 build/C/man3/erf.3:95 build/C/man3/expm1.3:101 build/C/man3/scalbln.3:115 build/C/man3/sinh.3:90 build/C/man3/sqrt.3:82 build/C/man3/tanh.3:89
613 msgid "If I<x> is +0 (-0), +0 (-0) is returned."
617 #: build/C/man3/asin.3:125
619 "B<acos>(3), B<atan>(3), B<atan2>(3), B<casin>(3), B<cos>(3), B<sin>(3), "
624 #: build/C/man3/asinh.3:35
630 #: build/C/man3/asinh.3:35 build/C/man3/copysign.3:31 build/C/man3/cos.3:34 build/C/man3/expm1.3:30
636 #: build/C/man3/asinh.3:38
637 msgid "asinh, asinhf, asinhl - inverse hyperbolic sine function"
641 #: build/C/man3/asinh.3:43
643 msgid "B<double asinh(double >I<x>B<);>\n"
647 #: build/C/man3/asinh.3:45
649 msgid "B<float asinhf(float >I<x>B<);>\n"
653 #: build/C/man3/asinh.3:47
655 msgid "B<long double asinhl(long double >I<x>B<);>\n"
659 #: build/C/man3/asinh.3:58
664 #: build/C/man3/asinh.3:69
665 msgid "B<asinhf>(), B<asinhl>():"
669 #: build/C/man3/asinh.3:84
671 "The B<asinh>() function calculates the inverse hyperbolic sine of I<x>; "
672 "that is the value whose hyperbolic sine is I<x>."
676 #: build/C/man3/asinh.3:87
677 msgid "On success, these functions return the inverse hyperbolic sine of I<x>."
681 #: build/C/man3/asinh.3:103 build/C/man3/ldexp.3:92 build/C/man3/scalbln.3:111 build/C/man3/sinh.3:95
683 "If I<x> is positive infinity (negative infinity), positive infinity "
684 "(negative infinity) is returned."
688 #: build/C/man3/asinh.3:105 build/C/man3/atan.3:96 build/C/man3/atan2.3:166 build/C/man3/cbrt.3:90 build/C/man3/copysign.3:95 build/C/man3/fabs.3:85 build/C/man3/fmax.3:56 build/C/man3/fmin.3:56 build/C/man3/frexp.3:108 build/C/man3/isgreater.3:125 build/C/man3/modf.3:95 build/C/man3/signbit.3:61 build/C/man3/tanh.3:100 build/C/man3/trunc.3:73
689 msgid "No errors occur."
693 #: build/C/man3/asinh.3:113
694 msgid "The B<asinh>(), B<asinhf>(), and B<asinhl>() functions are thread-safe."
698 #: build/C/man3/asinh.3:126
699 msgid "B<acosh>(3), B<atanh>(3), B<casinh>(3), B<cosh>(3), B<sinh>(3), B<tanh>(3)"
703 #: build/C/man3/atan.3:35
709 #: build/C/man3/atan.3:35
715 #: build/C/man3/atan.3:38
716 msgid "atan, atanf, atanl - arc tangent function"
720 #: build/C/man3/atan.3:43
722 msgid "B<double atan(double >I<x>B<);>\n"
726 #: build/C/man3/atan.3:45
728 msgid "B<float atanf(float >I<x>B<);>\n"
732 #: build/C/man3/atan.3:47
734 msgid "B<long double atanl( long double >I<x>B<);>\n"
738 #: build/C/man3/atan.3:59
739 msgid "B<atanf>(), B<atanl>():"
743 #: build/C/man3/atan.3:74
745 "The B<atan>() function calculates the principal value of the arc tangent of "
746 "I<x>; that is the value whose tangent is I<x>."
750 #: build/C/man3/atan.3:78
752 "On success, these functions return the principal value of the arc tangent of "
753 "I<x> in radians; the return value is in the range [-pi/2,\\ pi/2]."
757 #. POSIX.1-2001 documents an optional range error for subnormal x;
758 #. glibc 2.8 does not do this.
760 #: build/C/man3/atan.3:94
761 msgid "If I<x> is positive infinity (negative infinity), +pi/2 (-pi/2) is returned."
765 #: build/C/man3/atan.3:104
766 msgid "The B<atan>(), B<atanf>(), and B<atanl>() functions are thread-safe."
770 #: build/C/man3/atan.3:119
772 "B<acos>(3), B<asin>(3), B<atan2>(3), B<carg>(3), B<catan>(3), B<cos>(3), "
773 "B<sin>(3), B<tan>(3)"
777 #: build/C/man3/atan2.3:35
783 #: build/C/man3/atan2.3:38
784 msgid "atan2, atan2f, atan2l - arc tangent function of two variables"
788 #: build/C/man3/atan2.3:45
791 "B<double atan2(double >I<y>B<, double >I<x>B<);>\n"
792 "B<float atan2f(float >I<y>B<, float >I<x>B<);>\n"
793 "B<long double atan2l(long double >I<y>B<, long double >I<x>B<);>\n"
797 #: build/C/man3/atan2.3:57
798 msgid "B<atan2f>(), B<atan2l>():"
802 #: build/C/man3/atan2.3:72
804 "The B<atan2>() function calculates the principal value of the arc tangent "
805 "of I<y/x>, using the signs of the two arguments to determine the quadrant of "
810 #: build/C/man3/atan2.3:76
812 "On success, these functions return the principal value of the arc tangent of "
813 "I<y/x> in radians; the return value is in the range [-pi,\\ pi]."
817 #: build/C/man3/atan2.3:82
818 msgid "If I<y> is +0 (-0) and I<x> is less than 0, +pi (-pi) is returned."
822 #: build/C/man3/atan2.3:88
823 msgid "If I<y> is +0 (-0) and I<x> is greater than 0, +0 (-0) is returned."
827 #: build/C/man3/atan2.3:94
828 msgid "If I<y> is less than 0 and I<x> is +0 or -0, -pi/2 is returned."
832 #: build/C/man3/atan2.3:100
833 msgid "If I<y> is greater than 0 and I<x> is +0 or -0, pi/2 is returned."
839 #. is 0, a pole error shall not occur.
841 #: build/C/man3/atan2.3:111
842 msgid "If either I<x> or I<y> is NaN, a NaN is returned."
846 #. If the result underflows, a range error may occur and
848 #. should be returned.
850 #: build/C/man3/atan2.3:122
851 msgid "If I<y> is +0 (-0) and I<x> is -0, +pi (-pi) is returned."
855 #: build/C/man3/atan2.3:128
856 msgid "If I<y> is +0 (-0) and I<x> is +0, +0 (-0) is returned."
860 #: build/C/man3/atan2.3:134
862 "If I<y> is a finite value greater (less) than 0, and I<x> is negative "
863 "infinity, +pi (-pi) is returned."
867 #: build/C/man3/atan2.3:140
869 "If I<y> is a finite value greater (less) than 0, and I<x> is positive "
870 "infinity, +0 (-0) is returned."
874 #: build/C/man3/atan2.3:147
876 "If I<y> is positive infinity (negative infinity), and I<x> is finite, pi/2 "
877 "(-pi/2) is returned."
881 #: build/C/man3/atan2.3:153
883 "If I<y> is positive infinity (negative infinity) and I<x> is negative "
884 "infinity, +3*pi/4 (-3*pi/4) is returned."
889 #. If both arguments are 0, a domain error shall not occur.
891 #: build/C/man3/atan2.3:162
893 "If I<y> is positive infinity (negative infinity) and I<x> is positive "
894 "infinity, +pi/4 (-pi/4) is returned."
898 #: build/C/man3/atan2.3:180
900 "B<acos>(3), B<asin>(3), B<atan>(3), B<carg>(3), B<cos>(3), B<sin>(3), "
905 #: build/C/man3/atanh.3:35
911 #: build/C/man3/atanh.3:35
917 #: build/C/man3/atanh.3:38
918 msgid "atanh, atanhf, atanhl - inverse hyperbolic tangent function"
922 #: build/C/man3/atanh.3:43
924 msgid "B<double atanh(double >I<x>B<);>\n"
928 #: build/C/man3/atanh.3:45
930 msgid "B<float atanhf(float >I<x>B<);>\n"
934 #: build/C/man3/atanh.3:47
936 msgid "B<long double atanhl(long double >I<x>B<);>\n"
940 #: build/C/man3/atanh.3:58
945 #: build/C/man3/atanh.3:69
946 msgid "B<atanhf>(), B<atanhl>():"
950 #: build/C/man3/atanh.3:84
952 "The B<atanh>() function calculates the inverse hyperbolic tangent of I<x>; "
953 "that is the value whose hyperbolic tangent is I<x>."
957 #: build/C/man3/atanh.3:87
958 msgid "On success, these functions return the inverse hyperbolic tangent of I<x>."
962 #: build/C/man3/atanh.3:106
964 "If I<x> is +1 or -1, a pole error occurs, and the functions return "
965 "B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, respectively, with the "
966 "mathematically correct sign."
970 #. POSIX.1-2001 documents an optional range error for subnormal x;
971 #. glibc 2.8 does not do this.
973 #: build/C/man3/atanh.3:115
975 "If the absolute value of I<x> is greater than 1, a domain error occurs, and "
980 #: build/C/man3/atanh.3:122
982 msgid "Domain error: I<x> less than -1 or greater than +1"
986 #: build/C/man3/atanh.3:130
988 msgid "Pole error: I<x> is +1 or -1"
992 #: build/C/man3/atanh.3:139 build/C/man3/lgamma.3:148 build/C/man3/pow.3:300
994 "I<errno> is set to B<ERANGE> (but see BUGS). A divide-by-zero "
995 "floating-point exception (B<FE_DIVBYZERO>) is raised."
999 #: build/C/man3/atanh.3:145 build/C/man3/cos.3:118 build/C/man3/cosh.3:125 build/C/man3/expm1.3:147 build/C/man3/fenv.3:331 build/C/man3/fmod.3:152 build/C/man3/j0.3:163 build/C/man3/lgamma.3:167 build/C/man3/log.3:134 build/C/man3/nextafter.3:194 build/C/man3/pow.3:322 build/C/man3/remainder.3:204 build/C/man3/sin.3:122 build/C/man3/tan.3:147 build/C/man3/tgamma.3:171 build/C/man3/y0.3:236
1004 #. Bug: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6759
1005 #. This can be seen in sysdeps/ieee754/k_standard.c
1007 #: build/C/man3/atanh.3:156
1009 "In glibc 2.9 and earlier, when a pole error occurs, I<errno> as set to "
1010 "B<EDOM> instead of the POSIX-mandated B<ERANGE>. Since version 2.10, glibc "
1011 "does the right thing."
1015 #: build/C/man3/atanh.3:163
1016 msgid "B<acosh>(3), B<asinh>(3), B<catanh>(3), B<cosh>(3), B<sinh>(3), B<tanh>(3)"
1020 #: build/C/man3/cbrt.3:30
1026 #: build/C/man3/cbrt.3:30
1032 #: build/C/man3/cbrt.3:33
1033 msgid "cbrt, cbrtf, cbrtl - cube root function"
1037 #: build/C/man3/cbrt.3:38
1039 msgid "B<double cbrt(double >I<x>B<);>\n"
1043 #: build/C/man3/cbrt.3:40
1045 msgid "B<float cbrtf(float >I<x>B<);>\n"
1049 #: build/C/man3/cbrt.3:42
1051 msgid "B<long double cbrtl(long double >I<x>B<);>\n"
1055 #: build/C/man3/cbrt.3:53
1060 #: build/C/man3/cbrt.3:64
1061 msgid "B<cbrtf>(), B<cbrtl>():"
1065 #: build/C/man3/cbrt.3:67
1067 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600 || "
1068 "_ISOC99_SOURCE || _POSIX_C_SOUCE\\ E<gt>=\\ 200112L;"
1072 #: build/C/man3/cbrt.3:79
1074 "The B<cbrt>() function returns the (real) cube root of I<x>. This function "
1075 "cannot fail; every representable real value has a representable real cube "
1080 #: build/C/man3/cbrt.3:82
1081 msgid "These functions return the cube root of I<x>."
1085 #: build/C/man3/cbrt.3:88
1087 "If I<x> is +0, -0, positive infinity, negative infinity, or NaN, I<x> is "
1092 #: build/C/man3/cbrt.3:98
1093 msgid "The B<cbrt>(), B<cbrtf>(), and B<cbrtl>() functions are thread-safe."
1097 #: build/C/man3/cbrt.3:102 build/C/man3/expm1.3:147 build/C/man3/fdim.3:91 build/C/man3/fma.3:166 build/C/man3/fmax.3:68 build/C/man3/fmin.3:68 build/C/man3/ilogb.3:156 build/C/man3/isgreater.3:138 build/C/man3/log1p.3:153 build/C/man3/logb.3:153 build/C/man3/lrint.3:123 build/C/man3/lround.3:126 build/C/man3/remquo.3:134 build/C/man3/rint.3:135 build/C/man3/round.3:98 build/C/man3/scalbln.3:173 build/C/man3/tgamma.3:164 build/C/man3/trunc.3:85
1098 msgid "C99, POSIX.1-2001."
1102 #: build/C/man3/cbrt.3:105
1103 msgid "B<pow>(3), B<sqrt>(3)"
1107 #: build/C/man3/ceil.3:27
1113 #: build/C/man3/ceil.3:27 build/C/man3/modf.3:33 build/C/man3/round.3:27 build/C/man3/scalbln.3:27 build/C/man3/trunc.3:25
1119 #: build/C/man3/ceil.3:31
1121 "ceil, ceilf, ceill - ceiling function: smallest integral value not less than "
1126 #: build/C/man3/ceil.3:36
1128 msgid "B<double ceil(double >I<x>B<);>\n"
1132 #: build/C/man3/ceil.3:38
1134 msgid "B<float ceilf(float >I<x>B<);>\n"
1138 #: build/C/man3/ceil.3:40
1140 msgid "B<long double ceill(long double >I<x>B<);>\n"
1144 #: build/C/man3/ceil.3:52
1145 msgid "B<ceilf>(), B<ceill>():"
1149 #: build/C/man3/ceil.3:63
1151 "These functions return the smallest integral value that is not less than "
1156 #: build/C/man3/ceil.3:69
1157 msgid "For example, I<ceil(0.5)> is 1.0, and I<ceil(-0.5)> is 0.0."
1161 #: build/C/man3/ceil.3:72
1162 msgid "These functions return the ceiling of I<x>."
1166 #: build/C/man3/ceil.3:78 build/C/man3/rint.3:119 build/C/man3/round.3:83
1167 msgid "If I<x> is integral, +0, -0, NaN, or infinite, I<x> itself is returned."
1171 #: build/C/man3/ceil.3:81 build/C/man3/floor.3:80 build/C/man3/rint.3:122 build/C/man3/round.3:86
1173 "No errors occur. POSIX.1-2001 documents a range error for overflows, but "
1178 #: build/C/man3/ceil.3:89
1179 msgid "The B<ceil>(), B<ceilf>(), and B<ceill>() functions are thread-safe."
1183 #: build/C/man3/ceil.3:111 build/C/man3/floor.3:110 build/C/man3/rint.3:150
1185 "SUSv2 and POSIX.1-2001 contain text about overflow (which might set I<errno> "
1186 "to B<ERANGE>, or raise an B<FE_OVERFLOW> exception). In practice, the "
1187 "result cannot overflow on any current machine, so this error-handling stuff "
1188 "is just nonsense. (More precisely, overflow can happen only when the "
1189 "maximum value of the exponent is smaller than the number of mantissa bits. "
1190 "For the IEEE-754 standard 32-bit and 64-bit floating-point numbers the "
1191 "maximum value of the exponent is 128 (respectively, 1024), and the number of "
1192 "mantissa bits is 24 (respectively, 53).)"
1196 #: build/C/man3/ceil.3:120 build/C/man3/trunc.3:94
1198 "The integral value returned by these functions may be too large to store in "
1199 "an integer type (I<int>, I<long>, etc.). To avoid an overflow, which will "
1200 "produce undefined results, an application should perform a range check on "
1201 "the returned value before assigning it to an integer type."
1205 #: build/C/man3/ceil.3:127
1207 "B<floor>(3), B<lrint>(3), B<nearbyint>(3), B<rint>(3), B<round>(3), "
1212 #: build/C/man3/copysign.3:31
1218 #: build/C/man3/copysign.3:34
1219 msgid "copysign, copysignf, copysignl - copy sign of a number"
1223 #: build/C/man3/copysign.3:39
1225 msgid "B<double copysign(double >I<x>B<, double >I<y>B<);>\n"
1229 #: build/C/man3/copysign.3:41
1231 msgid "B<float copysignf(float >I<x>B<, float >I<y>B<);>\n"
1235 #: build/C/man3/copysign.3:43
1237 msgid "B<long double copysignl(long double >I<x>B<, long double >I<y>B<);>\n"
1241 #: build/C/man3/copysign.3:56
1242 msgid "B<copysign>(), B<copysignf>(), B<copysignl>():"
1246 #: build/C/man3/copysign.3:59
1248 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600 || "
1249 "_ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
1253 #: build/C/man3/copysign.3:75
1255 "The B<copysign>(), B<copysignf>(), and B<copysignl>() functions return a "
1256 "value whose absolute value matches that of I<x>, but whose sign bit matches "
1261 #: build/C/man3/copysign.3:81
1263 "For example, I<copysign(42.0,\\ -1.0)> and I<copysign(-42.0, -1.0)> both "
1268 #: build/C/man3/copysign.3:86
1270 "On success, these functions return a value whose magnitude is taken from "
1271 "I<x> and whose sign is taken from I<y>."
1275 #: build/C/man3/copysign.3:93
1276 msgid "If I<x> is a NaN, a NaN with the sign bit of I<y> is returned."
1280 #: build/C/man3/copysign.3:103
1282 "The B<copysign>(), B<copysignf>(), and B<copysignl>() functions are "
1287 #: build/C/man3/copysign.3:108 build/C/man3/nextafter.3:194 build/C/man3/signbit.3:70
1289 "C99, POSIX.1-2001. This function is defined in IEC 559 (and the appendix "
1290 "with recommended functions in IEEE 754/IEEE 854)."
1294 #: build/C/man3/copysign.3:112
1296 "On architectures where the floating-point formats are not IEEE 754 "
1297 "compliant, these functions may treat a negative zero as positive."
1301 #: build/C/man3/copysign.3:114
1302 msgid "B<signbit>(3)"
1306 #: build/C/man3/cos.3:34
1312 #: build/C/man3/cos.3:37
1313 msgid "cos, cosf, cosl - cosine function"
1317 #: build/C/man3/cos.3:42
1319 msgid "B<double cos(double >I<x>B<);>\n"
1323 #: build/C/man3/cos.3:44
1325 msgid "B<float cosf(float >I<x>B<);>\n"
1329 #: build/C/man3/cos.3:46
1331 msgid "B<long double cosl(long double >I<x>B<);>\n"
1335 #: build/C/man3/cos.3:58
1336 msgid "B<cosf>(), B<cosl>():"
1340 #: build/C/man3/cos.3:75
1342 "The B<cos>() function returns the cosine of I<x>, where I<x> is given in "
1347 #: build/C/man3/cos.3:78
1348 msgid "On success, these functions return the cosine of I<x>."
1352 #: build/C/man3/cos.3:95 build/C/man3/fmod.3:127 build/C/man3/ilogb.3:130 build/C/man3/sin.3:99 build/C/man3/sincos.3:59 build/C/man3/tan.3:114
1354 msgid "Domain error: I<x> is an infinity"
1358 #: build/C/man3/cos.3:104 build/C/man3/fmod.3:136 build/C/man3/sin.3:108 build/C/man3/tan.3:123
1360 "I<errno> is set to B<EDOM> (but see BUGS). An invalid floating-point "
1361 "exception (B<FE_INVALID>) is raised."
1365 #: build/C/man3/cos.3:112
1366 msgid "The B<cos>(), B<cosf>(), and B<cosl>() functions are thread-safe."
1370 #: build/C/man3/cos.3:118 build/C/man3/cosh.3:125 build/C/man3/erf.3:140 build/C/man3/erfc.3:136 build/C/man3/hypot.3:164 build/C/man3/log2.3:97
1372 "C99, POSIX.1-2001. The variant returning I<double> also conforms to SVr4, "
1376 #. http://sourceware.org/bugzilla/show_bug.cgi?id=6782
1378 #: build/C/man3/cos.3:125 build/C/man3/sin.3:129 build/C/man3/tan.3:154
1380 "Before version 2.10, the glibc implementation did not set I<errno> to "
1381 "B<EDOM> when a domain error occurred."
1385 #: build/C/man3/cos.3:134
1387 "B<acos>(3), B<asin>(3), B<atan>(3), B<atan2>(3), B<ccos>(3), B<sin>(3), "
1388 "B<sincos>(3), B<tan>(3)"
1392 #: build/C/man3/cosh.3:36
1398 #: build/C/man3/cosh.3:39
1399 msgid "cosh, coshf, coshl - hyperbolic cosine function"
1403 #: build/C/man3/cosh.3:44
1405 msgid "B<double cosh(double >I<x>B<);>\n"
1409 #: build/C/man3/cosh.3:46
1411 msgid "B<float coshf(float >I<x>B<);>\n"
1415 #: build/C/man3/cosh.3:48
1417 msgid "B<long double coshl(long double >I<x>B<);>\n"
1421 #: build/C/man3/cosh.3:60
1422 msgid "B<coshf>(), B<coshl>():"
1426 #: build/C/man3/cosh.3:75
1428 "The B<cosh>() function returns the hyperbolic cosine of I<x>, which is "
1429 "defined mathematically as:"
1433 #: build/C/man3/cosh.3:78
1435 msgid " cosh(x) = (exp(x) + exp(-x)) / 2\n"
1439 #: build/C/man3/cosh.3:82
1440 msgid "On success, these functions return the hyperbolic cosine of I<x>."
1444 #: build/C/man3/cosh.3:90 build/C/man3/erfc.3:83
1445 msgid "If I<x> is +0 or -0, 1 is returned."
1449 #: build/C/man3/cosh.3:95 build/C/man3/lgamma.3:111
1451 "If I<x> is positive infinity or negative infinity, positive infinity is "
1456 #: build/C/man3/cosh.3:104 build/C/man3/exp.3:105
1458 "If the result overflows, a range error occurs, and the functions return "
1459 "+B<HUGE_VAL>, +B<HUGE_VALF>, or +B<HUGE_VALL>, respectively."
1463 #: build/C/man3/cosh.3:111 build/C/man3/fdim.3:66 build/C/man3/fma.3:133 build/C/man3/hypot.3:135 build/C/man3/lgamma.3:148 build/C/man3/nextafter.3:156 build/C/man3/sinh.3:116 build/C/man3/tan.3:123 build/C/man3/tgamma.3:132 build/C/man3/y0.3:217
1465 msgid "Range error: result overflow"
1469 #: build/C/man3/cosh.3:119 build/C/man3/exp.3:120 build/C/man3/hypot.3:143 build/C/man3/ldexp.3:121 build/C/man3/lgamma.3:158 build/C/man3/pow.3:308 build/C/man3/sinh.3:124 build/C/man3/tgamma.3:140
1471 "I<errno> is set to B<ERANGE>. An overflow floating-point exception "
1472 "(B<FE_OVERFLOW>) is raised."
1476 #: build/C/man3/cosh.3:130
1478 "In glibc version 2.3.4 and earlier, an overflow floating-point "
1479 "(B<FE_OVERFLOW>) exception is not raised when an overflow occurs."
1483 #: build/C/man3/cosh.3:137
1484 msgid "B<acosh>(3), B<asinh>(3), B<atanh>(3), B<ccos>(3), B<sinh>(3), B<tanh>(3)"
1488 #: build/C/man3/div.3:34
1494 #: build/C/man3/div.3:34
1500 #: build/C/man3/div.3:38
1502 "div, ldiv, lldiv, imaxdiv - compute quotient and remainder of an integer "
1507 #: build/C/man3/div.3:43
1509 msgid "B<div_t div(int >I<numerator>B<, int >I<denominator>B<);>\n"
1513 #: build/C/man3/div.3:45
1515 msgid "B<ldiv_t ldiv(long >I<numerator>B<, long >I<denominator>B<);>\n"
1519 #: build/C/man3/div.3:47
1521 msgid "B<lldiv_t lldiv(long long >I<numerator>B<, long long >I<denominator>B<);>\n"
1525 #: build/C/man3/div.3:51
1528 "B<imaxdiv_t imaxdiv(intmax_t >I<numerator>B<, intmax_t "
1529 ">I<denominator>B<);>\n"
1533 #: build/C/man3/div.3:60
1538 #: build/C/man3/div.3:78
1540 "The B<div>() function computes the value I<numerator>/I<denominator> and "
1541 "returns the quotient and remainder in a structure named I<div_t> that "
1542 "contains two integer members (in unspecified order) named I<quot> and "
1543 "I<rem>. The quotient is rounded toward zero. The result satisfies "
1544 "I<quot>*I<denominator>+I<rem> = I<numerator>."
1548 #: build/C/man3/div.3:89
1550 "The B<ldiv>(), B<lldiv>(), and B<imaxdiv>() functions do the same, dividing "
1551 "numbers of the indicated type and returning the result in a structure of the "
1552 "indicated name, in all cases with fields I<quot> and I<rem> of the same type "
1553 "as the function arguments."
1557 #: build/C/man3/div.3:91
1558 msgid "The I<div_t> (etc.) structure."
1562 #: build/C/man3/div.3:100
1564 "The B<div>(), B<ldiv>(), B<lldiv>(), and B<imaxdiv>() functions are "
1569 #: build/C/man3/div.3:107
1571 "SVr4, 4.3BSD, C89. C99. The functions B<lldiv>() and B<imaxdiv>() were "
1576 #: build/C/man3/div.3:107 build/C/man3/frexp.3:122 build/C/man3/matherr.3:280 build/C/man3/remainder.3:213
1582 #: build/C/man3/div.3:109
1587 #: build/C/man3/div.3:112
1589 msgid " div_t q = div(-5, 3);\n"
1593 #: build/C/man3/div.3:115
1594 msgid "the values I<q.quot> and I<q.rem> are -1 and -2, respectively."
1598 #: build/C/man3/div.3:118
1599 msgid "B<abs>(3), B<remainder>(3)"
1603 #: build/C/man3/erf.3:35
1609 #: build/C/man3/erf.3:35 build/C/man3/erfc.3:26
1615 #: build/C/man3/erf.3:38
1616 msgid "erf, erff, erfl, - error function"
1620 #: build/C/man3/erf.3:45
1623 "B<double erf(double >I<x>B<);>\n"
1624 "B<float erff(float >I<x>B<);>\n"
1625 "B<long double erfl(long double >I<x>B<);>\n"
1629 #: build/C/man3/erf.3:56
1634 #: 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
1636 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE || _ISOC99_SOURCE || "
1637 "_POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
1641 #: build/C/man3/erf.3:66
1642 msgid "B<erff>(), B<erfl>():"
1646 #: build/C/man3/erf.3:81
1647 msgid "The B<erf>() function returns the error function of I<x>, defined as"
1651 #: build/C/man3/erf.3:81
1653 msgid " erf(x) = 2/sqrt(pi)* integral from 0 to x of exp(-t*t) dt"
1657 #: build/C/man3/erf.3:87
1659 "On success, these functions return the error function of I<x>, a value in "
1660 "the range [-1,\\ 1]."
1664 #. POSIX.1-2001 documents an optional range error (underflow)
1666 #. glibc 2.8 does not do this.
1668 #: build/C/man3/erf.3:100 build/C/man3/tanh.3:98
1669 msgid "If I<x> is positive infinity (negative infinity), +1 (-1) is returned."
1673 #: build/C/man3/erf.3:106
1675 "If I<x> is subnormal, a range error occurs, and the return value is "
1680 #: build/C/man3/erf.3:113
1682 msgid "Range error: result underflow (I<x> is subnormal)"
1685 #. e.g., tgamma(-172.5) on glibc 2.8/x86-32
1690 #: build/C/man3/erf.3:121 build/C/man3/erfc.3:117 build/C/man3/fma.3:149 build/C/man3/hypot.3:151 build/C/man3/nextafter.3:174 build/C/man3/scalb.3:171 build/C/man3/scalbln.3:153 build/C/man3/tgamma.3:152
1691 msgid "An underflow floating-point exception (B<FE_UNDERFLOW>) is raised."
1694 #. FIXME . Is it intentional that these functions do not set errno?
1695 #. sin() and cos() also don't set errno; bugs have been raised for
1697 #. See https://www.sourceware.org/bugzilla/show_bug.cgi?id=15467
1699 #: build/C/man3/erf.3:126 build/C/man3/erfc.3:122 build/C/man3/fdim.3:79 build/C/man3/fma.3:154 build/C/man3/log1p.3:142 build/C/man3/logb.3:143 build/C/man3/lrint.3:108 build/C/man3/lround.3:111 build/C/man3/nextafter.3:179 build/C/man3/remquo.3:122 build/C/man3/scalb.3:177 build/C/man3/scalbln.3:158 build/C/man3/sincos.3:74
1700 msgid "These functions do not set I<errno>."
1704 #: build/C/man3/erf.3:134
1705 msgid "The B<erf>(), B<erff>(), and B<erfl>() functions are thread-safe."
1709 #: build/C/man3/erf.3:144
1710 msgid "B<cerf>(3), B<erfc>(3), B<exp>(3)"
1714 #: build/C/man3/erfc.3:26
1720 #: build/C/man3/erfc.3:29
1721 msgid "erfc, erfcf, erfcl - complementary error function"
1725 #: build/C/man3/erfc.3:36
1728 "B<double erfc(double >I<x>B<);>\n"
1729 "B<float erfcf(float >I<x>B<);>\n"
1730 "B<long double erfcl(long double >I<x>B<);>\n"
1734 #: build/C/man3/erfc.3:47
1739 #: build/C/man3/erfc.3:57
1740 msgid "B<erfcf>(), B<erfcl>():"
1744 #: build/C/man3/erfc.3:60
1746 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600|| _ISOC99_SOURCE "
1747 "|| _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
1751 #: build/C/man3/erfc.3:71
1753 "The B<erfc>() function returns the complementary error function of I<x>, "
1754 "that is, 1.0 - erf(x)."
1758 #: build/C/man3/erfc.3:75
1760 "On success, these functions return the complementary error function of I<x>, "
1761 "a value in the range [0,2]."
1765 #: build/C/man3/erfc.3:88
1766 msgid "If I<x> is positive infinity, +0 is returned."
1770 #: build/C/man3/erfc.3:93
1771 msgid "If I<x> is negative infinity, +2 is returned."
1775 #: build/C/man3/erfc.3:96
1777 "If the function result underflows and produces an unrepresentable value, the "
1778 "return value is 0.0."
1781 #. e.g., erfc(27) on x86-32
1783 #: build/C/man3/erfc.3:102
1785 "If the function result underflows but produces a representable (i.e., "
1786 "subnormal) value, that value is returned, and a range error occurs."
1790 #: build/C/man3/erfc.3:109
1792 msgid "Range error: result underflow (result is subnormal)"
1796 #: build/C/man3/erfc.3:130
1797 msgid "The B<erfc>(), B<erfcf>(), and B<erfcl>() functions are thread-safe."
1801 #: build/C/man3/erfc.3:146
1803 "The B<erfc>(), B<erfcf>(), and B<erfcl>() functions are provided to avoid "
1804 "the loss accuracy that would occur for the calculation 1-erf(x) for large "
1805 "values of I<x> (for which the value of erf(x) approaches 1)."
1809 #: build/C/man3/erfc.3:150
1810 msgid "B<cerf>(3), B<erf>(3), B<exp>(3)"
1814 #: build/C/man3/exp.3:36
1820 #: build/C/man3/exp.3:39
1821 msgid "exp, expf, expl - base-e exponential function"
1825 #: build/C/man3/exp.3:44
1827 msgid "B<double exp(double >I<x>B<);>\n"
1831 #: build/C/man3/exp.3:46
1833 msgid "B<float expf(float >I<x>B<);>\n"
1837 #: build/C/man3/exp.3:48
1839 msgid "B<long double expl(long double >I<x>B<);>\n"
1843 #: build/C/man3/exp.3:60
1844 msgid "B<expf>(), B<expl>():"
1848 #: build/C/man3/exp.3:74
1850 "The B<exp>() function returns the value of e (the base of natural "
1851 "logarithms) raised to the power of I<x>."
1855 #: build/C/man3/exp.3:77
1856 msgid "On success, these functions return the exponential value of I<x>."
1860 #: build/C/man3/exp.3:92
1861 msgid "If I<x> is negative infinity, +0 is returned."
1865 #: build/C/man3/exp.3:96 build/C/man3/ldexp.3:96
1866 msgid "If the result underflows, a range error occurs, and zero is returned."
1870 #: build/C/man3/exp.3:112 build/C/man3/expm1.3:124 build/C/man3/ldexp.3:113 build/C/man3/scalb.3:155 build/C/man3/scalbln.3:137
1872 msgid "Range error, overflow"
1876 #: build/C/man3/exp.3:120 build/C/man3/ldexp.3:121 build/C/man3/scalb.3:163 build/C/man3/scalbln.3:145
1878 msgid "Range error, underflow"
1882 #: build/C/man3/exp.3:128 build/C/man3/ldexp.3:129 build/C/man3/pow.3:316
1884 "I<errno> is set to B<ERANGE>. An underflow floating-point exception "
1885 "(B<FE_UNDERFLOW>) is raised."
1889 #: build/C/man3/exp.3:140
1890 msgid "B<cbrt>(3), B<cexp>(3), B<exp10>(3), B<exp2>(3), B<sqrt>(3)"
1894 #: build/C/man3/exp10.3:35
1900 #: build/C/man3/exp10.3:35 build/C/man7/math_error.7:26 build/C/man3/pow10.3:25
1906 #: build/C/man3/exp10.3:38
1907 msgid "exp10, exp10f, exp10l - base-10 exponential function"
1911 #: build/C/man3/exp10.3:41 build/C/man3/fenv.3:309
1913 msgid "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
1917 #: build/C/man3/exp10.3:45
1919 msgid "B<double exp10(double >I<x>B<);>\n"
1923 #: build/C/man3/exp10.3:47
1925 msgid "B<float exp10f(float >I<x>B<);>\n"
1929 #: build/C/man3/exp10.3:49
1931 msgid "B<long double exp10l(long double >I<x>B<);>\n"
1935 #: build/C/man3/exp10.3:58
1937 "The B<exp10>() function returns the value of 10 raised to the power of "
1942 #: build/C/man3/exp10.3:61
1943 msgid "On success, these functions return the base-10 exponential value of I<x>."
1947 #: build/C/man3/exp10.3:65 build/C/man3/exp2.3:81
1949 "For various special cases, including the handling of infinity and NaN, as "
1950 "well as overflows and underflows, see B<exp>(3)."
1954 #: build/C/man3/exp10.3:75 build/C/man3/exp2.3:89
1956 "For a discussion of the errors that can occur for these functions, see "
1961 #: build/C/man3/exp10.3:75 build/C/man3/exp2.3:89 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:89 build/C/man3/lrint.3:108 build/C/man3/lround.3:111 build/C/man3/nan.3:73 build/C/man3/pow10.3:47 build/C/man3/remquo.3:122 build/C/man3/round.3:86 build/C/man3/scalbln.3:158 build/C/man3/sincos.3:74 build/C/man3/tgamma.3:160 build/C/man3/trunc.3:73
1967 #: build/C/man3/exp10.3:77 build/C/man3/exp2.3:91 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:91 build/C/man3/lrint.3:110 build/C/man3/lround.3:113 build/C/man3/nan.3:75 build/C/man3/pow10.3:49 build/C/man3/remquo.3:124 build/C/man3/round.3:88 build/C/man3/scalbln.3:160 build/C/man3/sincos.3:76 build/C/man3/tgamma.3:162 build/C/man3/trunc.3:75
1968 msgid "These functions first appeared in glibc in version 2.1."
1972 #: build/C/man3/exp10.3:79
1973 msgid "These functions are GNU extensions."
1977 #: build/C/man3/exp10.3:85
1978 msgid "B<cbrt>(3), B<exp>(3), B<exp2>(3), B<log10>(3), B<sqrt>(3)"
1982 #: build/C/man3/exp2.3:36
1988 #: build/C/man3/exp2.3:39
1989 msgid "exp2, exp2f, exp2l - base-2 exponential function"
1993 #: build/C/man3/exp2.3:44
1995 msgid "B<double exp2(double >I<x>B<);>\n"
1999 #: build/C/man3/exp2.3:46
2001 msgid "B<float exp2f(float >I<x>B<);>\n"
2005 #: build/C/man3/exp2.3:48
2007 msgid "B<long double exp2l(long double >I<x>B<);>\n"
2011 #: build/C/man3/exp2.3:61
2012 msgid "B<exp2>(), B<exp2f>(), B<exp2l>():"
2016 #: build/C/man3/exp2.3:74
2017 msgid "The B<exp2>() function returns the value of 2 raised to the power of I<x>."
2021 #: build/C/man3/exp2.3:77
2022 msgid "On success, these functions return the base-2 exponential value of I<x>."
2026 #: build/C/man3/exp2.3:103
2027 msgid "B<cbrt>(3), B<cexp2>(3), B<exp>(3), B<exp10>(3), B<sqrt>(3)"
2031 #: build/C/man3/expm1.3:30
2037 #: build/C/man3/expm1.3:33
2038 msgid "expm1, expm1f, expm1l - exponential minus 1"
2042 #: build/C/man3/expm1.3:38
2044 msgid "B<double expm1(double >I<x>B<);>\n"
2048 #: build/C/man3/expm1.3:40
2050 msgid "B<float expm1f(float >I<x>B<);>\n"
2054 #: build/C/man3/expm1.3:42
2056 msgid "B<long double expm1l(long double >I<x>B<);>\n"
2060 #: build/C/man3/expm1.3:53
2065 #: build/C/man3/expm1.3:64
2066 msgid "B<expm1f>(), B<expm1l>():"
2070 #: build/C/man3/expm1.3:75
2071 msgid "I<expm1(x)> returns a value equivalent to"
2075 #: build/C/man3/expm1.3:78
2077 msgid " exp(x) - 1\n"
2081 #: build/C/man3/expm1.3:88
2083 "It is computed in a way that is accurate even if the value of I<x> is near "
2084 "zero\\(ema case where I<exp(x) - 1> would be inaccurate due to subtraction "
2085 "of two numbers that are nearly equal."
2089 #: build/C/man3/expm1.3:91
2090 msgid "On success, these functions return I<exp(x)\\ -\\ 1>."
2094 #: build/C/man3/expm1.3:109
2095 msgid "If I<x> is negative infinity, -1 is returned."
2099 #: build/C/man3/expm1.3:117
2101 "If the result overflows, a range error occurs, and the functions return "
2102 "-B<HUGE_VAL>, -B<HUGE_VALF>, or -B<HUGE_VALL>, respectively."
2106 #. POSIX.1 specifies an optional range error (underflow) if
2107 #. x is subnormal. Glibc does not implement this.
2109 #: build/C/man3/expm1.3:136
2111 "I<errno> is set to B<ERANGE> (but see BUGS). An overflow floating-point "
2112 "exception (B<FE_OVERFLOW>) is raised."
2116 #: build/C/man3/expm1.3:144
2117 msgid "The B<expm1>(), B<expm1f>(), and B<expm1l>() functions are thread-safe."
2121 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6778
2123 #: build/C/man3/expm1.3:155
2125 "For some large negative I<x> values (where the function result approaches "
2126 "-1), B<expm1>() raises a bogus underflow floating-point exception."
2130 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6814
2131 #. e.g., expm1(1e5) through expm1(1.00199970127e5),
2132 #. but not expm1(1.00199970128e5) and beyond.
2134 #: build/C/man3/expm1.3:166
2136 "For some large positive I<x> values, B<expm1>() raises a bogus invalid "
2137 "floating-point exception in addition to the expected overflow exception, and "
2138 "returns a NaN instead of positive infinity."
2141 #. It looks like the fix was in 2.11, or possibly 2.12.
2142 #. I have no test system for 2.11, but 2.12 passes.
2143 #. From the source (sysdeps/i386/fpu/s_expm1.S) it looks
2144 #. like the changes were in 2.11.
2145 #. http://sources.redhat.com/bugzilla/show_bug.cgi?id=6788
2147 #: build/C/man3/expm1.3:178
2149 "Before version 2.11, the glibc implementation did not set I<errno> to "
2150 "B<ERANGE> when a range error occurred."
2154 #: build/C/man3/expm1.3:182
2155 msgid "B<exp>(3), B<log>(3), B<log1p>(3)"
2159 #: build/C/man3/fabs.3:32
2165 #: build/C/man3/fabs.3:32
2171 #: build/C/man3/fabs.3:35
2172 msgid "fabs, fabsf, fabsl - absolute value of floating-point number"
2176 #: build/C/man3/fabs.3:40
2178 msgid "B<double fabs(double >I<x>B<);>\n"
2182 #: build/C/man3/fabs.3:42
2184 msgid "B<float fabsf(float >I<x>B<);>\n"
2188 #: build/C/man3/fabs.3:44
2190 msgid "B<long double fabsl(long double >I<x>B<);>\n"
2194 #: build/C/man3/fabs.3:56
2195 msgid "B<fabsf>(), B<fabsl>():"
2199 #: build/C/man3/fabs.3:68
2200 msgid "These functions return the absolute value of the floating-point number I<x>."
2204 #: build/C/man3/fabs.3:71
2205 msgid "These functions return the absolute value of I<x>."
2209 #: build/C/man3/fabs.3:79
2210 msgid "If I<x> is -0, +0 is returned."
2214 #: build/C/man3/fabs.3:83
2216 "If I<x> is negative infinity or positive infinity, positive infinity is "
2221 #: build/C/man3/fabs.3:93
2222 msgid "The B<fabs>(), B<fabsf>(), and B<fabsl>() functions are thread-safe."
2226 #: build/C/man3/fabs.3:106
2227 msgid "B<abs>(3), B<cabs>(3), B<ceil>(3), B<floor>(3), B<labs>(3), B<rint>(3)"
2231 #: build/C/man3/fdim.3:9
2237 #: build/C/man3/fdim.3:9
2243 #: build/C/man3/fdim.3:12
2244 msgid "fdim, fdimf, fdiml - positive difference"
2248 #: 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
2249 msgid "B<#include E<lt>math.hE<gt>>"
2253 #: build/C/man3/fdim.3:16
2254 msgid "B<double fdim(double >I<x>B<, double >I<y>B<);>"
2258 #: build/C/man3/fdim.3:18
2259 msgid "B<float fdimf(float >I<x>B<, float >I<y>B<);>"
2263 #: build/C/man3/fdim.3:20
2264 msgid "B<long double fdiml(long double >I<x>B<, long double >I<y>B<);>"
2268 #: build/C/man3/fdim.3:31
2269 msgid "B<fdimf>(), B<fdiml>():"
2273 #: build/C/man3/fdim.3:42
2275 "These functions return the positive difference, max(I<x>-I<y>,0), between "
2280 #: build/C/man3/fdim.3:44
2281 msgid "On success, these functions return the positive difference."
2285 #: build/C/man3/fdim.3:50 build/C/man3/fma.3:63 build/C/man3/fmod.3:102 build/C/man3/nextafter.3:127 build/C/man3/remainder.3:130 build/C/man3/remquo.3:83
2286 msgid "If I<x> or I<y> is a NaN, a NaN is returned."
2290 #: build/C/man3/fdim.3:59 build/C/man3/hypot.3:122
2292 "If the result overflows, a range error occurs, and the functions return "
2293 "B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, respectively."
2296 #. Unable to test this case, since the best approximation of
2297 #. pi/2 in double precision only yields a tan() value of 1.633e16.
2302 #: build/C/man3/fdim.3:74 build/C/man3/fma.3:141 build/C/man3/nextafter.3:165 build/C/man3/scalb.3:163 build/C/man3/scalbln.3:145 build/C/man3/tan.3:133
2303 msgid "An overflow floating-point exception (B<FE_OVERFLOW>) is raised."
2307 #: build/C/man3/fdim.3:89
2308 msgid "The B<fdim>(), B<fdimf>(), and B<fdiml>() functions are thread-safe."
2312 #: build/C/man3/fdim.3:93 build/C/man3/fmin.3:70
2317 #: build/C/man3/fenv.3:27
2323 #: build/C/man3/fenv.3:27
2329 #: build/C/man3/fenv.3:27 build/C/man7/math_error.7:26 build/C/man3/matherr.3:27
2335 #: build/C/man3/fenv.3:33
2337 "feclearexcept, fegetexceptflag, feraiseexcept, fesetexceptflag, "
2338 "fetestexcept, fegetenv, fegetround, feholdexcept, fesetround, fesetenv, "
2339 "feupdateenv, feenableexcept, fedisableexcept, fegetexcept - floating-point "
2340 "rounding and exception handling"
2344 #: build/C/man3/fenv.3:36 build/C/man3/fenv.3:311
2346 msgid "B<#include E<lt>fenv.hE<gt>>\n"
2350 #: build/C/man3/fenv.3:38
2352 msgid "B<int feclearexcept(int >I<excepts>B<);>\n"
2356 #: build/C/man3/fenv.3:40
2358 msgid "B<int fegetexceptflag(fexcept_t *>I<flagp>B<, int >I<excepts>B<);>\n"
2362 #: build/C/man3/fenv.3:42
2364 msgid "B<int feraiseexcept(int >I<excepts>B<);>\n"
2368 #: build/C/man3/fenv.3:44
2370 msgid "B<int fesetexceptflag(const fexcept_t *>I<flagp>B<, int >I<excepts>B<);>\n"
2374 #: build/C/man3/fenv.3:46
2376 msgid "B<int fetestexcept(int >I<excepts>B<);>\n"
2380 #: build/C/man3/fenv.3:48
2382 msgid "B<int fegetround(void);>\n"
2386 #: build/C/man3/fenv.3:50
2388 msgid "B<int fesetround(int >I<rounding_mode>B<);>\n"
2392 #: build/C/man3/fenv.3:52
2394 msgid "B<int fegetenv(fenv_t *>I<envp>B<);>\n"
2398 #: build/C/man3/fenv.3:54
2400 msgid "B<int feholdexcept(fenv_t *>I<envp>B<);>\n"
2404 #: build/C/man3/fenv.3:56
2406 msgid "B<int fesetenv(const fenv_t *>I<envp>B<);>\n"
2410 #: build/C/man3/fenv.3:58
2412 msgid "B<int feupdateenv(const fenv_t *>I<envp>B<);>\n"
2416 #: build/C/man3/fenv.3:64
2418 "These eleven functions were defined in C99, and describe the handling of "
2419 "floating-point rounding and exceptions (overflow, zero-divide, etc.)."
2423 #: build/C/man3/fenv.3:64
2429 #: build/C/man3/fenv.3:69
2431 "The I<divide-by-zero> exception occurs when an operation on finite numbers "
2432 "produces infinity as exact answer."
2436 #: build/C/man3/fenv.3:75
2438 "The I<overflow> exception occurs when a result has to be represented as a "
2439 "floating-point number, but has (much) larger absolute value than the largest "
2440 "(finite) floating-point number that is representable."
2444 #: build/C/man3/fenv.3:82
2446 "The I<underflow> exception occurs when a result has to be represented as a "
2447 "floating-point number, but has smaller absolute value than the smallest "
2448 "positive normalized floating-point number (and would lose much accuracy when "
2449 "represented as a denormalized number)."
2453 #: build/C/man3/fenv.3:92
2455 "The I<inexact> exception occurs when the rounded result of an operation is "
2456 "not equal to the infinite precision result. It may occur whenever "
2457 "I<overflow> or I<underflow> occurs."
2461 #: build/C/man3/fenv.3:97
2463 "The I<invalid> exception occurs when there is no well-defined result for an "
2464 "operation, as for 0/0 or infinity - infinity or sqrt(-1)."
2468 #: build/C/man3/fenv.3:97
2470 msgid "Exception handling"
2474 #: build/C/man3/fenv.3:103
2476 "Exceptions are represented in two ways: as a single bit (exception "
2477 "present/absent), and these bits correspond in some implementation-defined "
2478 "way with bit positions in an integer, and also as an opaque structure that "
2479 "may contain more information about the exception (perhaps the code address "
2480 "where it occurred)."
2484 #: build/C/man3/fenv.3:119
2486 "Each of the macros B<FE_DIVBYZERO>, B<FE_INEXACT>, B<FE_INVALID>, "
2487 "B<FE_OVERFLOW>, B<FE_UNDERFLOW> is defined when the implementation supports "
2488 "handling of the corresponding exception, and if so then defines the "
2489 "corresponding bit(s), so that one can call exception handling functions, for "
2490 "example, using the integer argument B<FE_OVERFLOW>|B<FE_UNDERFLOW>. Other "
2491 "exceptions may be supported. The macro B<FE_ALL_EXCEPT> is the bitwise OR "
2492 "of all bits corresponding to supported exceptions."
2496 #: build/C/man3/fenv.3:124
2498 "The B<feclearexcept>() function clears the supported exceptions represented "
2499 "by the bits in its argument."
2503 #: build/C/man3/fenv.3:132
2505 "The B<fegetexceptflag>() function stores a representation of the state of "
2506 "the exception flags represented by the argument I<excepts> in the opaque "
2511 #: build/C/man3/fenv.3:137
2513 "The B<feraiseexcept>() function raises the supported exceptions represented "
2514 "by the bits in I<excepts>."
2518 #: build/C/man3/fenv.3:148
2520 "The B<fesetexceptflag>() function sets the complete status for the "
2521 "exceptions represented by I<excepts> to the value I<*flagp>. This value "
2522 "must have been obtained by an earlier call of B<fegetexceptflag>() with a "
2523 "last argument that contained all bits in I<excepts>."
2527 #: build/C/man3/fenv.3:155
2529 "The B<fetestexcept>() function returns a word in which the bits are set "
2530 "that were set in the argument I<excepts> and for which the corresponding "
2531 "exception is currently set."
2535 #: build/C/man3/fenv.3:155
2537 msgid "Rounding mode"
2541 #: build/C/man3/fenv.3:163
2543 "The rounding mode determines how the result of floating-point operations is "
2544 "treated when the result cannot be exactly represented in the significand. "
2545 "Various rounding modes may be provided: round to nearest (the default), "
2546 "round up (toward positive infinity), round down (toward negative infinity), "
2547 "and round toward zero."
2551 #: build/C/man3/fenv.3:172
2553 "Each of the macros B<FE_TONEAREST>, B<FE_UPWARD>, B<FE_DOWNWARD>, and "
2554 "B<FE_TOWARDZERO> is defined when the implementation supports getting and "
2555 "setting the corresponding rounding direction."
2559 #: build/C/man3/fenv.3:177
2561 "The B<fegetround>() function returns the macro corresponding to the current "
2566 #: build/C/man3/fenv.3:182
2568 "The B<fesetround>() function sets the rounding mode as specified by its "
2569 "argument and returns zero when it was successful."
2573 #: build/C/man3/fenv.3:190
2575 "C99 and POSIX.1-2008 specify an identifier, B<FLT_ROUNDS>, defined in "
2576 "I<E<lt>float.hE<gt>>, which indicates the implementation-defined rounding "
2577 "behavior for floating-point addition. This identifier has one of the "
2582 #: build/C/man3/fenv.3:190
2588 #: build/C/man3/fenv.3:192
2589 msgid "The rounding mode is not determinable."
2593 #: build/C/man3/fenv.3:192
2599 #: build/C/man3/fenv.3:194
2600 msgid "Rounding is toward 0."
2604 #: build/C/man3/fenv.3:194
2610 #: build/C/man3/fenv.3:196
2611 msgid "Rounding is toward nearest number."
2615 #: build/C/man3/fenv.3:196
2621 #: build/C/man3/fenv.3:198
2622 msgid "Rounding is toward positive infinity."
2626 #: build/C/man3/fenv.3:198
2632 #: build/C/man3/fenv.3:200
2633 msgid "Rounding is toward negative infinity."
2637 #: build/C/man3/fenv.3:202
2638 msgid "Other values represent machine-dependent, nonstandard rounding modes."
2642 #: build/C/man3/fenv.3:208
2644 "The value of B<FLT_ROUNDS> should reflect the current rounding mode as set "
2645 "by B<fesetround>() (but see BUGS)."
2649 #: build/C/man3/fenv.3:208
2651 msgid "Floating-point environment"
2655 #: build/C/man3/fenv.3:220
2657 "The entire floating-point environment, including control modes and status "
2658 "flags, can be handled as one opaque object, of type I<fenv_t>. The default "
2659 "environment is denoted by B<FE_DFL_ENV> (of type I<const fenv_t\\ *>). This "
2660 "is the environment setup at program start and it is defined by ISO C to have "
2661 "round to nearest, all exceptions cleared and a nonstop (continue on "
2666 #: build/C/man3/fenv.3:225
2668 "The B<fegetenv>() function saves the current floating-point environment in "
2669 "the object I<*envp>."
2673 #: build/C/man3/fenv.3:232
2675 "The B<feholdexcept>() function does the same, then clears all exception "
2676 "flags, and sets a nonstop (continue on exceptions) mode, if available. It "
2677 "returns zero when successful."
2681 #: build/C/man3/fenv.3:245
2683 "The B<fesetenv>() function restores the floating-point environment from the "
2684 "object I<*envp>. This object must be known to be valid, for example, the "
2685 "result of a call to B<fegetenv>() or B<feholdexcept>() or equal to "
2686 "B<FE_DFL_ENV>. This call does not raise exceptions."
2690 #: build/C/man3/fenv.3:258
2692 "The B<feupdateenv>() function installs the floating-point environment "
2693 "represented by the object I<*envp>, except that currently raised exceptions "
2694 "are not cleared. After calling this function, the raised exceptions will be "
2695 "a bitwise OR of those previously set with those in I<*envp>. As before, the "
2696 "object I<*envp> must be known to be valid."
2699 #. Earlier seven of these functions were listed as returning void.
2700 #. This was corrected in Corrigendum 1 (ISO/IEC 9899:1999/Cor.1:2001(E))
2701 #. of the C99 Standard.
2703 #: build/C/man3/fenv.3:263
2704 msgid "These functions return zero on success and nonzero if an error occurred."
2708 #: build/C/man3/fenv.3:284
2710 "The B<feclearexcept>(), B<fegetexceptflag>(), B<fegetexceptflag>(), "
2711 "B<fesetexceptflag>(), B<fetestexcept>(), B<fegetround>(), B<fesetround>(), "
2712 "B<fegetenv>(), B<feholdexcept>(), B<fesetenv>(), B<feupdateenv>(), "
2713 "B<feenableexcept>(), B<fedisableexcept>(), and B<fegetexcept>() functions "
2718 #: build/C/man3/fenv.3:286
2719 msgid "IEC 60559 (IEC 559:1989), ANSI/IEEE 854, C99, POSIX.1-2001."
2723 #: build/C/man3/fenv.3:287
2729 #: build/C/man3/fenv.3:306
2731 "If possible, the GNU C Library defines a macro B<FE_NOMASK_ENV> which "
2732 "represents an environment where every exception raised causes a trap to "
2733 "occur. You can test for this macro using B<#ifdef>. It is defined only if "
2734 "B<_GNU_SOURCE> is defined. The C99 standard does not define a way to set "
2735 "individual bits in the floating-point mask, for example, to trap on specific "
2736 "flags. Since version 2.2, glibc supports the functions B<feenableexcept>() "
2737 "and B<fedisableexcept>() to set individual floating-point traps, and "
2738 "B<fegetexcept>() to query the state."
2742 #: build/C/man3/fenv.3:313
2744 msgid "B<int feenableexcept(int >I<excepts>B<);>\n"
2748 #: build/C/man3/fenv.3:315
2750 msgid "B<int fedisableexcept(int >I<excepts>B<);>\n"
2754 #: build/C/man3/fenv.3:317
2756 msgid "B<int fegetexcept(void);>\n"
2760 #: build/C/man3/fenv.3:331
2762 "The B<feenableexcept>() and B<fedisableexcept>() functions enable "
2763 "(disable) traps for each of the exceptions represented by I<excepts> and "
2764 "return the previous set of enabled exceptions when successful, and -1 "
2765 "otherwise. The B<fegetexcept>() function returns the set of all currently "
2766 "enabled exceptions."
2769 #. Aug 08, glibc 2.8
2770 #. See http://gcc.gnu.org/ml/gcc/2002-02/msg01535.html
2772 #: build/C/man3/fenv.3:342
2774 "C99 specifies that the value of B<FLT_ROUNDS> should reflect changes to the "
2775 "current rounding mode, as set by B<fesetround>(). Currently, this does not "
2776 "occur: B<FLT_ROUNDS> always has the value 1."
2780 #: build/C/man3/fenv.3:344
2781 msgid "B<math_error>(7)"
2785 #: build/C/man3/finite.3:25
2791 #: build/C/man3/finite.3:25
2797 #: build/C/man3/finite.3:29
2799 "finite, finitef, finitel, isinf, isinff, isinfl, isnan, isnanf, isnanl - BSD "
2800 "floating-point classification functions"
2804 #: build/C/man3/finite.3:34
2806 msgid "B<int finite(double >I<x>B<);>\n"
2810 #: build/C/man3/finite.3:36
2812 msgid "B<int finitef(float >I<x>B<);>\n"
2816 #: build/C/man3/finite.3:38
2818 msgid "B<int finitel(long double >I<x>B<);>\n"
2822 #: build/C/man3/finite.3:40
2824 msgid "B<int isinf(double >I<x>B<);>\n"
2828 #: build/C/man3/finite.3:42
2830 msgid "B<int isinff(float >I<x>B<);>\n"
2834 #: build/C/man3/finite.3:44
2836 msgid "B<int isinfl(long double >I<x>B<);>\n"
2840 #: build/C/man3/finite.3:46
2842 msgid "B<int isnan(double >I<x>B<);>\n"
2846 #: build/C/man3/finite.3:48
2848 msgid "B<int isnanf(float >I<x>B<);>\n"
2852 #: build/C/man3/finite.3:50
2854 msgid "B<int isnanl(long double >I<x>B<);>\n"
2858 #: build/C/man3/finite.3:61
2859 msgid "B<finite>(), B<finitef>(), B<finitel>():"
2863 #: build/C/man3/finite.3:63 build/C/man3/finite.3:76 build/C/man3/lgamma.3:65
2864 msgid "_BSD_SOURCE || _SVID_SOURCE"
2868 #: build/C/man3/finite.3:65 build/C/man3/fpclassify.3:58
2873 #: build/C/man3/finite.3:67
2875 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600 || "
2880 #: build/C/man3/finite.3:74
2881 msgid "B<isinff>(), B<isinfl>():"
2885 #: build/C/man3/finite.3:78 build/C/man3/fpclassify.3:50
2890 #: build/C/man3/finite.3:80
2891 msgid "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE || _ISOC99_SOURCE;"
2895 #: build/C/man3/finite.3:86
2896 msgid "B<isnanf>(), B<isnanl>():"
2900 #: build/C/man3/finite.3:88 build/C/man3/gamma.3:38 build/C/man3/scalb.3:58
2901 msgid "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600"
2905 #: build/C/man3/finite.3:100
2907 "The B<finite>(), B<finitef>(), and B<finitel>() functions return a nonzero "
2908 "value if I<x> is neither infinite nor a \"not-a-number\" (NaN) value, and 0 "
2913 #: build/C/man3/finite.3:110
2915 "The B<isnan>(), B<isnanf>(), and B<isnanl>() functions return a nonzero "
2916 "value if I<x> is a NaN value, and 0 otherwise."
2920 #: build/C/man3/finite.3:121
2922 "The B<isinf>(), B<isinff>(), and B<isinfl>() functions return 1 if I<x> is "
2923 "positive infinity, -1 if I<x> is negative infinity, and 0 otherwise."
2927 #: build/C/man3/finite.3:135
2929 "The B<finite>(), B<finitef>(), B<finitel>(), B<isinf>(), B<isinff>(), "
2930 "B<isinfl>(), B<isnan>(), B<isnanf>(), and B<isnanl>() functions are "
2935 #. finite* not on HP-UX; they exist on Tru64.
2939 #. function occurs in 4.3BSD.
2940 #. see IEEE.3 in the 4.3BSD manual
2942 #: build/C/man3/finite.3:155
2944 "Note that these functions are obsolete. C99 defines macros B<isfinite>(), "
2945 "B<isinf>(), and B<isnan>() (for all types) replacing them. Further note "
2946 "that the C99 B<isinf>() has weaker guarantees on the return value. See "
2951 #: build/C/man3/finite.3:157
2952 msgid "B<fpclassify>(3)"
2956 #: build/C/man3/floor.3:27
2962 #: build/C/man3/floor.3:27
2968 #: build/C/man3/floor.3:30
2969 msgid "floor, floorf, floorl - largest integral value not greater than argument"
2973 #: build/C/man3/floor.3:35
2975 msgid "B<double floor(double >I<x>B<);>\n"
2979 #: build/C/man3/floor.3:37
2981 msgid "B<float floorf(float >I<x>B<);>\n"
2985 #: build/C/man3/floor.3:39
2987 msgid "B<long double floorl(long double >I<x>B<);>\n"
2991 #: build/C/man3/floor.3:51
2992 msgid "B<floorf>(), B<floorl>():"
2996 #: build/C/man3/floor.3:62
2998 "These functions return the largest integral value that is not greater than "
3003 #: build/C/man3/floor.3:68
3004 msgid "For example, I<floor(0.5)> is 0.0, and I<floor(-0.5)> is -1.0."
3008 #: build/C/man3/floor.3:71
3009 msgid "These functions return the floor of I<x>."
3013 #: build/C/man3/floor.3:77
3014 msgid "If I<x> is integral, +0, -0, NaN, or an infinity, I<x> itself is returned."
3018 #: build/C/man3/floor.3:88
3019 msgid "The B<floor>(), B<floorf>(), and B<floorl>() functions are thread-safe."
3023 #: build/C/man3/floor.3:117
3025 "B<ceil>(3), B<lrint>(3), B<nearbyint>(3), B<rint>(3), B<round>(3), "
3030 #: build/C/man3/fma.3:12
3036 #: build/C/man3/fma.3:12 build/C/man3/fmax.3:9 build/C/man3/fmin.3:9
3042 #: build/C/man3/fma.3:15
3043 msgid "fma, fmaf, fmal - floating-point multiply and add"
3047 #: build/C/man3/fma.3:20
3049 msgid "B<double fma(double >I<x>B<, double >I<y>B<, double >I<z>B<);>\n"
3053 #: build/C/man3/fma.3:22
3055 msgid "B<float fmaf(float >I<x>B<, float >I<y>B<, float >I<z>B<);>\n"
3059 #: build/C/man3/fma.3:24
3062 "B<long double fmal(long double >I<x>B<, long double >I<y>B<, long double "
3067 #: build/C/man3/fma.3:37
3068 msgid "B<fma>(), B<fmaf>(), B<fmal>():"
3072 #: build/C/man3/fma.3:53
3074 "The B<fma>() function computes I<x> * I<y> + I<z>. The result is rounded "
3075 "as one ternary operation according to the current rounding mode (see "
3080 #: build/C/man3/fma.3:57
3082 "These functions return the value of I<x> * I<y> + I<z>, rounded as one "
3083 "ternary operation."
3087 #: build/C/man3/fma.3:73
3089 "If I<x> times I<y> is an exact infinity, and I<z> is an infinity with the "
3090 "opposite sign, a domain error occurs, and a NaN is returned."
3093 #. POSIX.1-2008 allows some possible differences for the following two
3094 #. domain error cases, but on Linux they are treated the same (AFAICS).
3095 #. Nevertheless, we'll mirror POSIX.1 and describe the two cases
3097 #. POSIX.1 says that a NaN or an implementation-defined value shall
3098 #. be returned for this case.
3100 #: build/C/man3/fma.3:89
3102 "If one of I<x> or I<y> is an infinity, the other is 0, and I<z> is not a "
3103 "NaN, a domain error occurs, and a NaN is returned."
3106 #. POSIX.1 makes the domain error optional for this case.
3108 #: build/C/man3/fma.3:100
3110 "If one of I<x> or I<y> is an infinity, and the other is 0, and I<z> is a "
3111 "NaN, a domain error occurs, and a NaN is returned."
3115 #: build/C/man3/fma.3:109
3117 "If I<x> times I<y> is not an infinity times zero (or vice versa), and I<z> "
3118 "is a NaN, a NaN is returned."
3122 #: build/C/man3/fma.3:113
3124 "If the result overflows, a range error occurs, and an infinity with the "
3125 "correct sign is returned."
3129 #: build/C/man3/fma.3:117
3130 msgid "If the result underflows, a range error occurs, and a signed 0 is returned."
3134 #: build/C/man3/fma.3:124
3137 "Domain error: I<x> * I<y> + I<z>, or I<x> * I<y> is invalid and I<z> is not "
3145 #: build/C/man3/fma.3:133 build/C/man3/ilogb.3:125 build/C/man3/log1p.3:128 build/C/man3/lrint.3:103 build/C/man3/lround.3:106 build/C/man3/remainder.3:165 build/C/man3/remquo.3:117 build/C/man3/scalb.3:155 build/C/man3/sincos.3:67
3146 msgid "An invalid floating-point exception (B<FE_INVALID>) is raised."
3150 #: build/C/man3/fma.3:141 build/C/man3/hypot.3:143 build/C/man3/tgamma.3:143 build/C/man3/y0.3:201
3152 msgid "Range error: result underflow"
3156 #: build/C/man3/fma.3:164
3157 msgid "The B<fma>(), B<fmaf>(), and B<fmal>() functions are thread-safe."
3161 #: build/C/man3/fma.3:169
3162 msgid "B<remainder>(3), B<remquo>(3)"
3166 #: build/C/man3/fmax.3:9
3172 #: build/C/man3/fmax.3:12
3173 msgid "fmax, fmaxf, fmaxl - determine maximum of two floating-point numbers"
3177 #: build/C/man3/fmax.3:16
3178 msgid "B<double fmax(double >I<x>B<, double >I<y>B<);>"
3182 #: build/C/man3/fmax.3:18
3183 msgid "B<float fmaxf(float >I<x>B<, float >I<y>B<);>"
3187 #: build/C/man3/fmax.3:20
3188 msgid "B<long double fmaxl(long double >I<x>B<, long double >I<y>B<);>"
3192 #: build/C/man3/fmax.3:32
3193 msgid "B<fmax>(), B<fmaxf>(), B<fmaxl>():"
3197 #: build/C/man3/fmax.3:45
3198 msgid "These functions return the larger value of I<x> and I<y>."
3202 #: build/C/man3/fmax.3:50
3203 msgid "These functions return the maximum of I<x> and I<y>."
3207 #: build/C/man3/fmax.3:52 build/C/man3/fmin.3:52
3208 msgid "If one argument is a NaN, the other argument is returned."
3212 #: build/C/man3/fmax.3:54 build/C/man3/fmin.3:54
3213 msgid "If both arguments are NaN, a NaN is returned."
3217 #: build/C/man3/fmax.3:66
3218 msgid "The B<fmax>(), B<fmaxf>(), and B<fmaxl>() functions are thread-safe."
3222 #: build/C/man3/fmax.3:70
3227 #: build/C/man3/fmin.3:9
3233 #: build/C/man3/fmin.3:12
3234 msgid "fmin, fminf, fminl - determine minimum of two floating-point numbers"
3238 #: build/C/man3/fmin.3:16
3239 msgid "B<double fmin(double >I<x>B<, double >I<y>B<);>"
3243 #: build/C/man3/fmin.3:18
3244 msgid "B<float fminf(float >I<x>B<, float >I<y>B<);>"
3248 #: build/C/man3/fmin.3:20
3249 msgid "B<long double fminl(long double >I<x>B<, long double >I<y>B<);>"
3253 #: build/C/man3/fmin.3:32
3254 msgid "B<fmin>(), B<fminf>(), B<fminl>():"
3258 #: build/C/man3/fmin.3:45
3259 msgid "These functions return the lesser value of I<x> and I<y>."
3263 #: build/C/man3/fmin.3:50
3264 msgid "These functions return the minimum of I<x> and I<y>."
3268 #: build/C/man3/fmin.3:66
3269 msgid "The B<fmin>(), B<fminf>(), and B<fminl>() functions are thread-safe."
3273 #: build/C/man3/fmod.3:35
3279 #: build/C/man3/fmod.3:35
3285 #: build/C/man3/fmod.3:38
3286 msgid "fmod, fmodf, fmodl - floating-point remainder function"
3290 #: build/C/man3/fmod.3:43
3292 msgid "B<double fmod(double >I<x>B<, double >I<y>B<);>\n"
3296 #: build/C/man3/fmod.3:45
3298 msgid "B<float fmodf(float >I<x>B<, float >I<y>B<);>\n"
3302 #: build/C/man3/fmod.3:47
3304 msgid "B<long double fmodl(long double >I<x>B<, long double >I<y>B<);>\n"
3308 #: build/C/man3/fmod.3:59
3309 msgid "B<fmodf>(), B<fmodl>():"
3313 #: build/C/man3/fmod.3:87
3315 "The B<fmod>() function computes the floating-point remainder of dividing "
3316 "I<x> by I<y>. The return value is I<x> - I<n> * I<y>, where I<n> is the "
3317 "quotient of I<x> / I<y>, rounded toward zero to an integer."
3321 #: build/C/man3/fmod.3:96
3323 "On success, these functions return the value I<x>\\ -\\ I<n>*I<y>, for some "
3324 "integer I<n>, such that the returned value has the same sign as I<x> and a "
3325 "magnitude less than the magnitude of I<y>."
3329 #: build/C/man3/fmod.3:108
3330 msgid "If I<x> is an infinity, a domain error occurs, and a NaN is returned."
3334 #: build/C/man3/fmod.3:114
3335 msgid "If I<y> is zero, a domain error occurs, and a NaN is returned."
3339 #: build/C/man3/fmod.3:120
3340 msgid "If I<x> is +0 (-0), and I<y> is not zero, +0 (-0) is returned."
3343 #. [XXX see bug above] and \fIx\fP is not a NaN
3345 #: build/C/man3/fmod.3:136 build/C/man3/remainder.3:172
3347 msgid "Domain error: I<y> is zero"
3350 #. http://sources.redhat.com/bugzilla/show_bug.cgi?id=6784
3352 #: build/C/man3/fmod.3:160
3354 "Before version 2.10, the glibc implementation did not set I<errno> to "
3355 "B<EDOM> when a domain error occurred for an infinite I<x>."
3359 #: build/C/man3/fmod.3:162
3360 msgid "B<remainder>(3)"
3364 #: build/C/man3/fpclassify.3:10
3370 #: build/C/man3/fpclassify.3:10 build/C/man3/frexp.3:33 build/C/man3/ilogb.3:29
3376 #: build/C/man3/fpclassify.3:14
3378 "fpclassify, isfinite, isnormal, isnan, isinf - floating-point classification "
3383 #: build/C/man3/fpclassify.3:19
3385 msgid "B<int fpclassify(>I<x>B<);>\n"
3389 #: build/C/man3/fpclassify.3:21
3391 msgid "B<int isfinite(>I<x>B<);>\n"
3395 #: build/C/man3/fpclassify.3:23
3397 msgid "B<int isnormal(>I<x>B<);>\n"
3401 #: build/C/man3/fpclassify.3:25
3403 msgid "B<int isnan(>I<x>B<);>\n"
3407 #: build/C/man3/fpclassify.3:27
3409 msgid "B<int isinf(>I<x>B<);>\n"
3413 #: build/C/man3/fpclassify.3:42
3414 msgid "B<fpclassify>(), B<isfinite>(), B<isnormal>():"
3418 #: build/C/man3/fpclassify.3:76
3420 "Floating point numbers can have special values, such as infinite or NaN. "
3421 "With the macro B<fpclassify(>I<x>B<)> you can find out what type I<x> is. "
3422 "The macro takes any floating-point expression as argument. The result is "
3423 "one of the following values:"
3427 #: build/C/man3/fpclassify.3:76
3433 #: build/C/man3/fpclassify.3:80
3434 msgid "I<x> is \"Not a Number\"."
3438 #: build/C/man3/fpclassify.3:80
3440 msgid "B<FP_INFINITE>"
3444 #: build/C/man3/fpclassify.3:84
3445 msgid "I<x> is either positive infinity or negative infinity."
3449 #: build/C/man3/fpclassify.3:84
3455 #: build/C/man3/fpclassify.3:88
3456 msgid "I<x> is zero."
3460 #: build/C/man3/fpclassify.3:88
3462 msgid "B<FP_SUBNORMAL>"
3466 #: build/C/man3/fpclassify.3:92
3467 msgid "I<x> is too small to be represented in normalized format."
3471 #: build/C/man3/fpclassify.3:92
3473 msgid "B<FP_NORMAL>"
3477 #: build/C/man3/fpclassify.3:96
3479 "if nothing of the above is correct then it must be a normal floating-point "
3484 #: build/C/man3/fpclassify.3:98
3485 msgid "The other macros provide a short answer to some standard questions."
3489 #: build/C/man3/fpclassify.3:98
3491 msgid "B<isfinite(>I<x>B<)>"
3495 #: build/C/man3/fpclassify.3:101
3496 msgid "returns a nonzero value if"
3500 #: build/C/man3/fpclassify.3:103
3501 msgid "(fpclassify(x) != FP_NAN && fpclassify(x) != FP_INFINITE)"
3505 #: build/C/man3/fpclassify.3:103
3507 msgid "B<isnormal(>I<x>B<)>"
3511 #: build/C/man3/fpclassify.3:107
3512 msgid "returns a nonzero value if (fpclassify(x) == FP_NORMAL)"
3516 #: build/C/man3/fpclassify.3:107
3518 msgid "B<isnan(>I<x>B<)>"
3522 #: build/C/man3/fpclassify.3:111
3523 msgid "returns a nonzero value if (fpclassify(x) == FP_NAN)"
3527 #: build/C/man3/fpclassify.3:111
3529 msgid "B<isinf(>I<x>B<)>"
3533 #: build/C/man3/fpclassify.3:118
3534 msgid "returns 1 if I<x> is positive infinity, and -1 if I<x> is negative infinity."
3538 #: build/C/man3/fpclassify.3:128
3540 "The B<fpclassify>(), B<isfinite>(), B<isnormal>(), B<isnan>(), and "
3541 "B<isinf>() macros are thread-safe."
3545 #: build/C/man3/fpclassify.3:130
3546 msgid "C99, POSIX.1."
3550 #: build/C/man3/fpclassify.3:135
3552 "For B<isinf>(), the standards merely say that the return value is nonzero if "
3553 "and only if the argument has an infinite value."
3557 #: build/C/man3/fpclassify.3:142
3559 "In glibc 2.01 and earlier, B<isinf>() returns a nonzero value (actually: 1) "
3560 "if I<x> is positive infinity or negative infinity. (This is all that C99 "
3565 #: build/C/man3/fpclassify.3:147
3566 msgid "B<finite>(3), B<INFINITY>(3), B<isgreater>(3), B<signbit>(3)"
3570 #: build/C/man3/frexp.3:33
3576 #: build/C/man3/frexp.3:37
3578 "frexp, frexpf, frexpl - convert floating-point number to fractional and "
3579 "integral components"
3583 #: build/C/man3/frexp.3:42
3585 msgid "B<double frexp(double >I<x>B<, int *>I<exp>B<);>\n"
3589 #: build/C/man3/frexp.3:44
3591 msgid "B<float frexpf(float >I<x>B<, int *>I<exp>B<);>\n"
3595 #: build/C/man3/frexp.3:46
3597 msgid "B<long double frexpl(long double >I<x>B<, int *>I<exp>B<);>\n"
3601 #: build/C/man3/frexp.3:58
3602 msgid "B<frexpf>(), B<frexpl>():"
3606 #: build/C/man3/frexp.3:74
3608 "The B<frexp>() function is used to split the number I<x> into a normalized "
3609 "fraction and an exponent which is stored in I<exp>."
3613 #: build/C/man3/frexp.3:86
3615 "The B<frexp>() function returns the normalized fraction. If the argument "
3616 "I<x> is not zero, the normalized fraction is I<x> times a power of two, and "
3617 "its absolute value is always in the range 1/2 (inclusive) to 1 (exclusive), "
3622 #: build/C/man3/frexp.3:92
3624 "If I<x> is zero, then the normalized fraction is zero and zero is stored in "
3629 #: build/C/man3/frexp.3:99
3631 "If I<x> is a NaN, a NaN is returned, and the value of I<*exp> is "
3636 #: build/C/man3/frexp.3:106
3638 "If I<x> is positive infinity (negative infinity), positive infinity "
3639 "(negative infinity) is returned, and the value of I<*exp> is unspecified."
3643 #: build/C/man3/frexp.3:116
3644 msgid "The B<frexp>(), B<frexpf>(), and B<frexpl>() functions are thread-safe."
3648 #: build/C/man3/frexp.3:124
3649 msgid "The program below produces results such as the following:"
3653 #: build/C/man3/frexp.3:131
3656 "$B< ./a.out 2560>\n"
3657 "frexp(2560, &e) = 0.625: 0.625 * 2^12 = 2560\n"
3659 "frexp(-4, &e) = -0.5: -0.5 * 2^3 = -4\n"
3663 #: build/C/man3/frexp.3:133 build/C/man3/matherr.3:365
3665 msgid "Program source"
3669 #: build/C/man3/frexp.3:140
3672 "#include E<lt>math.hE<gt>\n"
3673 "#include E<lt>float.hE<gt>\n"
3674 "#include E<lt>stdio.hE<gt>\n"
3675 "#include E<lt>stdlib.hE<gt>\n"
3679 #: build/C/man3/frexp.3:146
3683 "main(int argc, char *argv[])\n"
3690 #: build/C/man3/frexp.3:149
3693 " x = strtod(argv[1], NULL);\n"
3694 " r = frexp(x, &exp);\n"
3698 #: build/C/man3/frexp.3:154
3701 " printf(\"frexp(%g, &e) = %g: %g * %d^%d = %g\\en\",\n"
3702 " x, r, r, FLT_RADIX, exp, x);\n"
3703 " exit(EXIT_SUCCESS);\n"
3708 #: build/C/man3/frexp.3:158
3709 msgid "B<ldexp>(3), B<modf>(3)"
3713 #: build/C/man3/gamma.3:9
3719 #: build/C/man3/gamma.3:9
3725 #: build/C/man3/gamma.3:12
3726 msgid "gamma, gammaf, gammal - (logarithm of the) gamma function"
3730 #: build/C/man3/gamma.3:16
3731 msgid "B<double gamma(double >I<x>B<);>"
3735 #: build/C/man3/gamma.3:18
3736 msgid "B<float gammaf(float >I<x>B<);>"
3740 #: build/C/man3/gamma.3:20
3741 msgid "B<long double gammal(long double >I<x>B<);>"
3745 #: build/C/man3/gamma.3:30
3750 #: build/C/man3/gamma.3:32 build/C/man3/lgamma.3:69
3751 msgid "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE"
3755 #: build/C/man3/gamma.3:35
3756 msgid "B<gammaf>(), B<gammal>():"
3760 #: build/C/man3/gamma.3:46
3762 "These functions are deprecated: instead, use either the B<tgamma>(3) or the "
3763 "B<lgamma>(3) functions, as appropriate."
3767 #: build/C/man3/gamma.3:49 build/C/man3/lgamma.3:74
3768 msgid "For the definition of the Gamma function, see B<tgamma>(3)."
3772 #: build/C/man3/gamma.3:49
3774 msgid "*BSD version"
3778 #: build/C/man3/gamma.3:53
3780 "The libm in 4.4BSD and some versions of FreeBSD had a B<gamma>() function "
3781 "that computes the Gamma function, as one would expect."
3785 #: build/C/man3/gamma.3:53
3787 msgid "glibc version"
3791 #: build/C/man3/gamma.3:59
3793 "Glibc has a B<gamma>() function that is equivalent to B<lgamma>(3) and "
3794 "computes the natural logarithm of the Gamma function."
3798 #: build/C/man3/gamma.3:62 build/C/man3/gamma.3:65
3799 msgid "See B<lgamma>(3)."
3803 #: build/C/man3/gamma.3:68
3805 "Because of historical variations in behavior across systems, this function "
3806 "is not specified in any standard."
3810 #: build/C/man3/gamma.3:69
3816 #: build/C/man3/gamma.3:81
3818 "4.2BSD had a B<gamma>() that computed ln(|Gamma(|I<x>|)|), leaving the sign "
3819 "of Gamma(|I<x>|) in the external integer I<signgam>. In 4.3BSD the name "
3820 "was changed to B<lgamma>(3), and the man page promises"
3824 #: build/C/man3/gamma.3:85
3826 "At some time in the future the name gamma will be rehabilitated and used for "
3827 "the Gamma function"
3830 #. The FreeBSD man page says about gamma() that it is like lgamma()
3831 #. except that is does not set signgam.
3832 #. Also, that 4.4BSD has a gamma() that computes the true gamma function.
3834 #: build/C/man3/gamma.3:97
3836 "This did indeed happen in 4.4BSD, where B<gamma>() computes the Gamma "
3837 "function (with no effect on I<signgam>). However, this came too late, and "
3838 "we now have B<tgamma>(3), the \"true gamma\" function."
3842 #: build/C/man3/gamma.3:101
3843 msgid "B<lgamma>(3), B<signgam>(3), B<tgamma>(3)"
3847 #: build/C/man3/hypot.3:33
3853 #: build/C/man3/hypot.3:36
3854 msgid "hypot, hypotf, hypotl - Euclidean distance function"
3858 #: build/C/man3/hypot.3:41
3860 msgid "B<double hypot(double >I<x>B<, double >I<y>B<);>\n"
3864 #: build/C/man3/hypot.3:43
3866 msgid "B<float hypotf(float >I<x>B<, float >I<y>B<);>\n"
3870 #: build/C/man3/hypot.3:45
3872 msgid "B<long double hypotl(long double >I<x>B<, long double >I<y>B<);>\n"
3876 #: build/C/man3/hypot.3:56
3881 #: build/C/man3/hypot.3:66
3882 msgid "B<hypotf>(), B<hypotl>():"
3886 #: build/C/man3/hypot.3:87
3888 "The B<hypot>() function returns sqrt(I<x>*I<x>+I<y>*I<y>). This is the "
3889 "length of the hypotenuse of a right-angled triangle with sides of length "
3890 "I<x> and I<y>, or the distance of the point (I<x>,I<y>) from the origin."
3893 #. e.g., hypot(DBL_MIN, DBL_MIN) does the right thing, as does, say
3894 #. hypot(DBL_MAX/2.0, DBL_MAX/2.0).
3896 #: build/C/man3/hypot.3:92
3898 "The calculation is performed without undue overflow or underflow during the "
3899 "intermediate steps of the calculation."
3903 #: build/C/man3/hypot.3:98
3905 "On success, these functions return the length of a right-angled triangle "
3906 "with sides of length I<x> and I<y>."
3910 #: build/C/man3/hypot.3:105
3911 msgid "If I<x> or I<y> is an infinity, positive infinity is returned."
3915 #: build/C/man3/hypot.3:113
3917 "If I<x> or I<y> is a NaN, and the other argument is not an infinity, a NaN "
3921 #. Actually, could the result not be subnormal if both arguments
3922 #. are subnormal? I think not -- mtk, Jul 2008
3924 #: build/C/man3/hypot.3:128
3926 "If both arguments are subnormal, and the result is subnormal, a range error "
3927 "occurs, and the correct result is returned."
3930 #. FIXME . Is it intentional that these functions do not set errno?
3931 #. They do set errno for the y == 0 case, below.
3932 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6783
3934 #: build/C/man3/hypot.3:158 build/C/man3/ilogb.3:130 build/C/man3/remainder.3:172
3935 msgid "These functions do not set I<errno> for this case."
3939 #: build/C/man3/hypot.3:167
3940 msgid "B<cabs>(3), B<sqrt>(3)"
3944 #: build/C/man3/ilogb.3:29
3950 #: build/C/man3/ilogb.3:32
3951 msgid "ilogb, ilogbf, ilogbl - get integer exponent of a floating-point value"
3955 #: build/C/man3/ilogb.3:36
3956 msgid "B<int ilogb(double >I<x>B<);>"
3960 #: build/C/man3/ilogb.3:38
3961 msgid "B<int ilogbf(float >I<x>B<);>"
3965 #: build/C/man3/ilogb.3:40
3966 msgid "B<int ilogbl(long double >I<x>B<);>"
3970 #: build/C/man3/ilogb.3:50
3975 #: build/C/man3/ilogb.3:62
3976 msgid "B<ilogbf>(), B<ilogbl>():"
3980 #: build/C/man3/ilogb.3:78
3982 "These functions return the exponent part of their argument as a signed "
3983 "integer. When no error occurs, these functions are equivalent to the "
3984 "corresponding B<logb>(3) functions, cast to I<int>."
3988 #: build/C/man3/ilogb.3:82
3990 "On success, these functions return the exponent of I<x>, as a signed "
3994 #. the POSIX.1 spec for logb() says logb() gives pole error for this
3995 #. case, but for ilogb() it says domain error.
3996 #. glibc: The numeric value is either `INT_MIN' or `-INT_MAX'.
3998 #: build/C/man3/ilogb.3:90
4000 "If I<x> is zero, then a domain error occurs, and the functions return "
4004 #. glibc: The numeric value is either `INT_MIN' or `INT_MAX'.
4005 #. On i386, FP_ILOGB0 and FP_ILOGBNAN have the same value.
4007 #: build/C/man3/ilogb.3:97
4009 "If I<x> is a NaN, then a domain error occurs, and the functions return "
4014 #. POSIX.1-2001 also says:
4015 #. If the correct value is greater than {INT_MAX}, {INT_MAX}
4016 #. shall be returned and a domain error shall occur.
4018 #. If the correct value is less than {INT_MIN}, {INT_MIN}
4019 #. shall be returned and a domain error shall occur.
4021 #: build/C/man3/ilogb.3:110
4023 "If I<x> is negative infinity or positive infinity, then a domain error "
4024 "occurs, and the functions return B<INT_MAX>."
4028 #: build/C/man3/ilogb.3:117
4030 msgid "Domain error: I<x> is 0 or a NaN"
4033 #. FIXME . Is it intentional that these functions do not set errno,
4034 #. or raise an exception?
4035 #. log(), log2(), log10() do set errno
4036 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6794
4038 #: build/C/man3/ilogb.3:146
4039 msgid "These functions do not set I<errno> or raise an exception for this case."
4043 #: build/C/man3/ilogb.3:154
4044 msgid "The B<ilogb>(), B<ilogbf>(), and B<ilogbl>() functions are thread-safe."
4048 #: build/C/man3/ilogb.3:160
4049 msgid "B<log>(3), B<logb>(3), B<significand>(3)"
4053 #: build/C/man3/infnan.3:33
4059 #: build/C/man3/infnan.3:33
4065 #: build/C/man3/infnan.3:36
4066 msgid "infnan - deal with infinite or not-a-number (NaN) result"
4070 #: build/C/man3/infnan.3:41
4072 msgid "B<double infnan(int >I<error>B<);>\n"
4076 #: build/C/man3/infnan.3:56
4078 "The B<infnan>() function returns a suitable value for infinity and "
4079 "\"not-a-number\" (NaN) results. The value of I<error> can be B<ERANGE> to "
4080 "represent infinity or anything else to represent NaN. I<errno> is also set."
4084 #: build/C/man3/infnan.3:64
4085 msgid "If I<error> is B<ERANGE> (Infinity), B<HUGE_VAL> is returned."
4089 #: build/C/man3/infnan.3:72
4090 msgid "If I<error> is -B<ERANGE> (-Infinity), -B<HUGE_VAL> is returned."
4094 #: build/C/man3/infnan.3:76
4095 msgid "If I<error> is anything else, NAN is returned."
4099 #: build/C/man3/infnan.3:77
4105 #: build/C/man3/infnan.3:82
4106 msgid "The value of I<error> is \"not-a-number\" (NaN)."
4110 #: build/C/man3/infnan.3:82
4116 #: build/C/man3/infnan.3:87
4117 msgid "The value of I<error> is positive infinity or negative infinity."
4121 #: build/C/man3/infnan.3:89
4126 #: build/C/man3/infnan.3:92
4128 "This obsolete function was provided in libc4 and libc5, but is not available "
4133 #: build/C/man3/isgreater.3:10
4139 #: build/C/man3/isgreater.3:10
4145 #: build/C/man3/isgreater.3:14
4147 "isgreater, isgreaterequal, isless, islessequal, islessgreater, isunordered - "
4148 "floating-point relational tests without exception for NaN"
4152 #: build/C/man3/isgreater.3:19
4154 msgid "B<int isgreater(>I<x>B<, >I<y>B<);>\n"
4158 #: build/C/man3/isgreater.3:21
4160 msgid "B<int isgreaterequal(>I<x>B<, >I<y>B<);>\n"
4164 #: build/C/man3/isgreater.3:23
4166 msgid "B<int isless(>I<x>B<, >I<y>B<);>\n"
4170 #: build/C/man3/isgreater.3:25
4172 msgid "B<int islessequal(>I<x>B<, >I<y>B<);>\n"
4176 #: build/C/man3/isgreater.3:27
4178 msgid "B<int islessgreater(>I<x>B<, >I<y>B<);>\n"
4182 #: build/C/man3/isgreater.3:29
4184 msgid "B<int isunordered(>I<x>B<, >I<y>B<);>\n"
4188 #: build/C/man3/isgreater.3:40
4189 msgid "All functions described here:"
4193 #: build/C/man3/isgreater.3:55
4195 "The normal relation operations (like B<E<lt>>, \"less than\") will fail if "
4196 "one of the operands is NaN. This will cause an exception. To avoid this, "
4197 "C99 defines the macros listed below."
4201 #: build/C/man3/isgreater.3:61
4203 "These macros are guaranteed to evaluate their arguments only once. The "
4204 "arguments must be of real floating-point type (note: do not pass integer "
4205 "values as arguments to these macros, since the arguments will I<not> be "
4206 "promoted to real-floating types)."
4210 #: build/C/man3/isgreater.3:61
4212 msgid "B<isgreater>()"
4216 #: build/C/man3/isgreater.3:69
4217 msgid "determines I<(x)\\ E<gt>\\ (y)> without an exception if I<x> or I<y> is NaN."
4221 #: build/C/man3/isgreater.3:69
4223 msgid "B<isgreaterequal>()"
4227 #: build/C/man3/isgreater.3:77
4229 "determines I<(x)\\ E<gt>=\\ (y)> without an exception if I<x> or I<y> is "
4234 #: build/C/man3/isgreater.3:77
4240 #: build/C/man3/isgreater.3:85
4241 msgid "determines I<(x)\\ E<lt>\\ (y)> without an exception if I<x> or I<y> is NaN."
4245 #: build/C/man3/isgreater.3:85
4247 msgid "B<islessequal>()"
4251 #: build/C/man3/isgreater.3:93
4253 "determines I<(x)\\ E<lt>=\\ (y)> without an exception if I<x> or I<y> is "
4258 #: build/C/man3/isgreater.3:93
4260 msgid "B<islessgreater>()"
4264 #: build/C/man3/isgreater.3:107
4266 "determines I<(x)\\ E<lt> (y) || (x) E<gt>\\ (y)> without an exception if "
4267 "I<x> or I<y> is NaN. This macro is not equivalent to I<x\\ !=\\ y> because "
4268 "that expression is true if I<x> or I<y> is NaN."
4272 #: build/C/man3/isgreater.3:107
4274 msgid "B<isunordered>()"
4278 #: build/C/man3/isgreater.3:111
4280 "determines whether its arguments are unordered, that is, whether at least "
4281 "one of the arguments is a NaN."
4285 #: build/C/man3/isgreater.3:116
4287 "The macros other than B<isunordered>() return the result of the relational "
4288 "comparison; these macros return 0 if either argument is a NaN."
4292 #: build/C/man3/isgreater.3:123
4293 msgid "B<isunordered>() returns 1 if I<x> or I<y> is NaN and 0 otherwise."
4297 #: build/C/man3/isgreater.3:136
4299 "The B<isgreater>(), B<isgreaterequal>(), B<isless>(), B<islessequal>(), "
4300 "B<islessgreater>(), and B<isunordered>() macros are thread-safe."
4304 #: build/C/man3/isgreater.3:143
4306 "Not all hardware supports these functions, and where hardware support isn't "
4307 "provided, they will be emulated by macros. This will result in a "
4308 "performance penalty. Don't use these functions if NaN is of no concern for "
4313 #: build/C/man3/isgreater.3:146
4314 msgid "B<fpclassify>(3), B<isnan>(3)"
4318 #: build/C/man3/j0.3:36
4324 #: build/C/man3/j0.3:36 build/C/man3/lgamma.3:11 build/C/man3/lrint.3:27 build/C/man3/y0.3:36
4330 #: build/C/man3/j0.3:40
4332 "j0, j0f, j0l, j1, j1f, j1l, jn, jnf, jnl - Bessel functions of the first "
4337 #: build/C/man3/j0.3:46
4338 msgid "B<double j0(double >I<x>B<);>"
4342 #: build/C/man3/j0.3:48
4343 msgid "B<double j1(double >I<x>B<);>"
4347 #: build/C/man3/j0.3:50
4348 msgid "B<double jn(int >I<n>B<, double >I<x>B<);>"
4352 #: build/C/man3/j0.3:52
4353 msgid "B<float j0f(float >I<x>B<);>"
4357 #: build/C/man3/j0.3:54
4358 msgid "B<float j1f(float >I<x>B<);>"
4362 #: build/C/man3/j0.3:56
4363 msgid "B<float jnf(int >I<n>B<, float >I<x>B<);>"
4367 #: build/C/man3/j0.3:58
4368 msgid "B<long double j0l(long double >I<x>B<);>"
4372 #: build/C/man3/j0.3:60
4373 msgid "B<long double j1l(long double >I<x>B<);>"
4377 #: build/C/man3/j0.3:62
4378 msgid "B<long double jnl(int >I<n>B<, long double >I<x>B<);>"
4382 #: build/C/man3/j0.3:74
4383 msgid "B<j0>(), B<j1>(), B<jn>():"
4387 #: build/C/man3/j0.3:76 build/C/man3/y0.3:76
4388 msgid "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE"
4392 #: build/C/man3/j0.3:84
4393 msgid "B<j0f>(), B<j0l>(), B<j1f>(), B<j1l>(), B<jnf>(), B<jnl>():"
4396 #. Also seems to work: -std=c99 -D_XOPEN_SOURCE
4398 #: build/C/man3/j0.3:87 build/C/man3/y0.3:87
4399 msgid "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600"
4403 #: build/C/man3/j0.3:104
4405 "The B<j0>() and B<j1>() functions return Bessel functions of I<x> of the "
4406 "first kind of orders 0 and 1, respectively. The B<jn>() function returns "
4407 "the Bessel function of I<x> of the first kind of order I<n>."
4411 #: build/C/man3/j0.3:121
4413 "The B<j0f>(), B<j1f>(), and B<jnf>(), functions are versions that take and "
4414 "return I<float> values. The B<j0l>(), B<j1l>(), and B<jnl>() functions are "
4415 "versions that take and return I<long double> values."
4419 #: build/C/man3/j0.3:125
4421 "On success, these functions return the appropriate Bessel value of the first "
4426 #: build/C/man3/j0.3:136
4428 "If I<x> is too large in magnitude, or the result underflows, a range error "
4429 "occurs, and the return value is 0."
4433 #: build/C/man3/j0.3:143
4435 msgid "Range error: result underflow, or I<x> is too large in magnitude"
4438 #. An underflow floating-point exception
4439 #. .RB ( FE_UNDERFLOW )
4442 #: build/C/man3/j0.3:151
4443 msgid "I<errno> is set to B<ERANGE>."
4446 #. FIXME . Is it intentional that these functions do not raise exceptions?
4448 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6805
4450 #: build/C/man3/j0.3:157
4451 msgid "These functions do not raise exceptions for B<fetestexcept>(3)."
4455 #: build/C/man3/j0.3:163 build/C/man3/y0.3:236
4457 "The functions returning I<double> conform to SVr4, 4.3BSD, POSIX.1-2001. "
4458 "The others are nonstandard functions that also exist on the BSDs."
4462 #: build/C/man3/j0.3:172
4464 "There are errors of up to 2e-16 in the values returned by B<j0>(), B<j1>() "
4465 "and B<jn>() for values of I<x> between -8 and 8."
4469 #: build/C/man3/j0.3:174
4474 #: build/C/man3/ldexp.3:34
4480 #: build/C/man3/ldexp.3:34
4486 #: build/C/man3/ldexp.3:37
4488 "ldexp, ldexpf, ldexpl - multiply floating-point number by integral power of "
4493 #: build/C/man3/ldexp.3:42
4495 msgid "B<double ldexp(double >I<x>B<, int >I<exp>B<);>\n"
4499 #: build/C/man3/ldexp.3:44
4501 msgid "B<float ldexpf(float >I<x>B<, int >I<exp>B<);>\n"
4505 #: build/C/man3/ldexp.3:46
4507 msgid "B<long double ldexpl(long double >I<x>B<, int >I<exp>B<);>\n"
4511 #: build/C/man3/ldexp.3:58
4512 msgid "B<ldexpf>(), B<ldexpl>():"
4516 #: build/C/man3/ldexp.3:73
4518 "The B<ldexp>() function returns the result of multiplying the "
4519 "floating-point number I<x> by 2 raised to the power I<exp>."
4523 #: build/C/man3/ldexp.3:76
4524 msgid "On success, these functions return I<x * (2^exp)>."
4528 #: build/C/man3/ldexp.3:82
4529 msgid "If I<exp> is zero, then I<x> is returned."
4533 #: build/C/man3/ldexp.3:106 build/C/man3/scalb.3:133 build/C/man3/scalbln.3:125
4535 "If the result overflows, a range error occurs, and the functions return "
4536 "B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, respectively, with a sign the "
4541 #: build/C/man3/ldexp.3:137
4542 msgid "The B<ldexp>(), B<ldexpf>(), and B<ldexpl>() functions are thread-safe."
4546 #: build/C/man3/ldexp.3:147
4547 msgid "B<frexp>(3), B<modf>(3), B<scalbln>(3)"
4551 #: build/C/man3/lgamma.3:11
4557 #: build/C/man3/lgamma.3:15
4559 "lgamma, lgammaf, lgammal, lgamma_r, lgammaf_r, lgammal_r, signgam - log "
4564 #: build/C/man3/lgamma.3:20
4566 msgid "B<double lgamma(double >I<x>B<);>\n"
4570 #: build/C/man3/lgamma.3:22
4572 msgid "B<float lgammaf(float >I<x>B<);>\n"
4576 #: build/C/man3/lgamma.3:24
4578 msgid "B<long double lgammal(long double >I<x>B<);>\n"
4582 #: build/C/man3/lgamma.3:26
4584 msgid "B<double lgamma_r(double >I<x>B<, int *>I<signp>B<);>\n"
4588 #: build/C/man3/lgamma.3:28
4590 msgid "B<float lgammaf_r(float >I<x>B<, int *>I<signp>B<);>\n"
4594 #: build/C/man3/lgamma.3:30
4596 msgid "B<long double lgammal_r(long double >I<x>B<, int *>I<signp>B<);>\n"
4600 #: build/C/man3/lgamma.3:32
4602 msgid "B<extern int >I<signgam>B<;>\n"
4606 #: build/C/man3/lgamma.3:43
4607 msgid "B<lgamma>():"
4611 #: build/C/man3/lgamma.3:53
4612 msgid "B<lgammaf>(), B<lgammal>():"
4616 #: build/C/man3/lgamma.3:63
4617 msgid "B<lgamma_r>(), B<lgammaf_r>(), B<lgammal_r>():"
4621 #: build/C/man3/lgamma.3:67
4626 #: build/C/man3/lgamma.3:86
4628 "The B<lgamma>() function returns the natural logarithm of the absolute "
4629 "value of the Gamma function. The sign of the Gamma function is returned in "
4630 "the external integer I<signgam> declared in I<E<lt>math.hE<gt>>. It is 1 "
4631 "when the Gamma function is positive or zero, -1 when it is negative."
4635 #: build/C/man3/lgamma.3:96
4637 "Since using a constant location I<signgam> is not thread-safe, the functions "
4638 "B<lgamma_r>(), B<lgammaf_r>(), and B<lgammal_r>() have been introduced; "
4639 "they return the sign via the argument I<signp>."
4643 #: build/C/man3/lgamma.3:98
4644 msgid "On success, these functions return the natural logarithm of Gamma(x)."
4648 #: build/C/man3/lgamma.3:106
4649 msgid "If I<x> is 1 or 2, +0 is returned."
4653 #: build/C/man3/lgamma.3:122
4655 "If I<x> is a nonpositive integer, a pole error occurs, and the functions "
4656 "return +B<HUGE_VAL>, +B<HUGE_VALF>, or +B<HUGE_VALL>, respectively."
4660 #: build/C/man3/lgamma.3:132 build/C/man3/tgamma.3:92
4662 "If the result overflows, a range error occurs, and the functions return "
4663 "B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, respectively, with the correct "
4664 "mathematical sign."
4668 #: build/C/man3/lgamma.3:139
4670 msgid "Pole error: I<x> is a nonpositive integer"
4674 #: build/C/man3/lgamma.3:167
4676 "The B<lgamma>() functions are specified in C99 and POSIX.1-2001. "
4677 "I<signgam> is specified in POSIX.1-2001, but not in C99. The B<lgamma_r>() "
4678 "functions are nonstandard, but present on several other systems."
4681 #. http://sources.redhat.com/bugzilla/show_bug.cgi?id=6777
4683 #: build/C/man3/lgamma.3:177
4685 "In glibc 2.9 and earlier, when a pole error occurs, I<errno> is set to "
4686 "B<EDOM>; instead of the POSIX-mandated B<ERANGE>. Since version 2.10, glibc "
4687 "does the right thing."
4691 #: build/C/man3/lgamma.3:179
4692 msgid "B<tgamma>(3)"
4696 #: build/C/man3/log.3:36
4702 #: build/C/man3/log.3:39
4703 msgid "log, logf, logl - natural logarithmic function"
4707 #: build/C/man3/log.3:44
4709 msgid "B<double log(double >I<x>B<);>\n"
4713 #: build/C/man3/log.3:46
4715 msgid "B<float logf(float >I<x>B<);>\n"
4719 #: build/C/man3/log.3:48
4721 msgid "B<long double logl(long double >I<x>B<);>\n"
4725 #: build/C/man3/log.3:60
4726 msgid "B<logf>(), B<logl>():"
4730 #: build/C/man3/log.3:73
4731 msgid "The B<log>() function returns the natural logarithm of I<x>."
4735 #: build/C/man3/log.3:76
4736 msgid "On success, these functions return the natural logarithm of I<x>."
4740 #: build/C/man3/log.3:85
4741 msgid "If I<x> is 1, the result is +0."
4745 #: build/C/man3/log.3:100 build/C/man3/logb.3:111
4747 "If I<x> is zero, then a pole error occurs, and the functions return "
4748 "-B<HUGE_VAL>, -B<HUGE_VALF>, or -B<HUGE_VALL>, respectively."
4752 #: build/C/man3/log.3:105
4754 "If I<x> is negative (including negative infinity), then a domain error "
4755 "occurs, and a NaN (not a number) is returned."
4759 #: build/C/man3/log.3:112 build/C/man3/y0.3:178
4761 msgid "Domain error: I<x> is negative"
4765 #: build/C/man3/log.3:120
4767 msgid "Pole error: I<x> is zero"
4771 #: build/C/man3/log.3:128 build/C/man3/tgamma.3:132
4773 "I<errno> is set to B<ERANGE>. A divide-by-zero floating-point exception "
4774 "(B<FE_DIVBYZERO>) is raised."
4778 #: build/C/man3/log.3:141
4780 "In glibc 2.5 and earlier, taking the B<log>() of a NaN produces a bogus "
4781 "invalid floating-point (B<FE_INVALID>) exception."
4785 #: build/C/man3/log.3:148
4786 msgid "B<cbrt>(3), B<clog>(3), B<log10>(3), B<log1p>(3), B<log2>(3), B<sqrt>(3)"
4790 #: build/C/man3/log10.3:36
4796 #: build/C/man3/log10.3:39
4797 msgid "log10, log10f, log10l - base-10 logarithmic function"
4801 #: build/C/man3/log10.3:44
4803 msgid "B<double log10(double >I<x>B<);>\n"
4807 #: build/C/man3/log10.3:46
4809 msgid "B<float log10f(float >I<x>B<);>\n"
4813 #: build/C/man3/log10.3:48
4815 msgid "B<long double log10l(long double >I<x>B<);>\n"
4819 #: build/C/man3/log10.3:60
4820 msgid "B<log10f>(), B<log10l>():"
4824 #: build/C/man3/log10.3:73
4825 msgid "The B<log10>() function returns the base 10 logarithm of I<x>."
4829 #: build/C/man3/log10.3:76
4830 msgid "On success, these functions return the base 10 logarithm of I<x>."
4834 #: build/C/man3/log10.3:81 build/C/man3/log2.3:81
4836 "For special cases, including where I<x> is 0, 1, negative, infinity, or NaN, "
4841 #: build/C/man3/log10.3:89 build/C/man3/log2.3:89
4843 "For a discussion of the errors that can occur for these functions, see "
4848 #: build/C/man3/log10.3:102
4849 msgid "B<cbrt>(3), B<clog10>(3), B<exp10>(3), B<log>(3), B<log2>(3), B<sqrt>(3)"
4853 #: build/C/man3/log1p.3:29
4859 #: build/C/man3/log1p.3:29 build/C/man3/logb.3:29
4865 #: build/C/man3/log1p.3:32
4866 msgid "log1p, log1pf, log1pl - logarithm of 1 plus argument"
4870 #: build/C/man3/log1p.3:37
4872 msgid "B<double log1p(double >I<x>B<);>\n"
4876 #: build/C/man3/log1p.3:39
4878 msgid "B<float log1pf(float >I<x>B<);>\n"
4882 #: build/C/man3/log1p.3:41
4884 msgid "B<long double log1pl(long double >I<x>B<);>\n"
4888 #: build/C/man3/log1p.3:52
4893 #: build/C/man3/log1p.3:63
4894 msgid "B<log1pf>(), B<log1pl>():"
4898 #: build/C/man3/log1p.3:74
4899 msgid "I<log1p(x)> returns a value equivalent to"
4903 #: build/C/man3/log1p.3:77
4905 msgid " log (1 + I<x>)\n"
4909 #: build/C/man3/log1p.3:83
4911 "It is computed in a way that is accurate even if the value of I<x> is near "
4916 #: build/C/man3/log1p.3:86
4917 msgid "On success, these functions return the natural logarithm of I<(1\\ +\\ x)>."
4921 #: build/C/man3/log1p.3:105
4923 "If I<x> is -1, a pole error occurs, and the functions return -B<HUGE_VAL>, "
4924 "-B<HUGE_VALF>, or -B<HUGE_VALL>, respectively."
4927 #. POSIX.1 specifies a possible range error if x is subnormal
4928 #. glibc 2.8 doesn't do this
4930 #: build/C/man3/log1p.3:113
4932 "If I<x> is less than -1 (including negative infinity), a domain error "
4933 "occurs, and a NaN (not a number) is returned."
4937 #: build/C/man3/log1p.3:120
4939 msgid "Domain error: I<x> is less than -1"
4943 #: build/C/man3/log1p.3:128
4945 msgid "Pole error: I<x> is -1"
4952 #: build/C/man3/log1p.3:136 build/C/man3/logb.3:131
4953 msgid "A divide-by-zero floating-point exception (B<FE_DIVBYZERO>) is raised."
4957 #: build/C/man3/log1p.3:150
4958 msgid "The B<log1p>(), B<log1pf>(), and B<log1pl>() functions are thread-safe."
4962 #: build/C/man3/log1p.3:157
4963 msgid "B<exp>(3), B<expm1>(3), B<log>(3)"
4967 #: build/C/man3/log2.3:36
4973 #: build/C/man3/log2.3:36 build/C/man3/pow.3:35
4979 #: build/C/man3/log2.3:39
4980 msgid "log2, log2f, log2l - base-2 logarithmic function"
4984 #: build/C/man3/log2.3:44
4986 msgid "B<double log2(double >I<x>B<);>\n"
4990 #: build/C/man3/log2.3:46
4992 msgid "B<float log2f(float >I<x>B<);>\n"
4996 #: build/C/man3/log2.3:48
4998 msgid "B<long double log2l(long double >I<x>B<);>\n"
5002 #: build/C/man3/log2.3:61
5003 msgid "B<log2>(), B<log2f>(), B<log2l>():"
5007 #: build/C/man3/log2.3:73
5008 msgid "The B<log2>() function returns the base 2 logarithm of I<x>."
5012 #: build/C/man3/log2.3:76
5013 msgid "On success, these functions return the base 2 logarithm of I<x>."
5017 #: build/C/man3/log2.3:103
5018 msgid "B<cbrt>(3), B<clog2>(3), B<log>(3), B<log10>(3), B<sqrt>(3)"
5022 #: build/C/man3/logb.3:29
5028 #: build/C/man3/logb.3:32
5029 msgid "logb, logbf, logbl - get exponent of a floating-point value"
5033 #: build/C/man3/logb.3:36
5034 msgid "B<double logb(double >I<x>B<);>"
5038 #: build/C/man3/logb.3:38
5039 msgid "B<float logbf(float >I<x>B<);>"
5043 #: build/C/man3/logb.3:40
5044 msgid "B<long double logbl(long double >I<x>B<);>"
5048 #: build/C/man3/logb.3:50
5053 #: build/C/man3/logb.3:61
5054 msgid "B<logbf>(), B<logbl>():"
5058 #: build/C/man3/logb.3:86
5060 "These functions extract the exponent from the internal floating-point "
5061 "representation of I<x> and return it as a floating-point value. The integer "
5062 "constant B<FLT_RADIX>, defined in I<E<lt>float.hE<gt>>, indicates the radix "
5063 "used for the system's floating-point representation. If B<FLT_RADIX> is 2, "
5064 "B<logb(>I<x>B<)> is equal to B<floor(log2(>I<x>B<))>, except that it is "
5069 #: build/C/man3/logb.3:94
5071 "If I<x> is subnormal, B<logb>() returns the exponent I<x> would have if it "
5076 #: build/C/man3/logb.3:97
5077 msgid "On success, these functions return the exponent of I<x>."
5081 #: build/C/man3/logb.3:116
5083 "If I<x> is negative infinity or positive infinity, then positive infinity is "
5088 #: build/C/man3/logb.3:123
5090 msgid "Pole error: I<x> is 0"
5094 #: build/C/man3/logb.3:151
5095 msgid "The B<logb>(), B<logbf>(), and B<logbl>() functions are thread-safe."
5099 #: build/C/man3/logb.3:156
5100 msgid "B<ilogb>(3), B<log>(3)"
5104 #: build/C/man3/lrint.3:27
5110 #: build/C/man3/lrint.3:30
5111 msgid "lrint, lrintf, lrintl, llrint, llrintf, llrintl - round to nearest integer"
5115 #: build/C/man3/lrint.3:35
5117 msgid "B<long int lrint(double >I<x>B<);>\n"
5121 #: build/C/man3/lrint.3:37
5123 msgid "B<long int lrintf(float >I<x>B<);>\n"
5127 #: build/C/man3/lrint.3:39
5129 msgid "B<long int lrintl(long double >I<x>B<);>\n"
5133 #: build/C/man3/lrint.3:41
5135 msgid "B<long long int llrint(double >I<x>B<);>\n"
5139 #: build/C/man3/lrint.3:43
5141 msgid "B<long long int llrintf(float >I<x>B<);>\n"
5145 #: build/C/man3/lrint.3:45
5147 msgid "B<long long int llrintl(long double >I<x>B<);>\n"
5151 #: build/C/man3/lrint.3:56 build/C/man3/lround.3:57
5152 msgid "All functions shown above:"
5156 #: build/C/man3/lrint.3:68
5158 "These functions round their argument to the nearest integer value, using the "
5159 "current rounding direction (see B<fesetround>(3))."
5163 #: build/C/man3/lrint.3:74
5165 "Note that unlike the B<rint>(3) family of functions, the return type of "
5166 "these functions differs from that of their arguments."
5170 #: build/C/man3/lrint.3:76 build/C/man3/lround.3:79 build/C/man3/rint.3:113 build/C/man3/round.3:77 build/C/man3/trunc.3:65
5171 msgid "These functions return the rounded integer value."
5174 #. The return value is -(LONG_MAX - 1) or -(LLONG_MAX -1)
5176 #: build/C/man3/lrint.3:88 build/C/man3/lround.3:91
5178 "If I<x> is a NaN or an infinity, or the rounded value is too large to be "
5179 "stored in a I<long> (I<long long> in the case of the B<ll*> functions), then "
5180 "a domain error occurs, and the return value is unspecified."
5184 #: build/C/man3/lrint.3:95 build/C/man3/lround.3:98
5186 msgid "Domain error: I<x> is a NaN or infinite, or the rounded value is too large"
5190 #: build/C/man3/lrint.3:121
5192 "The B<lrint>(), B<lrintf>(), B<lrintl>(), B<llrint>(), B<llrintf>(), and "
5193 "B<llrintl>() functions are thread-safe."
5197 #: build/C/man3/lrint.3:130
5199 "B<ceil>(3), B<floor>(3), B<lround>(3), B<nearbyint>(3), B<rint>(3), "
5204 #: build/C/man3/lround.3:27
5210 #: build/C/man3/lround.3:27 build/C/man3/rint.3:27
5216 #: build/C/man3/lround.3:31
5218 "lround, lroundf, lroundl, llround, llroundf, llroundl - round to nearest "
5219 "integer, away from zero"
5223 #: build/C/man3/lround.3:36
5225 msgid "B<long int lround(double >I<x>B<);>\n"
5229 #: build/C/man3/lround.3:38
5231 msgid "B<long int lroundf(float >I<x>B<);>\n"
5235 #: build/C/man3/lround.3:40
5237 msgid "B<long int lroundl(long double >I<x>B<);>\n"
5241 #: build/C/man3/lround.3:42
5243 msgid "B<long long int llround(double >I<x>B<);>\n"
5247 #: build/C/man3/lround.3:44
5249 msgid "B<long long int llroundf(float >I<x>B<);>\n"
5253 #: build/C/man3/lround.3:46
5255 msgid "B<long long int llroundl(long double >I<x>B<);>\n"
5259 #: build/C/man3/lround.3:70
5261 "These functions round their argument to the nearest integer value, rounding "
5262 "away from zero, regardless of the current rounding direction (see "
5267 #: build/C/man3/lround.3:77
5269 "Note that unlike the B<round>(3) and B<ceil>(3), functions, the return type "
5270 "of these functions differs from that of their arguments."
5274 #: build/C/man3/lround.3:124
5276 "The B<lround>(), B<lroundf>(), B<lroundl>(), B<llround>(), B<llroundf>(), "
5277 "and B<llroundl>() functions are thread-safe."
5281 #: build/C/man3/lround.3:133 build/C/man3/trunc.3:101
5283 "B<ceil>(3), B<floor>(3), B<lrint>(3), B<nearbyint>(3), B<rint>(3), "
5288 #: build/C/man7/math_error.7:26
5294 #: build/C/man7/math_error.7:29
5295 msgid "math_error - detecting errors from mathematical functions"
5299 #: build/C/man7/math_error.7:34
5302 "B<#include E<lt>math.hE<gt>>\n"
5303 "B<#include E<lt>errno.hE<gt>>\n"
5304 "B<#include E<lt>fenv.hE<gt>>\n"
5308 #: build/C/man7/math_error.7:53
5310 "When an error occurs, most library functions indicate this fact by returning "
5311 "a special value (e.g., -1 or NULL). Because they typically return a "
5312 "floating-point number, the mathematical functions declared in "
5313 "I<E<lt>math.hE<gt>> indicate an error using other mechanisms. There are two "
5314 "error-reporting mechanisms: the older one sets I<errno>; the newer one uses "
5315 "the floating-point exception mechanism (the use of B<feclearexcept>(3) and "
5316 "B<fetestexcept>(3), as outlined below) described in B<fenv>(3)."
5320 #: build/C/man7/math_error.7:58
5322 "A portable program that needs to check for an error from a mathematical "
5323 "function should set I<errno> to zero, and make the following call"
5327 #: build/C/man7/math_error.7:62
5329 msgid "feclearexcept(FE_ALL_EXCEPT);\n"
5333 #: build/C/man7/math_error.7:66
5334 msgid "before calling a mathematical function."
5338 #: build/C/man7/math_error.7:72
5340 "Upon return from the mathematical function, if I<errno> is nonzero, or the "
5341 "following call (see B<fenv>(3)) returns nonzero"
5345 #: build/C/man7/math_error.7:77
5348 "fetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW |\n"
5354 #. FE_INVALID = 0x01,
5355 #. __FE_DENORM = 0x02,
5356 #. FE_DIVBYZERO = 0x04,
5357 #. FE_OVERFLOW = 0x08,
5358 #. FE_UNDERFLOW = 0x10,
5359 #. FE_INEXACT = 0x20
5362 #: build/C/man7/math_error.7:90
5363 msgid "then an error occurred in the mathematical function."
5367 #: build/C/man7/math_error.7:93
5369 "The error conditions that can occur for mathematical functions are described "
5374 #: build/C/man7/math_error.7:93
5376 msgid "Domain error"
5380 #: build/C/man7/math_error.7:109
5382 "A I<domain error> occurs when a mathematical function is supplied with an "
5383 "argument whose value falls outside the domain for which the function is "
5384 "defined (e.g., giving a negative argument to B<log>(3)). When a domain "
5385 "error occurs, math functions commonly return a NaN (though some functions "
5386 "return a different value in this case); I<errno> is set to B<EDOM>, and an "
5387 "\"invalid\" (B<FE_INVALID>) floating-point exception is raised."
5391 #: build/C/man7/math_error.7:109
5397 #: build/C/man7/math_error.7:133
5399 "A I<pole error> occurs when the mathematical result of a function is an "
5400 "exact infinity (e.g., the logarithm of 0 is negative infinity). When a pole "
5401 "error occurs, the function returns the (signed) value B<HUGE_VAL>, "
5402 "B<HUGE_VALF>, or B<HUGE_VALL>, depending on whether the function result type "
5403 "is I<double>, I<float>, or I<long double>. The sign of the result is that "
5404 "which is mathematically correct for the function. I<errno> is set to "
5405 "B<ERANGE>, and a \"divide-by-zero\" (B<FE_DIVBYZERO>) floating-point "
5406 "exception is raised."
5410 #: build/C/man7/math_error.7:133
5416 #: build/C/man7/math_error.7:140
5418 "A I<range error> occurs when the magnitude of the function result means that "
5419 "it cannot be represented in the result type of the function. The return "
5420 "value of the function depends on whether the range error was an overflow or "
5425 #: build/C/man7/math_error.7:162
5427 "A floating result I<overflows> if the result is finite, but is too large to "
5428 "represented in the result type. When an overflow occurs, the function "
5429 "returns the value B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, depending on "
5430 "whether the function result type is I<double>, I<float>, or I<long double>. "
5431 "I<errno> is set to B<ERANGE>, and an \"overflow\" (B<FE_OVERFLOW>) "
5432 "floating-point exception is raised."
5436 #: build/C/man7/math_error.7:177
5438 "A floating result I<underflows> if the result is too small to be represented "
5439 "in the result type. If an underflow occurs, a mathematical function "
5440 "typically returns 0.0 (C99 says a function shall return \"an "
5441 "implementation-defined value whose magnitude is no greater than the smallest "
5442 "normalized positive number in the specified type\"). I<errno> may be set to "
5443 "B<ERANGE>, and an \"overflow\" (B<FE_UNDERFLOW>) floating-point exception "
5448 #: build/C/man7/math_error.7:187
5450 "Some functions deliver a range error if the supplied argument value, or the "
5451 "correct function result, would be I<subnormal>. A subnormal value is one "
5452 "that is nonzero, but with a magnitude that is so small that it can't be "
5453 "presented in normalized form (i.e., with a 1 in the most significant bit of "
5454 "the significand). The representation of a subnormal number will contain one "
5455 "or more leading zeros in the significand."
5458 #. See CONFORMANCE in the glibc 2.8 (and earlier) source.
5460 #: build/C/man7/math_error.7:209
5462 "The I<math_errhandling> identifier specified by C99 and POSIX.1-2001 is not "
5463 "supported by glibc. This identifier is supposed to indicate which of the "
5464 "two error-notification mechanisms (I<errno>, exceptions retrievable via "
5465 "B<fettestexcept>(3)) is in use. The standards require that at least one be "
5466 "in use, but permit both to be available. The current (version 2.8) "
5467 "situation under glibc is messy. Most (but not all) functions raise "
5468 "exceptions on errors. Some also set I<errno>. A few functions set "
5469 "I<errno>, but don't raise an exception. A very few functions do neither. "
5470 "See the individual manual pages for details."
5473 #. http://www.securecoding.cert.org/confluence/display/seccode/FLP32-C.+Prevent+or+detect+domain+and+range+errors+in+math+functions
5475 #: build/C/man7/math_error.7:222
5477 "To avoid the complexities of using I<errno> and B<fetestexcept>(3) for "
5478 "error checking, it is often advised that one should instead check for bad "
5479 "argument values before each call. For example, the following code ensures "
5480 "that B<log>(3)'s argument is not a NaN and is not zero (a pole error) or "
5481 "less than zero (a domain error):"
5485 #: build/C/man7/math_error.7:226
5487 msgid "double x, r;\n"
5491 #: build/C/man7/math_error.7:230
5494 "if (isnan(x) || islessequal(x, 0)) {\n"
5495 " /* Deal with NaN / pole error / domain error */\n"
5500 #: build/C/man7/math_error.7:232
5502 msgid "r = log(x);\n"
5506 #: build/C/man7/math_error.7:240
5508 "The discussion on this page does not apply to the complex mathematical "
5509 "functions (i.e., those declared by I<E<lt>complex.hE<gt>>), which in general "
5510 "are not required to return errors by C99 and POSIX.1-2001."
5514 #: build/C/man7/math_error.7:256
5516 "The B<gcc>(1) I<-fno-math-errno> option causes the executable to employ "
5517 "implementations of some mathematical functions that are faster than the "
5518 "standard implementations, but do not set I<errno> on error. (The B<gcc>(1) "
5519 "I<-ffast-math> option also enables I<-fno-math-errno>.) An error can still "
5520 "be tested for using B<fetestexcept>(3)."
5524 #: build/C/man7/math_error.7:265
5526 "B<gcc>(1), B<errno>(3), B<fenv>(3), B<fpclassify>(3), B<INFINITY>(3), "
5527 "B<isgreater>(3), B<matherr>(3), B<nan>(3)"
5531 #: build/C/man7/math_error.7:267
5532 msgid "I<info libc>"
5536 #: build/C/man3/matherr.3:27
5542 #: build/C/man3/matherr.3:27
5548 #: build/C/man3/matherr.3:30
5549 msgid "matherr - SVID math library exception handling"
5553 #: build/C/man3/matherr.3:34
5556 "B<#define _SVID_SOURCE> /* See feature_test_macros(7) */\n"
5557 "B<#include E<lt>math.hE<gt>>\n"
5561 #: build/C/man3/matherr.3:36
5563 msgid "B<int matherr(struct exception *>I<exc>B<);>\n"
5567 #: build/C/man3/matherr.3:38
5569 msgid "B<extern _LIB_VERSION_TYPE _LIB_VERSION;>\n"
5573 #: build/C/man3/matherr.3:51
5575 "The System V Interface Definition (SVID) specifies that various math "
5576 "functions should invoke a function called B<matherr>() if a math exception "
5577 "is detected. This function is called before the math function returns; "
5578 "after B<matherr>() returns, the system then returns to the math function, "
5579 "which in turn returns to the caller."
5583 #: build/C/man3/matherr.3:62
5585 "The B<matherr>() mechanism is supported by glibc, but is now obsolete: new "
5586 "applications should use the techniques described in B<math_error>(7) and "
5587 "B<fenv>(3). This page documents the glibc B<matherr>() mechanism as an aid "
5588 "for maintaining and porting older applications."
5592 #: build/C/man3/matherr.3:75
5594 "To employ B<matherr>(), the programmer must define the B<_SVID_SOURCE> "
5595 "feature test macro (before including I<any> header files), and assign the "
5596 "value B<_SVID_> to the external variable B<_LIB_VERSION>."
5600 #: build/C/man3/matherr.3:87
5602 "The system provides a default version of B<matherr>(). This version does "
5603 "nothing, and returns zero (see below for the significance of this). The "
5604 "default B<matherr>() can be overridden by a programmer-defined version, "
5605 "which will be invoked when an exception occurs. The function is invoked "
5606 "with one argument, a pointer to an I<exception> structure, defined as "
5611 #: build/C/man3/matherr.3:97
5614 "struct exception {\n"
5615 " int type; /* Exception type */\n"
5616 " char *name; /* Name of function causing exception */\n"
5617 " double arg1; /* 1st argument to function */\n"
5618 " double arg2; /* 2nd argument to function */\n"
5619 " double retval; /* Function return value */\n"
5624 #: build/C/man3/matherr.3:103
5625 msgid "The I<type> field has one of the following values:"
5629 #: build/C/man3/matherr.3:103
5635 #: build/C/man3/matherr.3:111
5637 "A domain error occurred (the function argument was outside the range for "
5638 "which the function is defined). The return value depends on the function; "
5639 "I<errno> is set to B<EDOM>."
5643 #: build/C/man3/matherr.3:111
5649 #: build/C/man3/matherr.3:122
5651 "A pole error occurred (the function result is an infinity). The return "
5652 "value in most cases is B<HUGE> (the largest single precision floating-point "
5653 "number), appropriately signed. In most cases, I<errno> is set to B<EDOM>."
5657 #: build/C/man3/matherr.3:122
5663 #: build/C/man3/matherr.3:131
5665 "An overflow occurred. In most cases, the value B<HUGE> is returned, and "
5666 "I<errno> is set to B<ERANGE>."
5670 #: build/C/man3/matherr.3:131
5672 msgid "B<UNDERFLOW>"
5676 #: build/C/man3/matherr.3:138
5677 msgid "An underflow occurred. 0.0 is returned, and I<errno> is set to B<ERANGE>."
5681 #: build/C/man3/matherr.3:138
5687 #: build/C/man3/matherr.3:145
5689 "Total loss of significance. 0.0 is returned, and I<errno> is set to "
5694 #: build/C/man3/matherr.3:145
5700 #: build/C/man3/matherr.3:150
5702 "Partial loss of significance. This value is unused on glibc (and many other "
5707 #: build/C/man3/matherr.3:158
5709 "The I<arg1> and I<arg2> fields are the arguments supplied to the function "
5710 "(I<arg2> is undefined for functions that take only one argument)."
5714 #: build/C/man3/matherr.3:166
5716 "The I<retval> field specifies the return value that the math function will "
5717 "return to its caller. The programmer-defined B<matherr>() can modify this "
5718 "field to change the return value of the math function."
5722 #: build/C/man3/matherr.3:173
5724 "If the B<matherr>() function returns zero, then the system sets I<errno> as "
5725 "described above, and may print an error message on standard error (see "
5730 #: build/C/man3/matherr.3:179
5732 "If the B<matherr>() function returns a nonzero value, then the system does "
5733 "not set I<errno>, and doesn't print an error message."
5737 #: build/C/man3/matherr.3:179
5739 msgid "Math functions that employ matherr()"
5743 #: build/C/man3/matherr.3:189
5745 "The table below lists the functions and circumstances in which B<matherr>() "
5746 "is called. The \"Type\" column indicates the value assigned to "
5747 "I<exc-E<gt>type> when calling B<matherr>(). The \"Result\" column is the "
5748 "default return value assigned to I<exc-E<gt>retval>."
5752 #: build/C/man3/matherr.3:195
5754 "The \"Msg?\" and \"errno\" columns describe the default behavior if "
5755 "B<matherr>() returns zero. If the \"Msg?\" columns contains \"y\", then "
5756 "the system prints an error message on standard error."
5760 #: build/C/man3/matherr.3:197
5761 msgid "The table uses the following notations and abbreviations:"
5765 #: build/C/man3/matherr.3:209
5768 "x first argument to function\n"
5769 "y second argument to function\n"
5770 "fin finite value for argument\n"
5771 "neg negative value for argument\n"
5772 "int integral value for argument\n"
5773 "o/f result overflowed\n"
5774 "u/f result underflowed\n"
5775 "|x| absolute value of x\n"
5776 "X_TLOSS is a constant defined in I<E<lt>math.hE<gt>>\n"
5780 #: build/C/man3/matherr.3:216
5782 msgid "Function\tType\tResult\tMsg?\terrno\n"
5786 #: build/C/man3/matherr.3:217
5788 msgid "acos(|x|E<gt>1)\tDOMAIN\tHUGE\ty\tEDOM\n"
5792 #: build/C/man3/matherr.3:218
5794 msgid "asin(|x|E<gt>1)\tDOMAIN\tHUGE\ty\tEDOM\n"
5798 #: build/C/man3/matherr.3:219
5800 msgid "atan2(0,0)\tDOMAIN\tHUGE\ty\tEDOM\n"
5803 #. retval is 0.0/0.0
5805 #: build/C/man3/matherr.3:220
5807 msgid "acosh(xE<lt>1)\tDOMAIN\tNAN\ty\tEDOM\t\n"
5810 #. retval is 0.0/0.0
5812 #: build/C/man3/matherr.3:221
5814 msgid "atanh(|x|E<gt>1)\tDOMAIN\tNAN\ty\tEDOM\t\n"
5819 #: build/C/man3/matherr.3:222
5821 msgid "atanh(|x|==1)\tSING\t(xE<gt>0.0)?\ty\tEDOM\t\n"
5825 #: build/C/man3/matherr.3:223 build/C/man3/matherr.3:268
5827 msgid "\\ \t\\ \tHUGE_VAL :\n"
5831 #: build/C/man3/matherr.3:224 build/C/man3/matherr.3:269
5833 msgid "\\ \t\\ \t-HUGE_VAL\n"
5837 #: build/C/man3/matherr.3:225
5839 msgid "cosh(fin) o/f\tOVERFLOW\tHUGE\tn\tERANGE\n"
5843 #: build/C/man3/matherr.3:226
5845 msgid "sinh(fin) o/f\tOVERFLOW\t(xE<gt>0.0) ?\tn\tERANGE\n"
5849 #: build/C/man3/matherr.3:227
5851 msgid "\\ \t\\ \tHUGE : -HUGE\n"
5855 #: build/C/man3/matherr.3:228
5857 msgid "sqrt(xE<lt>0)\tDOMAIN\t0.0\ty\tEDOM\n"
5861 #: build/C/man3/matherr.3:229
5863 msgid "hypot(fin,fin) o/f\tOVERFLOW\tHUGE\tn\tERANGE\n"
5867 #: build/C/man3/matherr.3:230
5869 msgid "exp(fin) o/f\tOVERFLOW\tHUGE\tn\tERANGE\n"
5873 #: build/C/man3/matherr.3:231
5875 msgid "exp(fin) u/f\tUNDERFLOW\t0.0\tn\tERANGE\n"
5879 #: build/C/man3/matherr.3:232
5881 msgid "exp2(fin) o/f\tOVERFLOW\tHUGE\tn\tERANGE\n"
5885 #: build/C/man3/matherr.3:233
5887 msgid "exp2(fin) u/f\tUNDERFLOW\t0.0\tn\tERANGE\n"
5891 #: build/C/man3/matherr.3:234
5893 msgid "exp10(fin) o/f\tOVERFLOW\tHUGE\tn\tERANGE\n"
5897 #: build/C/man3/matherr.3:235
5899 msgid "exp10(fin) u/f\tUNDERFLOW\t0.0\tn\tERANGE\n"
5903 #: build/C/man3/matherr.3:236
5905 msgid "j0(|x|E<gt>X_TLOSS)\tTLOSS\t0.0\ty\tERANGE\n"
5909 #: build/C/man3/matherr.3:237
5911 msgid "j1(|x|E<gt>X_TLOSS)\tTLOSS\t0.0\ty\tERANGE\n"
5915 #: build/C/man3/matherr.3:238
5917 msgid "jn(|x|E<gt>X_TLOSS)\tTLOSS\t0.0\ty\tERANGE\n"
5921 #: build/C/man3/matherr.3:239
5923 msgid "y0(xE<gt>X_TLOSS)\tTLOSS\t0.0\ty\tERANGE\n"
5927 #: build/C/man3/matherr.3:240
5929 msgid "y1(xE<gt>X_TLOSS)\tTLOSS\t0.0\ty\tERANGE\n"
5933 #: build/C/man3/matherr.3:241
5935 msgid "yn(xE<gt>X_TLOSS)\tTLOSS\t0.0\ty\tERANGE\n"
5939 #: build/C/man3/matherr.3:242
5941 msgid "y0(0)\tDOMAIN\t-HUGE\ty\tEDOM\n"
5945 #: build/C/man3/matherr.3:243
5947 msgid "y0(xE<lt>0)\tDOMAIN\t-HUGE\ty\tEDOM\n"
5951 #: build/C/man3/matherr.3:244
5953 msgid "y1(0)\tDOMAIN\t-HUGE\ty\tEDOM\n"
5957 #: build/C/man3/matherr.3:245
5959 msgid "y1(xE<lt>0)\tDOMAIN\t-HUGE\ty\tEDOM\n"
5963 #: build/C/man3/matherr.3:246
5965 msgid "yn(n,0)\tDOMAIN\t-HUGE\ty\tEDOM\n"
5969 #: build/C/man3/matherr.3:247
5971 msgid "yn(xE<lt>0)\tDOMAIN\t-HUGE\ty\tEDOM\n"
5975 #: build/C/man3/matherr.3:248
5977 msgid "lgamma(fin) o/f\tOVERFLOW\tHUGE\tn\tERANGE\n"
5981 #: build/C/man3/matherr.3:249
5983 msgid "lgamma(-int) or\tSING\tHUGE\ty\tEDOM\n"
5987 #: build/C/man3/matherr.3:250
5989 msgid "\\ \\ lgamma(0)\n"
5993 #: build/C/man3/matherr.3:251
5995 msgid "tgamma(fin) o/f\tOVERFLOW\tHUGE_VAL\tn\tERANGE\n"
5999 #: build/C/man3/matherr.3:252
6001 msgid "tgamma(-int)\tSING\tNAN\ty\tEDOM\n"
6005 #: build/C/man3/matherr.3:253
6007 msgid "tgamma(0)\tSING\tcopysign(\ty\tERANGE\n"
6011 #: build/C/man3/matherr.3:254
6013 msgid "\\ \t\\ \tHUGE_VAL,x)\n"
6017 #: build/C/man3/matherr.3:255
6019 msgid "log(0)\tSING\t-HUGE\ty\tEDOM\n"
6023 #: build/C/man3/matherr.3:256
6025 msgid "log(xE<lt>0)\tDOMAIN\t-HUGE\ty\tEDOM\n"
6028 #. different from log()
6030 #: build/C/man3/matherr.3:257
6032 msgid "log2(0)\tSING\t-HUGE\tn\tEDOM\t\n"
6035 #. different from log()
6037 #: build/C/man3/matherr.3:258
6039 msgid "log2(xE<lt>0)\tDOMAIN\t-HUGE\tn\tEDOM\t\n"
6043 #: build/C/man3/matherr.3:259
6045 msgid "log10(0)\tSING\t-HUGE\ty\tEDOM\n"
6049 #: build/C/man3/matherr.3:260
6051 msgid "log10(xE<lt>0)\tDOMAIN\t-HUGE\ty\tEDOM\n"
6055 #: build/C/man3/matherr.3:261
6057 msgid "pow(0.0,0.0)\tDOMAIN\t0.0\ty\tEDOM\n"
6061 #: build/C/man3/matherr.3:262
6063 msgid "pow(x,y) o/f\tOVERFLOW\tHUGE\tn\tERANGE\n"
6067 #: build/C/man3/matherr.3:263
6069 msgid "pow(x,y) u/f\tUNDERFLOW\t0.0\tn\tERANGE\n"
6073 #: build/C/man3/matherr.3:264
6075 msgid "pow(NaN,0.0)\tDOMAIN\tx\tn\tEDOM\n"
6080 #: build/C/man3/matherr.3:265
6082 msgid "0**neg\tDOMAIN\t0.0\ty\tEDOM\t\n"
6086 #: build/C/man3/matherr.3:266
6088 msgid "neg**non-int\tDOMAIN\t0.0\ty\tEDOM\n"
6092 #: build/C/man3/matherr.3:267
6094 msgid "scalb() o/f\tOVERFLOW\t(xE<gt>0.0) ?\tn\tERANGE\n"
6098 #: build/C/man3/matherr.3:270
6100 msgid "scalb() u/f\tUNDERFLOW\tcopysign(\tn\tERANGE\n"
6104 #: build/C/man3/matherr.3:271
6106 msgid "\\ \t\\ \t\\ \\ 0.0,x)\n"
6110 #: build/C/man3/matherr.3:272
6112 msgid "fmod(x,0)\tDOMAIN\tx\ty\tEDOM\n"
6115 #. retval is 0.0/0.0
6117 #: build/C/man3/matherr.3:273
6119 msgid "remainder(x,0)\tDOMAIN\tNAN\ty\tEDOM\t\n"
6123 #: build/C/man3/matherr.3:280
6124 msgid "The B<matherr>() function is thread-safe."
6128 #: build/C/man3/matherr.3:301
6130 "The example program demonstrates the use of B<matherr>() when calling "
6131 "B<log>(3). The program takes up to three command-line arguments. The first "
6132 "argument is the floating-point number to be given to B<log>(3). If the "
6133 "optional second argument is provided, then B<_LIB_VERSION> is set to "
6134 "B<_SVID_> so that B<matherr>() is called, and the integer supplied in the "
6135 "command-line argument is used as the return value from B<matherr>(). If the "
6136 "optional third command-line argument is supplied, then it specifies an "
6137 "alternative return value that B<matherr>() should assign as the return "
6138 "value of the math function."
6142 #: build/C/man3/matherr.3:306
6144 "The following example run, where B<log>(3) is given an argument of 0.0, "
6145 "does not use B<matherr>():"
6149 #: build/C/man3/matherr.3:312
6152 "$B< ./a.out 0.0>\n"
6153 "errno: Numerical result out of range\n"
6158 #: build/C/man3/matherr.3:318
6159 msgid "In the following run, B<matherr>() is called, and returns 0:"
6163 #: build/C/man3/matherr.3:328
6166 "$B< ./a.out 0.0 0>\n"
6167 "matherr SING exception in log() function\n"
6168 " args: 0.000000, 0.000000\n"
6169 " retval: -340282346638528859811704183484516925440.000000\n"
6171 "errno: Numerical argument out of domain\n"
6172 "x=-340282346638528859811704183484516925440.000000\n"
6176 #: build/C/man3/matherr.3:332
6177 msgid "The message \"log: SING error\" was printed by the C library."
6181 #: build/C/man3/matherr.3:336
6182 msgid "In the following run, B<matherr>() is called, and returns a nonzero value:"
6186 #: build/C/man3/matherr.3:344
6189 "$B< ./a.out 0.0 1>\n"
6190 "matherr SING exception in log() function\n"
6191 " args: 0.000000, 0.000000\n"
6192 " retval: -340282346638528859811704183484516925440.000000\n"
6193 "x=-340282346638528859811704183484516925440.000000\n"
6197 #: build/C/man3/matherr.3:350
6199 "In this case, the C library did not print a message, and I<errno> was not "
6204 #: build/C/man3/matherr.3:355
6206 "In the following run, B<matherr>() is called, changes the return value of "
6207 "the math function, and returns a nonzero value:"
6211 #: build/C/man3/matherr.3:363
6214 "$B< ./a.out 0.0 1 12345.0>\n"
6215 "matherr SING exception in log() function\n"
6216 " args: 0.000000, 0.000000\n"
6217 " retval: -340282346638528859811704183484516925440.000000\n"
6222 #: build/C/man3/matherr.3:373
6225 "#define _SVID_SOURCE\n"
6226 "#include E<lt>errno.hE<gt>\n"
6227 "#include E<lt>math.hE<gt>\n"
6228 "#include E<lt>stdio.hE<gt>\n"
6229 "#include E<lt>stdlib.hE<gt>\n"
6233 #: build/C/man3/matherr.3:379
6236 "static int matherr_ret = 0; /* Value that matherr()\n"
6237 " should return */\n"
6238 "static int change_retval = 0; /* Should matherr() change\n"
6239 " function\\(aqs return value? */\n"
6240 "static double new_retval; /* New function return value */\n"
6244 #: build/C/man3/matherr.3:394
6248 "matherr(struct exception *exc)\n"
6250 " fprintf(stderr, \"matherr %s exception in %s() function\\en\",\n"
6251 " (exc-E<gt>type == DOMAIN) ? \"DOMAIN\" :\n"
6252 " (exc-E<gt>type == OVERFLOW) ? \"OVERFLOW\" :\n"
6253 " (exc-E<gt>type == UNDERFLOW) ? \"UNDERFLOW\" :\n"
6254 " (exc-E<gt>type == SING) ? \"SING\" :\n"
6255 " (exc-E<gt>type == TLOSS) ? \"TLOSS\" :\n"
6256 " (exc-E<gt>type == PLOSS) ? \"PLOSS\" : \"???\",\n"
6257 " exc-E<gt>name);\n"
6258 " fprintf(stderr, \" args: %f, %f\\en\",\n"
6259 " exc-E<gt>arg1, exc-E<gt>arg2);\n"
6260 " fprintf(stderr, \" retval: %f\\en\", exc-E<gt>retval);\n"
6264 #: build/C/man3/matherr.3:397
6267 " if (change_retval)\n"
6268 " exc-E<gt>retval = new_retval;\n"
6272 #: build/C/man3/matherr.3:400
6275 " return matherr_ret;\n"
6280 #: build/C/man3/matherr.3:405
6284 "main(int argc, char *argv[])\n"
6290 #: build/C/man3/matherr.3:411
6293 " if (argc E<lt> 2) {\n"
6294 " fprintf(stderr, \"Usage: %s E<lt>argvalE<gt>\"\n"
6295 " \" [E<lt>matherr-retE<gt> "
6296 "[E<lt>new-func-retvalE<gt>]]\\en\", argv[0]);\n"
6297 " exit(EXIT_FAILURE);\n"
6302 #: build/C/man3/matherr.3:416
6305 " if (argc E<gt> 2) {\n"
6306 " _LIB_VERSION = _SVID_;\n"
6307 " matherr_ret = atoi(argv[2]);\n"
6312 #: build/C/man3/matherr.3:421
6315 " if (argc E<gt> 3) {\n"
6316 " change_retval = 1;\n"
6317 " new_retval = atof(argv[3]);\n"
6322 #: build/C/man3/matherr.3:425
6325 " x = log(atof(argv[1]));\n"
6326 " if (errno != 0)\n"
6327 " perror(\"errno\");\n"
6331 #: build/C/man3/matherr.3:429
6334 " printf(\"x=%f\\en\", x);\n"
6335 " exit(EXIT_SUCCESS);\n"
6340 #: build/C/man3/matherr.3:434
6341 msgid "B<fenv>(3), B<math_error>(7), B<standards>(7)"
6345 #: build/C/man3/modf.3:33
6351 #: build/C/man3/modf.3:37
6353 "modf, modff, modfl - extract signed integral and fractional values from "
6354 "floating-point number"
6358 #: build/C/man3/modf.3:42
6360 msgid "B<double modf(double >I<x>B<, double *>I<iptr>B<);>\n"
6364 #: build/C/man3/modf.3:44
6366 msgid "B<float modff(float >I<x>B<, float *>I<iptr>B<);>\n"
6370 #: build/C/man3/modf.3:46
6372 msgid "B<long double modfl(long double >I<x>B<, long double *>I<iptr>B<);>\n"
6376 #: build/C/man3/modf.3:58
6377 msgid "B<modf>(), B<modfl>():"
6381 #: build/C/man3/modf.3:76
6383 "The B<modf>() function breaks the argument I<x> into an integral part and a "
6384 "fractional part, each of which has the same sign as I<x>. The integral part "
6385 "is stored in the location pointed to by I<iptr>."
6389 #: build/C/man3/modf.3:81
6390 msgid "The B<modf>() function returns the fractional part of I<x>."
6394 #: build/C/man3/modf.3:87
6395 msgid "If I<x> is a NaN, a NaN is returned, and I<*iptr> is set to a NaN."
6399 #: build/C/man3/modf.3:93
6401 "If I<x> is positive infinity (negative infinity), +0 (-0) is returned, and "
6402 "I<*iptr> is set to positive infinity (negative infinity)."
6406 #: build/C/man3/modf.3:103
6407 msgid "The B<modf>(), B<modff>(), and B<modfl>() functions are thread-safe."
6411 #: build/C/man3/modf.3:112
6412 msgid "B<frexp>(3), B<ldexp>(3)"
6416 #: build/C/man3/nan.3:11
6422 #: build/C/man3/nan.3:14
6423 msgid "nan, nanf, nanl - return 'Not a Number'"
6427 #: build/C/man3/nan.3:18
6428 msgid "B<double nan(const char *>I<tagp>B<);>"
6432 #: build/C/man3/nan.3:20
6433 msgid "B<float nanf(const char *>I<tagp>B<);>"
6437 #: build/C/man3/nan.3:22
6438 msgid "B<long double nanl(const char *>I<tagp>B<);>"
6442 #: build/C/man3/nan.3:34
6443 msgid "B<nan>(), B<nanf>(), B<nanl>():"
6447 #: build/C/man3/nan.3:48
6449 "These functions return a representation (determined by I<tagp>) of a quiet "
6450 "NaN. If the implementation does not support quiet NaNs, these functions "
6455 #: build/C/man3/nan.3:52
6456 msgid "The call I<nan(\"char-sequence\")> is equivalent to:"
6460 #: build/C/man3/nan.3:55
6462 msgid " strtod(\"NAN(char-sequence)\", NULL);\n"
6466 #: build/C/man3/nan.3:65
6468 "Similarly, calls to B<nanf>() and B<nanl>() are equivalent to analogous "
6469 "calls to B<strtof>(3) and B<strtold>(3)."
6473 #: build/C/man3/nan.3:73
6475 "The argument I<tagp> is used in an unspecified manner. On IEEE 754 systems, "
6476 "there are many representations of NaN, and I<tagp> selects one. On other "
6477 "systems it may do nothing."
6481 #: build/C/man3/nan.3:79
6483 "C99, POSIX.1-2001. See also IEC 559 and the appendix with recommended "
6484 "functions in IEEE 754/IEEE 854."
6488 #: build/C/man3/nan.3:83
6489 msgid "B<isnan>(3), B<strtod>(3), B<math_error>(7)"
6493 #: build/C/man3/nextafter.3:11
6499 #: build/C/man3/nextafter.3:11
6505 #: build/C/man3/nextafter.3:15
6507 "nextafter, nextafterf, nextafterl, nexttoward, nexttowardf, nexttowardl - "
6508 "floating-point number manipulation"
6512 #: build/C/man3/nextafter.3:19
6513 msgid "B<double nextafter(double >I<x>B<, double >I<y>B<);>"
6517 #: build/C/man3/nextafter.3:21
6518 msgid "B<float nextafterf(float >I<x>B<, float >I<y>B<);>"
6522 #: build/C/man3/nextafter.3:23
6523 msgid "B<long double nextafterl(long double >I<x>B<, long double >I<y>B<);>"
6527 #: build/C/man3/nextafter.3:25
6528 msgid "B<double nexttoward(double >I<x>B<, long double >I<y>B<);>"
6532 #: build/C/man3/nextafter.3:27
6533 msgid "B<float nexttowardf(float >I<x>B<, long double >I<y>B<);>"
6537 #: build/C/man3/nextafter.3:29
6538 msgid "B<long double nexttowardl(long double >I<x>B<, long double >I<y>B<);>"
6542 #: build/C/man3/nextafter.3:39
6543 msgid "B<nextafter>():"
6547 #: build/C/man3/nextafter.3:51
6548 msgid "B<nextafterf>(), B<nextafterl>():"
6552 #: build/C/man3/nextafter.3:62
6553 msgid "B<nexttoward>(), B<nexttowardf>(), B<nexttowardl>():"
6557 #: build/C/man3/nextafter.3:86
6559 "The B<nextafter>(), B<nextafterf>(), and B<nextafterl>() functions return "
6560 "the next representable floating-point value following I<x> in the direction "
6561 "of I<y>. If I<y> is less than I<x>, these functions will return the largest "
6562 "representable number less than I<x>."
6566 #: build/C/man3/nextafter.3:93
6567 msgid "If I<x> equals I<y>, the functions return I<y>."
6571 #: build/C/man3/nextafter.3:104
6573 "The B<nexttoward>(), B<nexttowardf>(), and B<nexttowardl>() functions do "
6574 "the same as the corresponding B<nextafter>() functions, except that they "
6575 "have a I<long double> second argument."
6579 #: build/C/man3/nextafter.3:110
6581 "On success, these functions return the next representable floating-point "
6582 "value after I<x> in the direction of I<y>."
6586 #: build/C/man3/nextafter.3:120
6587 msgid "If I<x> equals I<y>, then I<y> (cast to the same type as I<x>) is returned."
6592 #: build/C/man3/nextafter.3:140
6594 "If I<x> is finite, and the result would overflow, a range error occurs, and "
6595 "the functions return B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, "
6596 "respectively, with the correct mathematical sign."
6600 #: build/C/man3/nextafter.3:149
6602 "If I<x> is not equal to I<y>, and the correct function result would be "
6603 "subnormal, zero, or underflow, a range error occurs, and either the correct "
6604 "value (if it can be represented), or 0.0, is returned."
6608 #: build/C/man3/nextafter.3:165
6610 msgid "Range error: result is subnormal or underflows"
6614 #: build/C/man3/nextafter.3:190
6616 "The B<nextafter>(), B<nextafterf>(), B<nextafterl>(), B<nexttoward>(), "
6617 "B<nexttowardf>(), and B<nexttowardl>() functions are thread-safe."
6621 #: build/C/man3/nextafter.3:199
6623 "In glibc version 2.5 and earlier, these functions do not raise an underflow "
6624 "floating-point (B<FE_UNDERFLOW>) exception when an underflow occurs."
6628 #: build/C/man3/nextafter.3:201
6629 msgid "B<nearbyint>(3)"
6633 #: build/C/man3/pow.3:35
6639 #: build/C/man3/pow.3:38
6640 msgid "pow, powf, powl - power functions"
6644 #: build/C/man3/pow.3:43
6646 msgid "B<double pow(double >I<x>B<, double >I<y>B<);>\n"
6650 #: build/C/man3/pow.3:45
6652 msgid "B<float powf(float >I<x>B<, float >I<y>B<);>\n"
6656 #: build/C/man3/pow.3:47
6658 msgid "B<long double powl(long double >I<x>B<, long double >I<y>B<);>\n"
6662 #: build/C/man3/pow.3:59
6663 msgid "B<powf>(), B<powl>():"
6667 #: build/C/man3/pow.3:75
6669 "The B<pow>() function returns the value of I<x> raised to the power of "
6674 #: build/C/man3/pow.3:80
6675 msgid "On success, these functions return the value of I<x> to the power of I<y>."
6678 #. The domain error is generated at least as far back as glibc 2.4
6680 #: build/C/man3/pow.3:88
6682 "If I<x> is a finite value less than 0, and I<y> is a finite noninteger, a "
6683 "domain error occurs, and a NaN is returned."
6686 #. The range error is generated at least as far back as glibc 2.4
6688 #: build/C/man3/pow.3:98
6690 "If the result overflows, a range error occurs, and the functions return "
6691 "B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, respectively, with the "
6692 "mathematically correct sign."
6695 #. POSIX.1 does not specify the sign of the zero,
6696 #. but http://sources.redhat.com/bugzilla/show_bug.cgi?id=2678
6697 #. points out that the zero has the wrong sign in some cases.
6699 #: build/C/man3/pow.3:105
6701 "If result underflows, and is not representable, a range error occurs, and "
6706 #: build/C/man3/pow.3:111
6707 msgid "Except as specified below, if I<x> or I<y> is a NaN, the result is a NaN."
6711 #: build/C/man3/pow.3:117
6712 msgid "If I<x> is +1, the result is 1.0 (even if I<y> is a NaN)."
6716 #: build/C/man3/pow.3:123
6717 msgid "If I<y> is 0, the result is 1.0 (even if I<x> is a NaN)."
6721 #: build/C/man3/pow.3:131
6723 "If I<x> is +0 (-0), and I<y> is an odd integer greater than 0, the result is "
6728 #: build/C/man3/pow.3:139
6730 "If I<x> is 0, and I<y> greater than 0 and not an odd integer, the result is "
6735 #: build/C/man3/pow.3:147
6737 "If I<x> is -1, and I<y> is positive infinity or negative infinity, the "
6742 #: build/C/man3/pow.3:155
6744 "If the absolute value of I<x> is less than 1, and I<y> is negative infinity, "
6745 "the result is positive infinity."
6749 #: build/C/man3/pow.3:163
6751 "If the absolute value of I<x> is greater than 1, and I<y> is negative "
6752 "infinity, the result is +0."
6756 #: build/C/man3/pow.3:171
6758 "If the absolute value of I<x> is less than 1, and I<y> is positive infinity, "
6763 #: build/C/man3/pow.3:179
6765 "If the absolute value of I<x> is greater than 1, and I<y> is positive "
6766 "infinity, the result is positive infinity."
6770 #: build/C/man3/pow.3:187
6772 "If I<x> is negative infinity, and I<y> is an odd integer less than 0, the "
6777 #: build/C/man3/pow.3:195
6779 "If I<x> is negative infinity, and I<y> less than 0 and not an odd integer, "
6784 #: build/C/man3/pow.3:203
6786 "If I<x> is negative infinity, and I<y> is an odd integer greater than 0, the "
6787 "result is negative infinity."
6791 #: build/C/man3/pow.3:211
6793 "If I<x> is negative infinity, and I<y> greater than 0 and not an odd "
6794 "integer, the result is positive infinity."
6798 #: build/C/man3/pow.3:219
6799 msgid "If I<x> is positive infinity, and I<y> less than 0, the result is +0."
6803 #: build/C/man3/pow.3:227
6805 "If I<x> is positive infinity, and I<y> greater than 0, the result is "
6806 "positive infinity."
6810 #: build/C/man3/pow.3:242
6812 "If I<x> is +0 or -0, and I<y> is an odd integer less than 0, a pole error "
6813 "occurs and B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, is returned, with the "
6814 "same sign as I<x>."
6817 #. The pole error is generated at least as far back as glibc 2.4
6819 #: build/C/man3/pow.3:256
6821 "If I<x> is +0 or -0, and I<y> is less than 0 and not an odd integer, a pole "
6822 "error occurs and +B<HUGE_VAL>, +B<HUGE_VALF>, or +B<HUGE_VALL>, is returned."
6826 #: build/C/man3/pow.3:283
6828 msgid "Domain error: I<x> is negative, and I<y> is a finite noninteger"
6832 #: build/C/man3/pow.3:291
6834 msgid "Pole error: I<x> is zero, and I<y> is negative"
6838 #: build/C/man3/pow.3:300
6840 msgid "Range error: the result overflows"
6844 #: build/C/man3/pow.3:308
6846 msgid "Range error: the result underflows"
6850 #. http://sources.redhat.com/bugzilla/show_bug.cgi?id=6776
6851 #. or possibly 2.9, I haven't found the source code change
6852 #. and I don't have a 2.9 system to test
6854 #: build/C/man3/pow.3:336
6856 "In glibc 2.9 and earlier, when a pole error occurs, I<errno> is set to "
6857 "B<EDOM> instead of the POSIX-mandated B<ERANGE>. Since version 2.10, glibc "
6858 "does the right thing."
6861 #. see bug http://sources.redhat.com/bugzilla/show_bug.cgi?id=3866
6862 #. and http://sources.redhat.com/bugzilla/show_bug.cgi?id=369
6864 #: build/C/man3/pow.3:356
6866 "If I<x> is negative, then large negative or positive I<y> values yield a NaN "
6867 "as the function result, with I<errno> set to B<EDOM>, and an invalid "
6868 "(B<FE_INVALID>) floating-point exception. For example, with B<pow>(), one "
6869 "sees this behavior when the absolute value of I<y> is greater than about "
6873 #. FIXME . Actually, 2.3.2 is the earliest test result I have; so yet
6874 #. to confirm if this error occurs only in 2.3.2.
6876 #: build/C/man3/pow.3:365
6878 "In version 2.3.2 and earlier, when an overflow or underflow error occurs, "
6879 "glibc's B<pow>() generates a bogus invalid floating-point exception "
6880 "(B<FE_INVALID>) in addition to the overflow or underflow exception."
6884 #: build/C/man3/pow.3:369
6885 msgid "B<cbrt>(3), B<cpow>(3), B<sqrt>(3)"
6889 #: build/C/man3/pow10.3:25
6895 #: build/C/man3/pow10.3:28
6896 msgid "pow10, pow10f, pow10l - base-10 power functions"
6900 #: build/C/man3/pow10.3:32 build/C/man3/sincos.3:16
6903 "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
6904 "B<#include E<lt>math.hE<gt>>\n"
6908 #: build/C/man3/pow10.3:34
6910 msgid "B<double pow10(double >I<x>B<);>\n"
6914 #: build/C/man3/pow10.3:36
6916 msgid "B<float pow10f(float >I<x>B<);>\n"
6920 #: build/C/man3/pow10.3:38
6922 msgid "B<long double pow10l(long double >I<x>B<);>\n"
6926 #: build/C/man3/pow10.3:47
6927 msgid "The B<pow10>() function returns the value of 10 raised to the power I<x>."
6931 #: build/C/man3/pow10.3:51
6932 msgid "This is a GNU extension."
6936 #: build/C/man3/pow10.3:54
6937 msgid "These functions are identical to the functions listed under B<exp10>(3)."
6941 #: build/C/man3/pow10.3:57
6942 msgid "B<exp10>(3), B<pow>(3)"
6946 #: build/C/man3/remainder.3:37
6952 #: build/C/man3/remainder.3:41
6954 "drem, dremf, dreml, remainder, remainderf, remainderl - floating-point "
6955 "remainder function"
6959 #: build/C/man3/remainder.3:49
6962 "/* The C99 versions */\n"
6963 "B<double remainder(double >I<x>B<, double >I<y>B<);>\n"
6964 "B<float remainderf(float >I<x>B<, float >I<y>B<);>\n"
6965 "B<long double remainderl(long double >I<x>B<, long double >I<y>B<);>\n"
6969 #: build/C/man3/remainder.3:54
6972 "/* Obsolete synonyms */\n"
6973 "B<double drem(double >I<x>B<, double >I<y>B<);>\n"
6974 "B<float dremf(float >I<x>B<, float >I<y>B<);>\n"
6975 "B<long double dreml(long double >I<x>B<, long double >I<y>B<);>\n"
6979 #: build/C/man3/remainder.3:65
6980 msgid "B<remainder>():"
6984 #: build/C/man3/remainder.3:70
6986 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || "
6987 "_XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED || _ISOC99_SOURCE || "
6988 "_POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
6992 #: build/C/man3/remainder.3:77
6993 msgid "B<remainderf>(), B<remainderl>():"
6997 #: build/C/man3/remainder.3:88
6998 msgid "B<drem>(), B<dremf>(), B<dreml>():"
7002 #: build/C/man3/remainder.3:90 build/C/man3/significand.3:35
7003 msgid "_SVID_SOURCE || _BSD_SOURCE"
7007 #: build/C/man3/remainder.3:111
7009 "The B<remainder>() function computes the remainder of dividing I<x> by "
7010 "I<y>. The return value is I<x>-I<n>*I<y>, where I<n> is the value I<x\\ /\\ "
7011 "y>, rounded to the nearest integer. If the absolute value of I<x>-I<n>*I<y> "
7012 "is 0.5, I<n> is chosen to be even."
7016 #: build/C/man3/remainder.3:114
7018 "These functions are unaffected by the current rounding mode (see "
7023 #: build/C/man3/remainder.3:118
7024 msgid "The B<drem>() function does precisely the same thing."
7028 #: build/C/man3/remainder.3:124
7030 "On success, these functions return the floating-point remainder, "
7031 "I<x>-I<n>*I<y>. If the return value is 0, it has the sign of I<x>."
7035 #: build/C/man3/remainder.3:139 build/C/man3/remquo.3:92
7037 "If I<x> is an infinity, and I<y> is not a NaN, a domain error occurs, and a "
7042 #: build/C/man3/remainder.3:150 build/C/man3/remquo.3:101
7044 "If I<y> is zero, and I<x> is not a NaN, a domain error occurs, and a NaN is "
7049 #: build/C/man3/remainder.3:157
7051 msgid "Domain error: I<x> is an infinity and I<y> is not a NaN"
7056 #: build/C/man3/remainder.3:188
7058 "The functions B<remainder>(), B<remainderf>(), and B<remainderl>() are "
7059 "specified in C99 and POSIX.1-2001."
7063 #: build/C/man3/remainder.3:204
7065 "The function B<drem>() is from 4.3BSD. The I<float> and I<long double> "
7066 "variants B<dremf>() and B<dreml>() exist on some systems, such as Tru64 "
7067 "and glibc2. Avoid the use of these functions in favor of B<remainder>() "
7072 #: build/C/man3/remainder.3:206
7077 #: build/C/man3/remainder.3:208
7079 msgid " remainder(nan(\"\"), 0);\n"
7082 #. FIXME . this bug occurs as at glibc 2.8.
7083 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6779
7085 #: build/C/man3/remainder.3:213
7087 "returns a NaN, as expected, but wrongly causes a domain error; it should "
7088 "yield a silent NaN."
7092 #: build/C/man3/remainder.3:215
7093 msgid "The call \"remainder(29.0, 3.0)\" returns -1."
7097 #: build/C/man3/remainder.3:219
7098 msgid "B<div>(3), B<fmod>(3), B<remquo>(3)"
7102 #: build/C/man3/remquo.3:12
7108 #: build/C/man3/remquo.3:12
7114 #: build/C/man3/remquo.3:15
7115 msgid "remquo, remquof, remquol - remainder and part of quotient"
7119 #: build/C/man3/remquo.3:20
7121 msgid "B<double remquo(double >I<x>B<, double >I<y>B<, int *>I<quo>B<);>\n"
7125 #: build/C/man3/remquo.3:22
7127 msgid "B<float remquof(float >I<x>B<, float >I<y>B<, int *>I<quo>B<);>\n"
7131 #: build/C/man3/remquo.3:24
7134 "B<long double remquol(long double >I<x>B<, long double >I<y>B<, int "
7139 #: build/C/man3/remquo.3:37
7140 msgid "B<remquo>(), B<remquof>(), B<remquol>():"
7144 #: build/C/man3/remquo.3:55
7146 "These functions compute the remainder and part of the quotient upon division "
7147 "of I<x> by I<y>. A few bits of the quotient are stored via the I<quo> "
7148 "pointer. The remainder is returned as the function result."
7152 #: build/C/man3/remquo.3:59
7154 "The value of the remainder is the same as that computed by the "
7155 "B<remainder>(3) function."
7159 #: build/C/man3/remquo.3:65
7161 "The value stored via the I<quo> pointer has the sign of I<x\\ /\\ y> and "
7162 "agrees with the quotient in at least the low order 3 bits."
7165 #. A possible application of this function might be the computation
7166 #. of sin(x). Compute remquo(x, pi/2, &quo) or so.
7168 #. glibc, UnixWare: return 3 bits
7169 #. MacOS 10: return 7 bits
7171 #: build/C/man3/remquo.3:73
7173 "For example, I<remquo(29.0,\\ 3.0)> returns -1.0 and might store 2. Note "
7174 "that the actual quotient might not fit in an integer."
7178 #: build/C/man3/remquo.3:77
7180 "On success, these functions return the same value as the analogous functions "
7181 "described in B<remainder>(3)."
7185 #: build/C/man3/remquo.3:108
7188 "Domain error: I<x> is an infinity or I<y> is 0, and the other argument is "
7193 #: build/C/man3/remquo.3:132
7194 msgid "The B<remquo>(), B<remquof>(), and B<remquol>() functions are thread-safe."
7198 #: build/C/man3/remquo.3:138
7199 msgid "B<fmod>(3), B<logb>(3), B<remainder>(3)"
7203 #: build/C/man3/rint.3:27
7209 #: build/C/man3/rint.3:31
7211 "nearbyint, nearbyintf, nearbyintl, rint, rintf, rintl - round to nearest "
7216 #: build/C/man3/rint.3:36
7218 msgid "B<double nearbyint(double >I<x>B<);>\n"
7222 #: build/C/man3/rint.3:38
7224 msgid "B<float nearbyintf(float >I<x>B<);>\n"
7228 #: build/C/man3/rint.3:40
7230 msgid "B<long double nearbyintl(long double >I<x>B<);>\n"
7234 #: build/C/man3/rint.3:42
7236 msgid "B<double rint(double >I<x>B<);>\n"
7240 #: build/C/man3/rint.3:44
7242 msgid "B<float rintf(float >I<x>B<);>\n"
7246 #: build/C/man3/rint.3:46
7248 msgid "B<long double rintl(long double >I<x>B<);>\n"
7252 #: build/C/man3/rint.3:59
7253 msgid "B<nearbyint>(), B<nearbyintf>(), B<nearbyintl>():"
7257 #: build/C/man3/rint.3:61
7259 "_XOPEN_SOURCE\\ E<gt>=\\ 600 || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L || "
7264 #: build/C/man3/rint.3:67
7269 #: build/C/man3/rint.3:78
7270 msgid "B<rintf>(), B<rintl>():"
7274 #: build/C/man3/rint.3:98
7276 "The B<nearbyint>(), B<nearbyintf>(), and B<nearbyintl>() functions round "
7277 "their argument to an integer value in floating-point format, using the "
7278 "current rounding direction (see B<fesetround>(3)) and without raising the "
7279 "I<inexact> exception."
7283 #: build/C/man3/rint.3:111
7285 "The B<rint>(), B<rintf>(), and B<rintl>() functions do the same, but will "
7286 "raise the I<inexact> exception (B<FE_INEXACT>, checkable via "
7287 "B<fetestexcept>(3)) when the result differs in value from the argument."
7291 #: build/C/man3/rint.3:133
7293 "The B<nearbyint>(), B<nearbyintf>(), B<nearbyintl>(), B<rint>(), B<rintf>(), "
7294 "and B<rintl>() functions are thread-safe."
7298 #: build/C/man3/rint.3:155
7300 "If you want to store the rounded value in an integer type, you probably want "
7301 "to use one of the functions described in B<lrint>(3) instead."
7305 #: build/C/man3/rint.3:161
7306 msgid "B<ceil>(3), B<floor>(3), B<lrint>(3), B<round>(3), B<trunc>(3)"
7310 #: build/C/man3/round.3:27
7316 #: build/C/man3/round.3:30
7317 msgid "round, roundf, roundl - round to nearest integer, away from zero"
7321 #: build/C/man3/round.3:35
7323 msgid "B<double round(double >I<x>B<);>\n"
7327 #: build/C/man3/round.3:37
7329 msgid "B<float roundf(float >I<x>B<);>\n"
7333 #: build/C/man3/round.3:39
7335 msgid "B<long double roundl(long double >I<x>B<);>\n"
7339 #: build/C/man3/round.3:52
7340 msgid "B<round>(), B<roundf>(), B<roundl>():"
7344 #: build/C/man3/round.3:69
7346 "These functions round I<x> to the nearest integer, but round halfway cases "
7347 "away from zero (regardless of the current rounding direction, see "
7348 "B<fenv>(3)), instead of to the nearest even integer like B<rint>(3)."
7352 #: build/C/man3/round.3:75
7353 msgid "For example, I<round(0.5)> is 1.0, and I<round(-0.5)> is -1.0."
7357 #: build/C/man3/round.3:96
7358 msgid "The B<round>(), B<roundf>(), and B<roundl>() functions are thread-safe."
7361 #. The POSIX.1-2001 APPLICATION USAGE SECTION discusses this point.
7363 #: build/C/man3/round.3:114
7365 "POSIX.1-2001 contains text about overflow (which might set I<errno> to "
7366 "B<ERANGE>, or raise an B<FE_OVERFLOW> exception). In practice, the result "
7367 "cannot overflow on any current machine, so this error-handling stuff is just "
7368 "nonsense. (More precisely, overflow can happen only when the maximum value "
7369 "of the exponent is smaller than the number of mantissa bits. For the "
7370 "IEEE-754 standard 32-bit and 64-bit floating-point numbers the maximum value "
7371 "of the exponent is 128 (respectively, 1024), and the number of mantissa bits "
7372 "is 24 (respectively, 53).)"
7376 #: build/C/man3/round.3:119
7378 "If you want to store the rounded value in an integer type, you probably want "
7379 "to use one of the functions described in B<lround>(3) instead."
7383 #: build/C/man3/round.3:126
7385 "B<ceil>(3), B<floor>(3), B<lround>(3), B<nearbyint>(3), B<rint>(3), "
7390 #: build/C/man3/scalb.3:27
7396 #: build/C/man3/scalb.3:27
7402 #: build/C/man3/scalb.3:31
7404 "scalb, scalbf, scalbl - multiply floating-point number by integral power of "
7409 #: build/C/man3/scalb.3:35
7410 msgid "B<double scalb(double >I<x>B<, double >I<exp>B<);>"
7414 #: build/C/man3/scalb.3:37
7415 msgid "B<float scalbf(float >I<x>B<, float >I<exp>B<);>"
7419 #: build/C/man3/scalb.3:39
7420 msgid "B<long double scalbl(long double >I<x>B<, long double >I<exp>B<);>"
7424 #: build/C/man3/scalb.3:49
7429 #: build/C/man3/scalb.3:52
7431 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || "
7432 "_XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
7436 #: build/C/man3/scalb.3:56
7437 msgid "B<scalbf>(), B<scalbl>():"
7441 #: build/C/man3/scalb.3:69 build/C/man3/scalbln.3:85
7443 "These functions multiply their first argument I<x> by B<FLT_RADIX> (probably "
7444 "2) to the power of I<exp>, that is:"
7448 #: build/C/man3/scalb.3:72 build/C/man3/scalbln.3:88
7450 msgid " x * FLT_RADIX ** exp\n"
7453 #. not in /usr/include but in a gcc lib
7455 #: build/C/man3/scalb.3:79 build/C/man3/scalbln.3:95
7457 "The definition of B<FLT_RADIX> can be obtained by including "
7458 "I<E<lt>float.hE<gt>>."
7462 #: build/C/man3/scalb.3:86 build/C/man3/scalbln.3:102
7463 msgid "On success, these functions return I<x> * B<FLT_RADIX> ** I<exp>."
7467 #: build/C/man3/scalb.3:92
7468 msgid "If I<x> or I<exp> is a NaN, a NaN is returned."
7472 #: build/C/man3/scalb.3:100
7474 "If I<x> is positive infinity (negative infinity), and I<exp> is not negative "
7475 "infinity, positive infinity (negative infinity) is returned."
7479 #: build/C/man3/scalb.3:106
7481 "If I<x> is +0 (-0), and I<exp> is not positive infinity, +0 (-0) is "
7486 #: build/C/man3/scalb.3:114
7488 "If I<x> is zero, and I<exp> is positive infinity, a domain error occurs, and "
7489 "a NaN is returned."
7493 #: build/C/man3/scalb.3:123
7495 "If I<x> is an infinity, and I<exp> is negative infinity, a domain error "
7496 "occurs, and a NaN is returned."
7500 #: build/C/man3/scalb.3:138 build/C/man3/scalbln.3:130
7502 "If the result underflows, a range error occurs, and the functions return "
7503 "zero, with a sign the same as I<x>."
7507 #: build/C/man3/scalb.3:145
7510 "Domain error: I<x> is 0, and I<exp> is positive infinity, or I<x> is "
7511 "positive infinity and I<exp> is negative infinity and the other argument is "
7516 #: build/C/man3/scalb.3:191
7518 "B<scalb>() is specified in POSIX.1-2001, but marked obsolescent. "
7519 "POSIX.1-2008 removes the specification of B<scalb>(), recommending the use "
7520 "of B<scalbln>(3), B<scalblnf>(3), or B<scalblnl>(3) instead. The "
7521 "B<scalb>() function is from 4.3BSD."
7524 #. Looking at header files: scalbf() is present on the
7525 #. BSDs, Tru64, HP-UX 11, Irix 6.5; scalbl() is on HP-UX 11 and Tru64.
7527 #: build/C/man3/scalb.3:200
7529 "B<scalbf>() and B<scalbl>() are unstandardized; B<scalbf>() is "
7530 "nevertheless present on several other systems"
7534 #: build/C/man3/scalb.3:203
7535 msgid "B<ldexp>(3), B<scalbln>(3)"
7539 #: build/C/man3/scalbln.3:27
7545 #: build/C/man3/scalbln.3:31
7547 "scalbn, scalbnf, scalbnl, scalbln, scalblnf, scalblnl - multiply "
7548 "floating-point number by integral power of radix"
7552 #: build/C/man3/scalbln.3:35
7553 msgid "B<double scalbln(double >I<x>B<, long int >I<exp>B<);>"
7557 #: build/C/man3/scalbln.3:37
7558 msgid "B<float scalblnf(float >I<x>B<, long int >I<exp>B<);>"
7562 #: build/C/man3/scalbln.3:39
7563 msgid "B<long double scalblnl(long double >I<x>B<, long int >I<exp>B<);>"
7567 #: build/C/man3/scalbln.3:41
7568 msgid "B<double scalbn(double >I<x>B<, int >I<exp>B<);>"
7572 #: build/C/man3/scalbln.3:43
7573 msgid "B<float scalbnf(float >I<x>B<, int >I<exp>B<);>"
7577 #: build/C/man3/scalbln.3:45
7578 msgid "B<long double scalbnl(long double >I<x>B<, int >I<exp>B<);>"
7582 #: build/C/man3/scalbln.3:57
7583 msgid "B<scalbln>(), B<scalblnf>(), B<scalblnl>():"
7587 #: build/C/man3/scalbln.3:68
7588 msgid "B<scalbn>(), B<scalbnf>(), B<scalbnl>():"
7592 #: build/C/man3/scalbln.3:171
7594 "The B<scalbn>(), B<scalbnf>(), B<scalbnl>(), B<scalbln>(), B<scalblnf>(), "
7595 "and B<scalblnl>() functions are thread-safe."
7599 #: build/C/man3/scalbln.3:182
7601 "These functions differ from the obsolete functions described in B<scalb>(3) "
7602 "in the type of their second argument. The functions described on this page "
7603 "have a second argument of an integral type, while those in B<scalb>(3) have "
7604 "a second argument of type I<double>."
7608 #: build/C/man3/scalbln.3:189
7610 "If B<FLT_RADIX> equals 2 (which is usual), then B<scalbn>() is equivalent "
7615 #: build/C/man3/scalbln.3:192
7616 msgid "B<ldexp>(3), B<scalb>(3)"
7620 #: build/C/man3/signbit.3:11
7626 #: build/C/man3/signbit.3:11
7632 #: build/C/man3/signbit.3:14
7633 msgid "signbit - test sign of a real floating-point number"
7637 #: build/C/man3/signbit.3:18
7638 msgid "B<int signbit(>I<x>B<);>"
7642 #: build/C/man3/signbit.3:28
7643 msgid "B<signbit>():"
7647 #: build/C/man3/signbit.3:42
7649 "B<signbit>() is a generic macro which can work on all real floating-point "
7650 "types. It returns a nonzero value if the value of I<x> has its sign bit "
7655 #: build/C/man3/signbit.3:51
7657 "This is not the same as I<x E<lt> 0.0>, because IEEE 754 floating point "
7658 "allows zero to be signed. The comparison I<-0.0 E<lt> 0.0> is false, but "
7659 "I<signbit(-0.0)> will return a nonzero value."
7663 #: build/C/man3/signbit.3:53
7664 msgid "NaNs and infinities have a sign bit."
7668 #: build/C/man3/signbit.3:59
7670 "The B<signbit>() macro returns nonzero if the sign of I<x> is negative; "
7671 "otherwise it returns zero."
7675 #: build/C/man3/signbit.3:66
7676 msgid "The B<signbit>() macro is thread-safe."
7680 #: build/C/man3/signbit.3:72
7681 msgid "B<copysign>(3)"
7685 #: build/C/man3/significand.3:9
7691 #: build/C/man3/significand.3:9
7697 #: build/C/man3/significand.3:13
7699 "significand, significandf, significandl - get mantissa of floating-point "
7704 #: build/C/man3/significand.3:17
7705 msgid "B<double significand(double >I<x>B<);>"
7709 #: build/C/man3/significand.3:19
7710 msgid "B<float significandf(float >I<x>B<);>"
7714 #: build/C/man3/significand.3:21
7715 msgid "B<long double significandl(long double >I<x>B<);>"
7719 #: build/C/man3/significand.3:33
7720 msgid "B<significand>(), B<significandf>(), B<significandl>():"
7724 #: build/C/man3/significand.3:44
7726 "The B<significand>() function returns the mantissa of I<x> scaled to the "
7727 "range [1,2). It is equivalent to"
7731 #: build/C/man3/significand.3:47
7732 msgid "scalb(x, (double) -ilogb(x))"
7736 #: build/C/man3/significand.3:51
7738 "This function exists mainly for use in certain standardized tests for IEEE "
7743 #. This function came from BSD.
7745 #: build/C/man3/significand.3:57
7747 "These functions are nonstandard; the I<double> version is available on a "
7748 "number of other systems."
7752 #: build/C/man3/significand.3:60
7753 msgid "B<ilogb>(3), B<scalb>(3)"
7757 #: build/C/man3/sin.3:35
7763 #: build/C/man3/sin.3:35
7769 #: build/C/man3/sin.3:38
7770 msgid "sin, sinf, sinl - sine function"
7774 #: build/C/man3/sin.3:43
7776 msgid "B<double sin(double >I<x>B<);>\n"
7780 #: build/C/man3/sin.3:45
7782 msgid "B<float sinf(float >I<x>B<);>\n"
7786 #: build/C/man3/sin.3:47
7788 msgid "B<long double sinl(long double >I<x>B<);>\n"
7792 #: build/C/man3/sin.3:59
7793 msgid "B<sinf>(), B<sinl>():"
7797 #: build/C/man3/sin.3:76
7799 "The B<sin>() function returns the sine of I<x>, where I<x> is given in "
7804 #: build/C/man3/sin.3:79
7805 msgid "On success, these functions return the sine of I<x>."
7809 #: build/C/man3/sin.3:116
7810 msgid "The B<sin>(), B<sinf>(), and B<sinl>() functions are thread-safe."
7814 #: build/C/man3/sin.3:138
7816 "B<acos>(3), B<asin>(3), B<atan>(3), B<atan2>(3), B<cos>(3), B<csin>(3), "
7817 "B<sincos>(3), B<tan>(3)"
7821 #: build/C/man3/sincos.3:9
7827 #: build/C/man3/sincos.3:9
7833 #: build/C/man3/sincos.3:12
7834 msgid "sincos, sincosf, sincosl - calculate sin and cos simultaneously"
7838 #: build/C/man3/sincos.3:18
7840 msgid "B<void sincos(double >I<x>B<, double *>I<sin>B<, double *>I<cos>B<);>\n"
7844 #: build/C/man3/sincos.3:20
7846 msgid "B<void sincosf(float >I<x>B<, float *>I<sin>B<, float *>I<cos>B<);>\n"
7850 #: build/C/man3/sincos.3:22
7853 "B<void sincosl(long double >I<x>B<, long double *>I<sin>B<, long double "
7858 #: build/C/man3/sincos.3:32
7860 "Several applications need sine and cosine of the same angle I<x>. This "
7861 "function computes both at the same time, and stores the results in I<*sin> "
7866 #: build/C/man3/sincos.3:40
7867 msgid "If I<x> is a NaN, a NaN is returned in I<*sin> and I<*cos>."
7871 #: build/C/man3/sincos.3:49
7873 "If I<x> is positive infinity or negative infinity, a domain error occurs, "
7874 "and a NaN is returned in I<*sin> and I<*cos>."
7878 #: build/C/man3/sincos.3:52
7879 msgid "These functions return I<void>."
7883 #: build/C/man3/sincos.3:84
7884 msgid "The B<sincos>(), B<sincosf>(), and B<sincosl>() functions are thread-safe."
7888 #: build/C/man3/sincos.3:86
7889 msgid "This function is a GNU extension."
7893 #: build/C/man3/sincos.3:90
7894 msgid "B<cos>(3), B<sin>(3), B<tan>(3)"
7898 #: build/C/man3/sinh.3:36
7904 #: build/C/man3/sinh.3:39
7905 msgid "sinh, sinhf, sinhl - hyperbolic sine function"
7909 #: build/C/man3/sinh.3:44
7911 msgid "B<double sinh(double >I<x>B<);>\n"
7915 #: build/C/man3/sinh.3:46
7917 msgid "B<float sinhf(float >I<x>B<);>\n"
7921 #: build/C/man3/sinh.3:48
7923 msgid "B<long double sinhl(long double >I<x>B<);>\n"
7927 #: build/C/man3/sinh.3:60
7928 msgid "B<sinhf>(), B<sinhl>():"
7932 #: build/C/man3/sinh.3:75
7934 "The B<sinh>() function returns the hyperbolic sine of I<x>, which is "
7935 "defined mathematically as:"
7939 #: build/C/man3/sinh.3:78
7941 msgid " sinh(x) = (exp(x) - exp(-x)) / 2\n"
7945 #: build/C/man3/sinh.3:82
7946 msgid "On success, these functions return the hyperbolic sine of I<x>."
7950 #. POSIX.1-2001 documents an optional range error (underflow)
7952 #. glibc 2.8 does not do this.
7954 #: build/C/man3/sinh.3:109
7956 "If the result overflows, a range error occurs, and the functions return "
7957 "B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, respectively, with the same sign "
7962 #: build/C/man3/sinh.3:137
7963 msgid "B<acosh>(3), B<asinh>(3), B<atanh>(3), B<cosh>(3), B<csinh>(3), B<tanh>(3)"
7967 #: build/C/man3/sqrt.3:34
7973 #: build/C/man3/sqrt.3:37
7974 msgid "sqrt, sqrtf, sqrtl - square root function"
7978 #: build/C/man3/sqrt.3:42
7980 msgid "B<double sqrt(double >I<x>B<);>\n"
7984 #: build/C/man3/sqrt.3:44
7986 msgid "B<float sqrtf(float >I<x>B<);>\n"
7990 #: build/C/man3/sqrt.3:46
7992 msgid "B<long double sqrtl(long double >I<x>B<);>\n"
7996 #: build/C/man3/sqrt.3:58
7997 msgid "B<sqrtf>(), B<sqrtl>():"
8001 #: build/C/man3/sqrt.3:71
8002 msgid "The B<sqrt>() function returns the nonnegative square root of I<x>."
8006 #: build/C/man3/sqrt.3:74
8007 msgid "On success, these functions return the square root of I<x>."
8011 #: build/C/man3/sqrt.3:92
8012 msgid "If I<x> is less than -0, a domain error occurs, and a NaN is returned."
8016 #: build/C/man3/sqrt.3:99
8018 msgid "Domain error: I<x> less than -0"
8022 #: build/C/man3/sqrt.3:117
8023 msgid "B<cbrt>(3), B<csqrt>(3), B<hypot>(3)"
8027 #: build/C/man3/tan.3:35
8033 #: build/C/man3/tan.3:35
8039 #: build/C/man3/tan.3:38
8040 msgid "tan, tanf, tanl - tangent function"
8044 #: build/C/man3/tan.3:43
8046 msgid "B<double tan(double >I<x>B<);>\n"
8050 #: build/C/man3/tan.3:45
8052 msgid "B<float tanf(float >I<x>B<);>\n"
8056 #: build/C/man3/tan.3:47
8058 msgid "B<long double tanl(long double >I<x>B<);>\n"
8062 #: build/C/man3/tan.3:59
8063 msgid "B<tanf>(), B<tanl>():"
8067 #: build/C/man3/tan.3:76
8069 "The B<tan>() function returns the tangent of I<x>, where I<x> is given in "
8074 #: build/C/man3/tan.3:79
8075 msgid "On success, these functions return the tangent of I<x>."
8078 #. I think overflow can't occur, because the closest floating-point
8079 #. representation of pi/2 is still not close enough to pi/2 to
8080 #. produce a large enough value to overflow.
8081 #. Testing certainly seems to bear this out. -- mtk, Jul 08
8083 #. POSIX.1 allows an optional underflow error;
8084 #. glibc 2.8 doesn't do this
8085 #. POSIX.1 an optional range error for subnormal x;
8086 #. glibc 2.8 doesn't do this
8088 #: build/C/man3/tan.3:107
8090 "If the correct result would overflow, a range error occurs, and the "
8091 "functions return B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, respectively, "
8092 "with the mathematically correct sign."
8096 #: build/C/man3/tan.3:141
8097 msgid "The B<tan>(), B<tanf>(), and B<tanl>() functions are thread-safe."
8101 #: build/C/man3/tan.3:162
8103 "B<acos>(3), B<asin>(3), B<atan>(3), B<atan2>(3), B<cos>(3), B<ctan>(3), "
8108 #: build/C/man3/tanh.3:35
8114 #: build/C/man3/tanh.3:35
8120 #: build/C/man3/tanh.3:38
8121 msgid "tanh, tanhf, tanhl - hyperbolic tangent function"
8125 #: build/C/man3/tanh.3:43
8127 msgid "B<double tanh(double >I<x>B<);>\n"
8131 #: build/C/man3/tanh.3:45
8133 msgid "B<float tanhf(float >I<x>B<);>\n"
8137 #: build/C/man3/tanh.3:47
8139 msgid "B<long double tanhl(long double >I<x>B<);>\n"
8143 #: build/C/man3/tanh.3:59
8144 msgid "B<tanhf>(), B<tanhl>():"
8148 #: build/C/man3/tanh.3:74
8150 "The B<tanh>() function returns the hyperbolic tangent of I<x>, which is "
8151 "defined mathematically as:"
8155 #: build/C/man3/tanh.3:77
8157 msgid " tanh(x) = sinh(x) / cosh(x)\n"
8161 #: build/C/man3/tanh.3:81
8162 msgid "On success, these functions return the hyperbolic tangent of I<x>."
8166 #: build/C/man3/tanh.3:108
8167 msgid "The B<tanh>(), B<tanhf>(), and B<tanhl>() functions are thread-safe."
8171 #: build/C/man3/tanh.3:121
8172 msgid "B<acosh>(3), B<asinh>(3), B<atanh>(3), B<cosh>(3), B<ctanh>(3), B<sinh>(3)"
8176 #: build/C/man3/tgamma.3:13
8182 #: build/C/man3/tgamma.3:16
8183 msgid "tgamma, tgammaf, tgammal - true gamma function"
8187 #: build/C/man3/tgamma.3:20
8188 msgid "B<double tgamma(double >I<x>B<);>"
8192 #: build/C/man3/tgamma.3:22
8193 msgid "B<float tgammaf(float >I<x>B<);>"
8197 #: build/C/man3/tgamma.3:24
8198 msgid "B<long double tgammal(long double >I<x>B<);>"
8202 #: build/C/man3/tgamma.3:36
8203 msgid "B<tgamma>(), B<tgammaf>(), B<tgammal>():"
8207 #: build/C/man3/tgamma.3:46
8208 msgid "The Gamma function is defined by"
8212 #: build/C/man3/tgamma.3:48
8214 msgid " Gamma(x) = integral from 0 to infinity of t^(x-1) e^-t dt\n"
8218 #: build/C/man3/tgamma.3:53
8220 "It is defined for every real number except for nonpositive integers. For "
8221 "nonnegative integral I<m> one has"
8225 #: build/C/man3/tgamma.3:55
8227 msgid " Gamma(m+1) = m!\n"
8231 #: build/C/man3/tgamma.3:58
8232 msgid "and, more generally, for all I<x>:"
8236 #: build/C/man3/tgamma.3:60
8238 msgid " Gamma(x+1) = x * Gamma(x)\n"
8242 #: build/C/man3/tgamma.3:64
8244 "Furthermore, the following is valid for all values of I<x> outside the "
8249 #: build/C/man3/tgamma.3:66
8251 msgid " Gamma(x) * Gamma(1 - x) = PI / sin(PI * x)\n"
8255 #: build/C/man3/tgamma.3:69
8256 msgid "On success, these functions return Gamma(x)."
8260 #: build/C/man3/tgamma.3:83
8262 "If I<x> is a negative integer, or is negative infinity, a domain error "
8263 "occurs, and a NaN is returned."
8267 #: build/C/man3/tgamma.3:96
8269 "If the result underflows, a range error occurs, and the functions return 0, "
8270 "with the correct mathematical sign."
8274 #: build/C/man3/tgamma.3:107
8276 "If I<x> is -0 or +0, a pole error occurs, and the functions return "
8277 "B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, respectively, with the same sign "
8282 #: build/C/man3/tgamma.3:114
8284 msgid "Domain error: I<x> is a negative integer, or negative infinity"
8287 #. FIXME . errno is not set to EDOM for x == -inf
8288 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6809
8290 #: build/C/man3/tgamma.3:124
8292 "I<errno> is set to B<EDOM>. An invalid floating-point exception "
8293 "(B<FE_INVALID>) is raised (but see BUGS)."
8297 #: build/C/man3/tgamma.3:124
8299 msgid "Pole error: I<x> is +0 or -0"
8303 #: build/C/man3/tgamma.3:143
8305 "glibc also gives the following error which is not specified in C99 or "
8309 #. FIXME . Is it intentional that errno is not set:
8310 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6810
8312 #. glibc (as at 2.8) also supports and an inexact
8313 #. exception for various cases.
8315 #: build/C/man3/tgamma.3:160
8316 msgid "I<errno> is not set for this case."
8320 #: build/C/man3/tgamma.3:171
8322 "This function had to be called \"true gamma function\" since there is "
8323 "already a function B<gamma>(3) that returns something else (see B<gamma>(3) "
8327 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6809
8329 #: build/C/man3/tgamma.3:179
8331 "If I<x> is negative infinity, I<errno> is not set (it should be set to "
8336 #: build/C/man3/tgamma.3:188
8338 "In glibc versions 2.3.3 and earlier, an argument of +0 or -0 incorrectly "
8339 "produced a domain error (I<errno> set to B<EDOM> and an B<FE_INVALID> "
8340 "exception raised), rather than a pole error."
8344 #: build/C/man3/tgamma.3:191
8345 msgid "B<gamma>(3), B<lgamma>(3)"
8349 #: build/C/man3/trunc.3:25
8355 #: build/C/man3/trunc.3:28
8356 msgid "trunc, truncf, truncl - round to integer, toward zero"
8360 #: build/C/man3/trunc.3:33
8362 msgid "B<double trunc(double >I<x>B<);>\n"
8366 #: build/C/man3/trunc.3:35
8368 msgid "B<float truncf(float >I<x>B<);>\n"
8372 #: build/C/man3/trunc.3:37
8374 msgid "B<long double truncl(long double >I<x>B<);>\n"
8378 #: build/C/man3/trunc.3:50
8379 msgid "B<trunc>(), B<truncf>(), B<truncl>():"
8383 #: build/C/man3/trunc.3:63
8385 "These functions round I<x> to the nearest integer not larger in absolute "
8390 #: build/C/man3/trunc.3:71
8391 msgid "If I<x> is integral, infinite, or NaN, I<x> itself is returned."
8395 #: build/C/man3/trunc.3:83
8396 msgid "The B<trunc>(), B<truncf>(), and B<truncl>() functions are thread-safe."
8400 #: build/C/man3/y0.3:36
8406 #: build/C/man3/y0.3:40
8408 "y0, y0f, y0l, y1, y1f, y1l, yn, ynf, ynl - Bessel functions of the second "
8413 #: build/C/man3/y0.3:45
8415 msgid "B<double y0(double >I<x>B<);>\n"
8419 #: build/C/man3/y0.3:47
8421 msgid "B<double y1(double >I<x>B<);>\n"
8425 #: build/C/man3/y0.3:49
8427 msgid "B<double yn(int >I<n>B<, double >I<x>B<);>\n"
8431 #: build/C/man3/y0.3:51
8433 msgid "B<float y0f(float >I<x>B<);>\n"
8437 #: build/C/man3/y0.3:53
8439 msgid "B<float y1f(float >I<x>B<);>\n"
8443 #: build/C/man3/y0.3:55
8445 msgid "B<float ynf(int >I<n>B<, float >I<x>B<);>\n"
8449 #: build/C/man3/y0.3:57
8451 msgid "B<long double y0l(long double >I<x>B<);>\n"
8455 #: build/C/man3/y0.3:59
8457 msgid "B<long double y1l(long double >I<x>B<);>\n"
8461 #: build/C/man3/y0.3:61
8463 msgid "B<long double ynl(int >I<n>B<, long double >I<x>B<);>\n"
8467 #: build/C/man3/y0.3:74
8468 msgid "B<y0>(), B<y1>(), B<yn>():"
8472 #: build/C/man3/y0.3:84
8473 msgid "B<y0f>(), B<y0l>(), B<y1f>(), B<y1l>(), B<ynf>(), B<ynl>():"
8477 #: build/C/man3/y0.3:105
8479 "The B<y0>() and B<y1>() functions return Bessel functions of I<x> of the "
8480 "second kind of orders 0 and 1, respectively. The B<yn>() function returns "
8481 "the Bessel function of I<x> of the second kind of order I<n>."
8485 #: build/C/man3/y0.3:109
8486 msgid "The value of I<x> must be positive."
8490 #: build/C/man3/y0.3:126
8492 "The B<y0f>(), B<y1f>(), and B<ynf>() functions are versions that take and "
8493 "return I<float> values. The B<y0l>(), B<y1l>(), and B<ynl>() functions are "
8494 "versions that take and return I<long double> values."
8498 #: build/C/man3/y0.3:130
8500 "On success, these functions return the appropriate Bessel value of the "
8501 "second kind for I<x>."
8505 #: build/C/man3/y0.3:146
8507 "If I<x> is negative, a domain error occurs, and the functions return "
8508 "-B<HUGE_VAL>, -B<HUGE_VALF>, or -B<HUGE_VALL>, respectively. (POSIX.1-2001 "
8509 "also allows a NaN return for this case.)"
8513 #: build/C/man3/y0.3:157
8515 "If I<x> is 0.0, a pole error occurs, and the functions return -B<HUGE_VAL>, "
8516 "-B<HUGE_VALF>, or -B<HUGE_VALL>, respectively."
8520 #: build/C/man3/y0.3:161
8521 msgid "If the result underflows, a range error occurs, and the functions return 0.0"
8525 #: build/C/man3/y0.3:171
8527 "If the result overflows, a range error occurs, and the functions return "
8528 "-B<HUGE_VAL>, -B<HUGE_VALF>, or -B<HUGE_VALL>, respectively. (POSIX.1-2001 "
8529 "also allows a 0.0 return for this case.)"
8533 #: build/C/man3/y0.3:186
8535 msgid "Pole error: I<x> is 0.0"
8538 #. Before POSIX.1-2001 TC2, this was (inconsistently) specified
8539 #. as a range error.
8540 #. FIXME . y0(0.0) gives EDOM
8541 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6808
8543 #: build/C/man3/y0.3:201
8545 "I<errno> is set to B<ERANGE> (but see BUGS). No B<FE_DIVBYZERO> exception "
8546 "is returned by B<fetestexcept>(3) for this case."
8549 #. e.g., y0(1e33) on glibc 2.8/x86-32
8550 #. An underflow floating-point exception
8551 #. .RB ( FE_UNDERFLOW )
8553 #. FIXME . Is it intentional that these functions do not use FE_*?
8554 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6806
8556 #: build/C/man3/y0.3:217
8558 "I<errno> is set to B<ERANGE>. No B<FE_UNDERFLOW> exception is returned by "
8559 "B<fetestexcept>(3) for this case."
8562 #. e.g., yn(10, 1e-40) on glibc 2.8/x86-32
8566 #. FIXME . Is it intentional that errno is not set?
8567 #. Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6808
8569 #: build/C/man3/y0.3:230
8571 "I<errno> is not set for this case. An overflow floating-point exception "
8572 "(B<FE_OVERFLOW>) is raised."
8576 #. Bug raised: http://sourceware.org/bugzilla/show_bug.cgi?id=6807
8578 #: build/C/man3/y0.3:246
8580 "On a pole error, these functions set I<errno> to B<EDOM>, instead of "
8581 "B<ERANGE> as POSIX.1-2004 requires."
8584 #. FIXME . Actually, 2.3.2 is the earliest test result I have; so yet
8585 #. to confirm if this error occurs only in 2.3.2.
8587 #: build/C/man3/y0.3:253
8589 "In glibc version 2.3.2 and earlier, these functions do not raise an invalid "
8590 "floating-point exception (B<FE_INVALID>) when a domain error occurs."
8594 #: build/C/man3/y0.3:255