https://bugs.documentfoundation.org/show_bug.cgi?id=168423

Julien Nabet <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[email protected],
                   |                            |[email protected]
     Ever confirmed|0                           |1
             Status|UNCONFIRMED                 |NEW

--- Comment #1 from Julien Nabet <[email protected]> ---
Either these lines in helpcontent are wrong in:
source/text/sbasic/shared/01020100.xhp:140:<paragraph id="par_id3150953"
role="paragraph" xml-lang="en-US">Double variables can take positive or
negative values ranging from 1.79769313486232 x 10E308 to 4.94065645841247 x
10E-324. Double variables are floating-point variables, in which the decimal
precision decreases as the non-decimal part of the number increases. Double
variables are suitable for precise calculations. Calculations require more time
than for Single variables. A Double variable requires 8 bytes of memory. The
type-declaration character is "#".</paragraph>

source/text/sbasic/shared/03102100.xhp:72:<paragraph id="par_id3148405"
role="paragraph" xml-lang="en-US"> <emph>Double:</emph> Double-precision
floating-point variable (1,79769313486232 x 10E308 - 4,94065645841247 x
10E-324)</paragraph>

or there's a pb here:
    373             if (errno == ERANGE)
    374             {
    375                 // Check for the dreaded rounded to 15 digits max value
    376                 // 1.79769313486232e+308 for 1.7976931348623157e+308 we
wrote
    377                 // everywhere, accept with or without plus sign in
exponent.
    378                 const char* b = buf;
    379                 if (b[0] == '-')
    380                     ++b;
    381                 if (((pCharParseEnd - b == 21) || (pCharParseEnd - b ==
20))
    382                     && !strncmp(b, "1.79769313486232", 16) && (b[16] ==
'e' || b[16] == 'E')
    383                     && (((pCharParseEnd - b == 21) && !strncmp(b + 17,
"+308", 4))
    384                         || ((pCharParseEnd - b == 20) && !strncmp(b +
17, "308", 3))))
    385                 {
    386                     fVal = (buf < b) ? -DBL_MAX : DBL_MAX;
    387                 }
    388                 else
    389                 {
    390                     eStatus = rtl_math_ConversionStatus_OutOfRange;
    391                 }
    392             }

See
https://opengrok.libreoffice.org/xref/core/sal/rtl/math.cxx?r=e7b352e023110876f2e47c2b12319c3683f12b1d#373

Eike: noticing ee2cc952eeb5385ee37485c822d7ad7abd8fb989
"Related: tdf#136272 accept 1.79769313486232e+308 as DBL_MAX"
thought you might have some opinion here.

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to