1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
|
# SOME DESCRIPTIVE TITLE
# Copyright (C) YEAR Free Software Foundation, Inc.
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2024-03-01 17:01+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. type: TH
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "math_error"
msgstr ""
#. type: TH
#: archlinux fedora-40 fedora-rawhide mageia-cauldron
#, no-wrap
msgid "2023-10-31"
msgstr ""
#. type: TH
#: archlinux fedora-40 fedora-rawhide mageia-cauldron
#, no-wrap
msgid "Linux man-pages 6.06"
msgstr ""
#. type: SH
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "NAME"
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid "math_error - detecting errors from mathematical functions"
msgstr ""
#. type: SH
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "SYNOPSIS"
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid ""
"B<#include E<lt>math.hE<gt>>\n"
"B<#include E<lt>errno.hE<gt>>\n"
"B<#include E<lt>fenv.hE<gt>>\n"
msgstr ""
#. type: SH
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "DESCRIPTION"
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"When an error occurs, most library functions indicate this fact by returning "
"a special value (e.g., -1 or NULL). Because they typically return a "
"floating-point number, the mathematical functions declared in I<E<lt>math."
"hE<gt>> indicate an error using other mechanisms. There are two error-"
"reporting mechanisms: the older one sets I<errno>; the newer one uses the "
"floating-point exception mechanism (the use of B<feclearexcept>(3) and "
"B<fetestexcept>(3), as outlined below) described in B<fenv>(3)."
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"A portable program that needs to check for an error from a mathematical "
"function should set I<errno> to zero, and make the following call"
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "feclearexcept(FE_ALL_EXCEPT);\n"
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid "before calling a mathematical function."
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"Upon return from the mathematical function, if I<errno> is nonzero, or the "
"following call (see B<fenv>(3)) returns nonzero"
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid ""
"fetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW |\n"
" FE_UNDERFLOW);\n"
msgstr ""
#. enum
#. {
#. FE_INVALID = 0x01,
#. __FE_DENORM = 0x02,
#. FE_DIVBYZERO = 0x04,
#. FE_OVERFLOW = 0x08,
#. FE_UNDERFLOW = 0x10,
#. FE_INEXACT = 0x20
#. };
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid "then an error occurred in the mathematical function."
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"The error conditions that can occur for mathematical functions are described "
"below."
msgstr ""
#. type: SS
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "Domain error"
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"A I<domain error> occurs when a mathematical function is supplied with an "
"argument whose value falls outside the domain for which the function is "
"defined (e.g., giving a negative argument to B<log>(3)). When a domain "
"error occurs, math functions commonly return a NaN (though some functions "
"return a different value in this case); I<errno> is set to B<EDOM>, and an "
"\"invalid\" (B<FE_INVALID>) floating-point exception is raised."
msgstr ""
#. type: SS
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "Pole error"
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"A I<pole error> occurs when the mathematical result of a function is an "
"exact infinity (e.g., the logarithm of 0 is negative infinity). When a pole "
"error occurs, the function returns the (signed) value B<HUGE_VAL>, "
"B<HUGE_VALF>, or B<HUGE_VALL>, depending on whether the function result type "
"is I<double>, I<float>, or I<long double>. The sign of the result is that "
"which is mathematically correct for the function. I<errno> is set to "
"B<ERANGE>, and a \"divide-by-zero\" (B<FE_DIVBYZERO>) floating-point "
"exception is raised."
msgstr ""
#. type: SS
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "Range error"
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"A I<range error> occurs when the magnitude of the function result means that "
"it cannot be represented in the result type of the function. The return "
"value of the function depends on whether the range error was an overflow or "
"an underflow."
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"A floating result I<overflows> if the result is finite, but is too large to "
"represented in the result type. When an overflow occurs, the function "
"returns the value B<HUGE_VAL>, B<HUGE_VALF>, or B<HUGE_VALL>, depending on "
"whether the function result type is I<double>, I<float>, or I<long double>. "
"I<errno> is set to B<ERANGE>, and an \"overflow\" (B<FE_OVERFLOW>) floating-"
"point exception is raised."
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"A floating result I<underflows> if the result is too small to be represented "
"in the result type. If an underflow occurs, a mathematical function "
"typically returns 0.0 (C99 says a function shall return \"an implementation-"
"defined value whose magnitude is no greater than the smallest normalized "
"positive number in the specified type\"). I<errno> may be set to B<ERANGE>, "
"and an \"underflow\" (B<FE_UNDERFLOW>) floating-point exception may be "
"raised."
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"Some functions deliver a range error if the supplied argument value, or the "
"correct function result, would be I<subnormal>. A subnormal value is one "
"that is nonzero, but with a magnitude that is so small that it can't be "
"presented in normalized form (i.e., with a 1 in the most significant bit of "
"the significand). The representation of a subnormal number will contain one "
"or more leading zeros in the significand."
msgstr ""
#. type: SH
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "NOTES"
msgstr ""
#. See CONFORMANCE in the glibc 2.8 (and earlier) source.
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"The I<math_errhandling> identifier specified by C99 and POSIX.1 is not "
"supported by glibc. This identifier is supposed to indicate which of the "
"two error-notification mechanisms (I<errno>, exceptions retrievable via "
"B<fetestexcept>(3)) is in use. The standards require that at least one be "
"in use, but permit both to be available. The current (glibc 2.8) situation "
"under glibc is messy. Most (but not all) functions raise exceptions on "
"errors. Some also set I<errno>. A few functions set I<errno>, but don't "
"raise an exception. A very few functions do neither. See the individual "
"manual pages for details."
msgstr ""
#. http://www.securecoding.cert.org/confluence/display/seccode/FLP32-C.+Prevent+or+detect+domain+and+range+errors+in+math+functions
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"To avoid the complexities of using I<errno> and B<fetestexcept>(3) for "
"error checking, it is often advised that one should instead check for bad "
"argument values before each call. For example, the following code ensures "
"that B<log>(3)'s argument is not a NaN and is not zero (a pole error) or "
"less than zero (a domain error):"
msgstr ""
#. type: Plain text
#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
#: opensuse-tumbleweed
#, no-wrap
msgid ""
"double x, r;\n"
"\\&\n"
"if (isnan(x) || islessequal(x, 0)) {\n"
" /* Deal with NaN / pole error / domain error */\n"
"}\n"
"\\&\n"
"r = log(x);\n"
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"The discussion on this page does not apply to the complex mathematical "
"functions (i.e., those declared by I<E<lt>complex.hE<gt>>), which in general "
"are not required to return errors by C99 and POSIX.1."
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"The B<gcc>(1) I<-fno-math-errno> option causes the executable to employ "
"implementations of some mathematical functions that are faster than the "
"standard implementations, but do not set I<errno> on error. (The B<gcc>(1) "
"I<-ffast-math> option also enables I<-fno-math-errno>.) An error can still "
"be tested for using B<fetestexcept>(3)."
msgstr ""
#. type: SH
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "SEE ALSO"
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"B<gcc>(1), B<errno>(3), B<fenv>(3), B<fpclassify>(3), B<INFINITY>(3), "
"B<isgreater>(3), B<matherr>(3), B<nan>(3)"
msgstr ""
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid "I<info libc>"
msgstr ""
#. type: TH
#: debian-bookworm opensuse-leap-15-6
#, no-wrap
msgid "2022-12-04"
msgstr ""
#. type: TH
#: debian-bookworm
#, no-wrap
msgid "Linux man-pages 6.03"
msgstr ""
#. type: Plain text
#: debian-bookworm opensuse-leap-15-6
#, no-wrap
msgid "double x, r;\n"
msgstr ""
#. type: Plain text
#: debian-bookworm opensuse-leap-15-6
#, no-wrap
msgid ""
"if (isnan(x) || islessequal(x, 0)) {\n"
" /* Deal with NaN / pole error / domain error */\n"
"}\n"
msgstr ""
#. type: Plain text
#: debian-bookworm opensuse-leap-15-6
#, no-wrap
msgid "r = log(x);\n"
msgstr ""
#. type: TH
#: debian-unstable opensuse-tumbleweed
#, no-wrap
msgid "2023-05-03"
msgstr ""
#. type: TH
#: debian-unstable opensuse-tumbleweed
#, no-wrap
msgid "Linux man-pages 6.05.01"
msgstr ""
#. type: TH
#: opensuse-leap-15-6
#, no-wrap
msgid "Linux man-pages 6.04"
msgstr ""
|