diff options
author | aj <aj@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-06-19 19:43:59 +0000 |
---|---|---|
committer | aj <aj@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-06-19 19:43:59 +0000 |
commit | 1cae46be69832433bab9411d0ad860363b14b8c1 (patch) | |
tree | fd1cc81909b4c6acb6b6330a8a8b58659c5e5ba3 /gcc/c-cppbuiltin.c | |
parent | 7f05340e7aa6cc098680e9cebf9b22d313d93e91 (diff) | |
download | gcc-1cae46be69832433bab9411d0ad860363b14b8c1.tar.gz |
* c-aux-info.c: Convert to ISO C99.
* c-pragma.c: Likewise.
* c-common.c: Likewise.
* c-common.h: Likewise.
* c-convert.c: Likewise.
* c-cppbuiltin.c: Likewise.
* c-dump.c: Likewise.
* c-decl.c: Likewise
* c-format.c: Likewise.
* c-incpath.c: Likewise.
* c-incpath.h: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68218 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-cppbuiltin.c')
-rw-r--r-- | gcc/c-cppbuiltin.c | 82 |
1 files changed, 30 insertions, 52 deletions
diff --git a/gcc/c-cppbuiltin.c b/gcc/c-cppbuiltin.c index b17b469955b..1dfc5d0c167 100644 --- a/gcc/c-cppbuiltin.c +++ b/gcc/c-cppbuiltin.c @@ -45,35 +45,29 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #endif /* Non-static as some targets don't use it. */ -void builtin_define_std PARAMS ((const char *)) ATTRIBUTE_UNUSED; -static void builtin_define_with_value_n PARAMS ((const char *, const char *, - size_t)); -static void builtin_define_with_int_value PARAMS ((const char *, - HOST_WIDE_INT)); -static void builtin_define_with_hex_fp_value PARAMS ((const char *, tree, - int, const char *, - const char *)); -static void builtin_define_type_max PARAMS ((const char *, tree, int)); -static void builtin_define_type_precision PARAMS ((const char *, tree)); -static void builtin_define_float_constants PARAMS ((const char *, - const char *, tree)); -static void define__GNUC__ PARAMS ((void)); +void builtin_define_std (const char *) ATTRIBUTE_UNUSED; +static void builtin_define_with_value_n (const char *, const char *, + size_t); +static void builtin_define_with_int_value (const char *, HOST_WIDE_INT); +static void builtin_define_with_hex_fp_value (const char *, tree, + int, const char *, + const char *); +static void builtin_define_type_max (const char *, tree, int); +static void builtin_define_type_precision (const char *, tree); +static void builtin_define_float_constants (const char *, const char *, + tree); +static void define__GNUC__ (void); /* Define NAME with value TYPE precision. */ static void -builtin_define_type_precision (name, type) - const char *name; - tree type; +builtin_define_type_precision (const char *name, tree type) { builtin_define_with_int_value (name, TYPE_PRECISION (type)); } /* Define the float.h constants for TYPE using NAME_PREFIX and FP_SUFFIX. */ static void -builtin_define_float_constants (name_prefix, fp_suffix, type) - const char *name_prefix; - const char *fp_suffix; - tree type; +builtin_define_float_constants (const char *name_prefix, const char *fp_suffix, tree type) { /* Used to convert radix-based values to base 10 values in several cases. @@ -107,7 +101,7 @@ builtin_define_float_constants (name_prefix, fp_suffix, type) p radix b digits and back again without change to the q decimal digits, p log10 b if b is a power of 10 - floor((p - 1) log10 b) otherwise + floor((p - 1) log10 b) otherwise */ dig = (fmt->p - 1) * log10_b; sprintf (name, "__%s_DIG__", name_prefix); @@ -166,7 +160,7 @@ builtin_define_float_constants (name_prefix, fp_suffix, type) /* The number of decimal digits, n, such that any floating-point number can be rounded to n decimal digits and back again without change to - the value. + the value. p * log10(b) if b is a power of 10 ceil(1 + p * log10(b)) otherwise @@ -233,7 +227,7 @@ builtin_define_float_constants (name_prefix, fp_suffix, type) /* For C++ std::numeric_limits<T>::has_infinity. */ sprintf (name, "__%s_HAS_INFINITY__", name_prefix); - builtin_define_with_int_value (name, + builtin_define_with_int_value (name, MODE_HAS_INFINITIES (TYPE_MODE (type))); /* For C++ std::numeric_limits<T>::has_quiet_NaN. We do not have a predicate to distinguish a target that has both quiet and @@ -246,7 +240,7 @@ builtin_define_float_constants (name_prefix, fp_suffix, type) /* Define __GNUC__, __GNUC_MINOR__ and __GNUC_PATCHLEVEL__. */ static void -define__GNUC__ () +define__GNUC__ (void) { /* The format of the version string, enforced below, is ([^0-9]*-)?[0-9]+[.][0-9]+([.][0-9]+)?([- ].*)? */ @@ -289,8 +283,7 @@ define__GNUC__ () /* Hook that registers front end and target-specific built-ins. */ void -c_cpp_builtins (pfile) - cpp_reader *pfile; +c_cpp_builtins (cpp_reader *pfile) { /* -undef turns off target-specific built-ins. */ if (flag_undef) @@ -357,7 +350,7 @@ c_cpp_builtins (pfile) cpp_define (pfile, "_LP64"); cpp_define (pfile, "__LP64__"); } - + /* Other target-independent built-ins determined by command-line options. */ if (optimize_size) @@ -410,8 +403,7 @@ c_cpp_builtins (pfile) "unix". Passing "_mips" defines "__mips", "__mips__" and possibly "_mips". */ void -builtin_define_std (macro) - const char *macro; +builtin_define_std (const char *macro) { size_t len = strlen (macro); char *buff = alloca (len + 5); @@ -450,10 +442,7 @@ builtin_define_std (macro) parameter says whether or not to turn the value into a string constant. */ void -builtin_define_with_value (macro, expansion, is_str) - const char *macro; - const char *expansion; - int is_str; +builtin_define_with_value (const char *macro, const char *expansion, int is_str) { char *buf; size_t mlen = strlen (macro); @@ -475,14 +464,11 @@ builtin_define_with_value (macro, expansion, is_str) /* Pass an object-like macro and a value to define it to. The third parameter is the length of the expansion. */ static void -builtin_define_with_value_n (macro, expansion, elen) - const char *macro; - const char *expansion; - size_t elen; +builtin_define_with_value_n (const char *macro, const char *expansion, size_t elen) { char *buf; size_t mlen = strlen (macro); - + /* Space for an = and a NUL. */ buf = alloca (mlen + elen + 2); memcpy (buf, macro, mlen); @@ -495,9 +481,7 @@ builtin_define_with_value_n (macro, expansion, elen) /* Pass an object-like macro and an integer value to define it to. */ static void -builtin_define_with_int_value (macro, value) - const char *macro; - HOST_WIDE_INT value; +builtin_define_with_int_value (const char *macro, HOST_WIDE_INT value) { char *buf; size_t mlen = strlen (macro); @@ -514,12 +498,9 @@ builtin_define_with_int_value (macro, value) /* Pass an object-like macro a hexadecimal floating-point value. */ static void -builtin_define_with_hex_fp_value (macro, type, digits, hex_str, fp_suffix) - const char *macro; - tree type ATTRIBUTE_UNUSED; - int digits; - const char *hex_str; - const char *fp_suffix; +builtin_define_with_hex_fp_value (const char *macro, + tree type ATTRIBUTE_UNUSED, int digits, + const char *hex_str, const char *fp_suffix) { REAL_VALUE_TYPE real; char dec_str[64], buf[256]; @@ -530,7 +511,7 @@ builtin_define_with_hex_fp_value (macro, type, digits, hex_str, fp_suffix) pedwarn from the preprocessor, which has no context, so we can't suppress the warning with __extension__. - So instead what we do is construct the number in hex (because + So instead what we do is construct the number in hex (because it's easy to get the exact correct value), parse it as a real, then print it back out as decimal. */ @@ -546,10 +527,7 @@ builtin_define_with_hex_fp_value (macro, type, digits, hex_str, fp_suffix) unsigned types, since wchar_t might be unsigned. */ static void -builtin_define_type_max (macro, type, is_long) - const char *macro; - tree type; - int is_long; +builtin_define_type_max (const char *macro, tree type, int is_long) { static const char *const values[] = { "127", "255", |