From 852910694f6d4480afd733a62fd6b93de62b51e6 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Thu, 5 Aug 2004 01:38:31 +0100 Subject: c-common.c (c_stddef_cpp_builtins): Define __INTMAX_TYPE__ and __UINTMAX_TYPE__. * c-common.c (c_stddef_cpp_builtins): Define __INTMAX_TYPE__ and __UINTMAX_TYPE__. * c-cppbuiltin.c (builtin_define_stdint_macros): New. Define __INTMAX_MAX__. (c_cpp_builtins): Call it. * doc/cpp.texi: Update. testsuite: * gcc.c-torture/execute/builtins/abs-2.c, gcc.c-torture/execute/builtins/abs-3.c, gcc.c-torture/execute/builtins/lib/abs.c, gcc.dg/format/format.h, gcc.dg/torture/builtin-attr-1.c: Use predefined macros for intmax_t, uintmax_t and their limits. * gcc.dg/intmax_t-1.c: New test. From-SVN: r85588 --- gcc/testsuite/gcc.c-torture/execute/builtins/abs-2.c | 15 ++------------- gcc/testsuite/gcc.c-torture/execute/builtins/abs-3.c | 15 ++------------- gcc/testsuite/gcc.c-torture/execute/builtins/lib/abs.c | 15 +-------------- 3 files changed, 5 insertions(+), 40 deletions(-) (limited to 'gcc/testsuite/gcc.c-torture') diff --git a/gcc/testsuite/gcc.c-torture/execute/builtins/abs-2.c b/gcc/testsuite/gcc.c-torture/execute/builtins/abs-2.c index 025488d..c13c455 100644 --- a/gcc/testsuite/gcc.c-torture/execute/builtins/abs-2.c +++ b/gcc/testsuite/gcc.c-torture/execute/builtins/abs-2.c @@ -1,20 +1,9 @@ /* Test for builtin abs, labs, llabs, imaxabs. */ /* Origin: Joseph Myers */ -/* These next definitions are kludges. When GCC has a it - should be used. -*/ #include -#if INT_MAX == __LONG_LONG_MAX__ -typedef int intmax_t; -#define INTMAX_MAX INT_MAX -#elif LONG_MAX == __LONG_LONG_MAX__ -typedef long intmax_t; -#define INTMAX_MAX LONG_MAX -#else -typedef long long intmax_t; -#define INTMAX_MAX __LONG_LONG_MAX__ -#endif +typedef __INTMAX_TYPE__ intmax_t; +#define INTMAX_MAX __INTMAX_MAX__ extern int abs (int); extern long labs (long); diff --git a/gcc/testsuite/gcc.c-torture/execute/builtins/abs-3.c b/gcc/testsuite/gcc.c-torture/execute/builtins/abs-3.c index 8300a48..cb0d89e 100644 --- a/gcc/testsuite/gcc.c-torture/execute/builtins/abs-3.c +++ b/gcc/testsuite/gcc.c-torture/execute/builtins/abs-3.c @@ -1,20 +1,9 @@ /* Test for builtin abs, labs, llabs, imaxabs. Test for __builtin versions. */ /* Origin: Joseph Myers */ -/* These next definitions are kludges. When GCC has a it - should be used. -*/ #include -#if INT_MAX == __LONG_LONG_MAX__ -typedef int intmax_t; -#define INTMAX_MAX INT_MAX -#elif LONG_MAX == __LONG_LONG_MAX__ -typedef long intmax_t; -#define INTMAX_MAX LONG_MAX -#else -typedef long long intmax_t; -#define INTMAX_MAX __LONG_LONG_MAX__ -#endif +typedef __INTMAX_TYPE__ intmax_t; +#define INTMAX_MAX __INTMAX_MAX__ extern void abort (void); extern void link_error (void); diff --git a/gcc/testsuite/gcc.c-torture/execute/builtins/lib/abs.c b/gcc/testsuite/gcc.c-torture/execute/builtins/lib/abs.c index 99ca10d..590ded7 100644 --- a/gcc/testsuite/gcc.c-torture/execute/builtins/lib/abs.c +++ b/gcc/testsuite/gcc.c-torture/execute/builtins/lib/abs.c @@ -6,20 +6,7 @@ extern void abort (void); #define ABORT_INSIDE_MAIN do { } while (0) #endif -/* These next definitions are kludges. When GCC has a it - should be used. -*/ -#include -#if INT_MAX == __LONG_LONG_MAX__ -typedef int intmax_t; -#define INTMAX_MAX INT_MAX -#elif LONG_MAX == __LONG_LONG_MAX__ -typedef long intmax_t; -#define INTMAX_MAX LONG_MAX -#else -typedef long long intmax_t; -#define INTMAX_MAX __LONG_LONG_MAX__ -#endif +typedef __INTMAX_TYPE__ intmax_t; int abs (int x) -- cgit v1.1