[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
dinkumware test of glibc
Xose Vazquez Perez
dinkumware test of glibc
Sun, 15 Jun 2003 06:14:57 +0200
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003
dinkumware folks have found several bugs(who knows) in glibc
with 'Dinkum Quick Proofer'(close source and $$):
more info at http://www.dinkumware.com/conform_c.html#glibc230_results
Red Hat LiNUX 8.0 + Glibc V2.3 C Library
- This version of Glibc supports the C95 standard with no failures, and
partially supports the optional math tests. The math functions are all
declared, but the accuracy of these optional functions is not always good.
* The following list of math functions failed to pass our accuracy tests:
acosf, asinf, atanf, atan2f,tanf, coshf, expf, logf, log10f, powf, sinhf,
tanhf, ceill, fabsl, floorl, fmodl, frexpl, frexpl, ldexpl, modfl, acosl,
asinl, atanl, atan2l, tanl, coshl, expl, logl, log10l, powl, sinhl, and tanhl.
- The same issues that were found during the C95 testing are also present when
compiling the tests as C++ code, plus the following.
* The macro LC_MESSAGE is not defined in locale.h.
* The overloads for abs(double) and pow(double, int) are not declared in math.h.
* The long int overloads of the functions abs and div are not defined in the
Standard header stdlib.
* Not all the signatures called for by the C++ Standard for memchr, strchr,
strpbrk, strchr and strstr are declared in string.h.
* The float and the long double versions of the functions ceil, fabs, floor,
fmod, frexp, ldexp, modf, acos, asin, atan, atan2, cos, sin, tan, cosh, exp,
log, log10, sinh, sqrt, and tanh are not defined in math.h.
* Not all the signatures called for by the C++ Standard for wmemchr, wcspbrk,
wcschr, wcsrchr, and wcsstr are dclared in wchar.h.
- C99 support is far less consistent.
* The macros INTN_C can cause compile time failures if certain valid parameters
are passed as the value.
* The hh specifier for d, i, o, u, x, or X conversion specifier does not convert
the value to a signed or unsigned char before printing. This applies to both
the wide and narrow versions of the input/output functions.
* The INTN_C(value) macros defined in stdint.h cause a compile-time error when
the parameter value is INT_LEAST64_MAX, UINT_LEAST8_MAX, UINT_LEAST16_MAX,
UINT_LEAST32_MAX, INTMAX_MAX, or a similar type parameter. The implementation
is appending a suffix to the name, generating an undeclared variable.
* The SCN macros for unsigned integers that correspond to the X specifier for
fscanf in inttypes.h are not implemented.
* If L"" is passed as the format parameter to vwprintf a negative value is
returned, indicating an error occurred.
* fsetpos and fgetpos do not work on a stream that has had wide characters
written to the stream.
* The macro math_errhandling is not defined in math.h
* The math functions fmal, fma, creall, cimagl, crealf, cimagf, cmplx, and csqrt
failed accuracy tests.
* The type generic macros carg, cimag, creal, and fabs fail to expand to the
appropriate type. Argument types float, double, and long double were tested.
* The type generic macro ilogb does not expand to an int with the parameters of
double or long double.
* The type generic macros llrint and llround do not expand to a long long with
the parameters of float and long double.
* The type generic macros lrint and lround do not expand to a long with the
parameters of double and long double.
Software is like sex, it's better when it's bug free.
- dinkumware test of glibc,
Xose Vazquez Perez <=