1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-30 22:43:12 +03:00
2001-05-14  Bruno Haible  <haible@clisp.cons.org>

	* iconvdata/iso-2022-cn-ext.c (BODY for FROM_LOOP): If SO is seen
	without previous announcement, reject it regularly, don't abort.

2001-05-16  Ulrich Drepper  <drepper@redhat.com>

	* math/tgmath.h: Fix handling of int parameters to binary and
	ternary functions.  Reported by mitr@volny.cz.

	* math/test-tgmath.c: Add tests for calls with integer parameters.

	* manual/llio.texi: Many grammar and typo fixes to the section on AIO.
This commit is contained in:
Ulrich Drepper
2001-05-17 07:11:00 +00:00
parent d1abdd5c07
commit 304d7abfad
4 changed files with 63 additions and 28 deletions

View File

@ -1,3 +1,15 @@
2001-05-14 Bruno Haible <haible@clisp.cons.org>
* iconvdata/iso-2022-cn-ext.c (BODY for FROM_LOOP): If SO is seen
without previous announcement, reject it regularly, don't abort.
2001-05-16 Ulrich Drepper <drepper@redhat.com>
* math/tgmath.h: Fix handling of int parameters to binary and
ternary functions. Reported by mitr@volny.cz.
* math/test-tgmath.c: Add tests for calls with integer parameters.
2001-05-15 Jakub Jelinek <jakub@redhat.com> 2001-05-15 Jakub Jelinek <jakub@redhat.com>
* sunrpc/rpc_thread.c (rpc_default): Remove. * sunrpc/rpc_thread.c (rpc_default): Remove.
@ -13,8 +25,7 @@
2001-05-16 Bruce Mitchener <bruce@cubik.org> 2001-05-16 Bruce Mitchener <bruce@cubik.org>
* manual/llio.texi: Many grammar and typo fixes to the section * manual/llio.texi: Many grammar and typo fixes to the section on AIO.
on AIO.
2001-05-15 Andreas Jaeger <aj@suse.de> 2001-05-15 Andreas Jaeger <aj@suse.de>

View File

@ -260,6 +260,7 @@ enum
XXX For now I'll default to use GB2312. If this is not the \ XXX For now I'll default to use GB2312. If this is not the \
best behavior (e.g., we should flag an error) let me know. */ \ best behavior (e.g., we should flag an error) let me know. */ \
++inptr; \ ++inptr; \
if ((ann & SO_ann) != 0) \
switch (ann & SO_ann) \ switch (ann & SO_ann) \
{ \ { \
case GB2312_ann: \ case GB2312_ann: \
@ -271,10 +272,21 @@ enum
case CNS11643_1_ann: \ case CNS11643_1_ann: \
set = CNS11643_1_set; \ set = CNS11643_1_set; \
break; \ break; \
default: \ case ISO_IR_165_ann: \
assert ((ann & SO_ann) == ISO_IR_165_ann); \
set = ISO_IR_165_set; \ set = ISO_IR_165_set; \
break; \ break; \
default: \
abort (); \
} \
else \
{ \
if (! ignore_errors_p ()) \
{ \
result = __GCONV_ILLEGAL_INPUT; \
break; \
} \
++inptr; \
++*irreversible; \
} \ } \
continue; \ continue; \
} \ } \

View File

@ -41,6 +41,7 @@ int count_float;
int count_ldouble; int count_ldouble;
#define NCALLS 115 #define NCALLS 115
#define NCALLS_INT 4
int int
main (void) main (void)
@ -59,13 +60,13 @@ main (void)
puts ("long double function called for double test"); puts ("long double function called for double test");
result = 1; result = 1;
} }
if (count_double < NCALLS) if (count_double < NCALLS + NCALLS_INT)
{ {
printf ("double functions not called often enough (%d)\n", printf ("double functions not called often enough (%d)\n",
count_double); count_double);
result = 1; result = 1;
} }
else if (count_double > NCALLS) else if (count_double > NCALLS + NCALLS_INT)
{ {
printf ("double functions called too often (%d)\n", printf ("double functions called too often (%d)\n",
count_double); count_double);
@ -131,6 +132,7 @@ main (void)
#define F(name) name #define F(name) name
#define TYPE double #define TYPE double
#define TEST_INT 1
#define x dx #define x dx
#define count count_double #define count count_double
#include "test-tgmath.c" #include "test-tgmath.c"
@ -217,6 +219,13 @@ F(compile_test) (void)
b = fmax (fmax (a, x), fmax (c, b)); b = fmax (fmax (a, x), fmax (c, b));
a = fmin (fmin (x, a), fmin (c, b)); a = fmin (fmin (x, a), fmin (c, b));
b = fma (sin (a), sin (x), sin (c)); b = fma (sin (a), sin (x), sin (c));
#ifdef TEST_INT
a = atan2 (i, b);
b = remquo (i, a, &i);
c = fma (i, b, i);
a = pow (i, c);
#endif
} }
#undef x #undef x
@ -663,4 +672,5 @@ TYPE
#undef F #undef F
#undef TYPE #undef TYPE
#undef count #undef count
#undef TEST_INT
#endif #endif

View File

@ -93,8 +93,8 @@
__tgmres = __tgml(Fct) (Val1, Val2); \ __tgmres = __tgml(Fct) (Val1, Val2); \
else if (sizeof (Val1) == sizeof (double) \ else if (sizeof (Val1) == sizeof (double) \
|| sizeof (Val2) == sizeof (double) \ || sizeof (Val2) == sizeof (double) \
|| __builtin_classify_type ((Val1) \ || __builtin_classify_type (Val1) != 8 \
+ (Val2)) != 8) \ || __builtin_classify_type (Val2) != 8) \
__tgmres = Fct (Val1, Val2); \ __tgmres = Fct (Val1, Val2); \
else \ else \
__tgmres = Fct##f (Val1, Val2); \ __tgmres = Fct##f (Val1, Val2); \
@ -108,8 +108,8 @@
__tgmres = __tgml(Fct) (Val1, Val2, Val3); \ __tgmres = __tgml(Fct) (Val1, Val2, Val3); \
else if (sizeof (Val1) == sizeof (double) \ else if (sizeof (Val1) == sizeof (double) \
|| sizeof (Val2) == sizeof (double) \ || sizeof (Val2) == sizeof (double) \
|| __builtin_classify_type ((Val1) \ || __builtin_classify_type (Val1) != 8 \
+ (Val2)) != 8) \ || __builtin_classify_type (Val2) != 8) \
__tgmres = Fct (Val1, Val2, Val3); \ __tgmres = Fct (Val1, Val2, Val3); \
else \ else \
__tgmres = Fct##f (Val1, Val2, Val3); \ __tgmres = Fct##f (Val1, Val2, Val3); \
@ -126,8 +126,9 @@
else if (sizeof (Val1) == sizeof (double) \ else if (sizeof (Val1) == sizeof (double) \
|| sizeof (Val2) == sizeof (double) \ || sizeof (Val2) == sizeof (double) \
|| sizeof (Val3) == sizeof (double) \ || sizeof (Val3) == sizeof (double) \
|| __builtin_classify_type ((Val1) + (Val2) \ || __builtin_classify_type (Val1) != 8 \
+ (Val3)) != 8) \ || __builtin_classify_type (Val2) != 8 \
|| __builtin_classify_type (Val3) != 8) \
__tgmres = Fct (Val1, Val2, Val3); \ __tgmres = Fct (Val1, Val2, Val3); \
else \ else \
__tgmres = Fct##f (Val1, Val2, Val3); \ __tgmres = Fct##f (Val1, Val2, Val3); \
@ -194,9 +195,10 @@
} \ } \
else if (sizeof (__real__ (Val1)) == sizeof (double) \ else if (sizeof (__real__ (Val1)) == sizeof (double) \
|| sizeof (__real__ (Val2)) == sizeof(double) \ || sizeof (__real__ (Val2)) == sizeof(double) \
|| __builtin_classify_type (__real__ (Val1) \ || (__builtin_classify_type (__real__ (Val1)) \
+ __real__ (Val2))\
!= 8) \ != 8) \
|| (__builtin_classify_type (__real__ (Val2)) \
!= 8)) \
{ \ { \
if (sizeof (__real__ (Val1)) == sizeof (Val1) \ if (sizeof (__real__ (Val1)) == sizeof (Val1) \
&& sizeof (__real__ (Val2)) == sizeof (Val2)) \ && sizeof (__real__ (Val2)) == sizeof (Val2)) \