diff options
author | Doug Evans <dje@gnu.org> | 1993-08-07 19:50:59 +0000 |
---|---|---|
committer | Doug Evans <dje@gnu.org> | 1993-08-07 19:50:59 +0000 |
commit | 6706083e3a79ed64998a1a040bb88a27438a53e9 (patch) | |
tree | 2b72ee757b345f5d0dacd597d451330abdfb84d4 /gcc | |
parent | 09acc9edc7ec7fec2fa4c845f9297d34259cd04d (diff) | |
download | gcc-6706083e3a79ed64998a1a040bb88a27438a53e9.zip gcc-6706083e3a79ed64998a1a040bb88a27438a53e9.tar.gz gcc-6706083e3a79ed64998a1a040bb88a27438a53e9.tar.bz2 |
c-decl.c (init_decl_processing): Make long long available to | use for SIZE_TYPE and PTRDIFF_TYPE.
* c-decl.c (init_decl_processing): Make long long available to
| use for SIZE_TYPE and PTRDIFF_TYPE.
From-SVN: r5101
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/c-decl.c | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/gcc/c-decl.c b/gcc/c-decl.c index 65ff9f7..55983f2 100644 --- a/gcc/c-decl.c +++ b/gcc/c-decl.c @@ -2623,6 +2623,14 @@ init_decl_processing () pushdecl (build_decl (TYPE_DECL, get_identifier ("long unsigned int"), long_unsigned_type_node)); + long_long_integer_type_node = make_signed_type (LONG_LONG_TYPE_SIZE); + pushdecl (build_decl (TYPE_DECL, get_identifier ("long long int"), + long_long_integer_type_node)); + + long_long_unsigned_type_node = make_unsigned_type (LONG_LONG_TYPE_SIZE); + pushdecl (build_decl (TYPE_DECL, get_identifier ("long long unsigned int"), + long_long_unsigned_type_node)); + /* `unsigned long' is the standard type for sizeof. Traditionally, use a signed type. Note that stddef.h uses `unsigned long', @@ -2640,6 +2648,8 @@ init_decl_processing () TREE_TYPE (TYPE_SIZE (unsigned_type_node)) = sizetype; TREE_TYPE (TYPE_SIZE (long_unsigned_type_node)) = sizetype; TREE_TYPE (TYPE_SIZE (long_integer_type_node)) = sizetype; + TREE_TYPE (TYPE_SIZE (long_long_integer_type_node)) = sizetype; + TREE_TYPE (TYPE_SIZE (long_long_unsigned_type_node)) = sizetype; error_mark_node = make_node (ERROR_MARK); TREE_TYPE (error_mark_node) = error_mark_node; @@ -2648,18 +2658,10 @@ init_decl_processing () pushdecl (build_decl (TYPE_DECL, get_identifier ("short int"), short_integer_type_node)); - long_long_integer_type_node = make_signed_type (LONG_LONG_TYPE_SIZE); - pushdecl (build_decl (TYPE_DECL, get_identifier ("long long int"), - long_long_integer_type_node)); - short_unsigned_type_node = make_unsigned_type (SHORT_TYPE_SIZE); pushdecl (build_decl (TYPE_DECL, get_identifier ("short unsigned int"), short_unsigned_type_node)); - long_long_unsigned_type_node = make_unsigned_type (LONG_LONG_TYPE_SIZE); - pushdecl (build_decl (TYPE_DECL, get_identifier ("long long unsigned int"), - long_long_unsigned_type_node)); - /* Define both `signed char' and `unsigned char'. */ signed_char_type_node = make_signed_type (CHAR_TYPE_SIZE); pushdecl (build_decl (TYPE_DECL, get_identifier ("signed char"), |