aboutsummaryrefslogtreecommitdiff
path: root/gcc/c-tree.h
diff options
context:
space:
mode:
authorRichard Henderson <rth@cygnus.com>1999-09-07 21:51:16 -0700
committerRichard Henderson <rth@gcc.gnu.org>1999-09-07 21:51:16 -0700
commitc530479e15d804667c83dfb738ce9cae035de9f2 (patch)
treecc01394964ac75996779fc8fc5ebdb1781aeb69c /gcc/c-tree.h
parent472236af04ca7daa01b6b5b1a00dafaf91d31f1f (diff)
downloadgcc-c530479e15d804667c83dfb738ce9cae035de9f2.zip
gcc-c530479e15d804667c83dfb738ce9cae035de9f2.tar.gz
gcc-c530479e15d804667c83dfb738ce9cae035de9f2.tar.bz2
c-typeck.c (type_lists_compatible_p): Use simple_type_promotes_to.
* c-typeck.c (type_lists_compatible_p): Use simple_type_promotes_to. (self_promoting_type_p): Delete. (self_promoting_args_p): Move ... * c-common.c: ... here. (c_common_nodes_and_builtins): Initialize lang_type_promotes_to. (simple_type_promotes_to): New. * builtins.c (lang_type_promotes_to): New. (expand_builtin_va_arg): Use it to give diagnostic for illegal types. * c-tree.h (C_PROMOTING_INTEGER_TYPE_P): Move ... * c-common.h: ... here. (self_promoting_args_p, simple_type_promotes_to): Declare. * c-decl.c (duplicate_decls): Use simple_type_promotes_to. (grokdeclarator): Likewise. * tree.h (lang_type_promotes_to): Declare. * cp-tree.h (C_PROMOTING_INTEGER_TYPE_P): Delete. * typeck.c (self_promoting_args_p): Delete. * gcc.dg/va-arg-1.c: New. From-SVN: r29180
Diffstat (limited to 'gcc/c-tree.h')
-rw-r--r--gcc/c-tree.h12
1 files changed, 0 insertions, 12 deletions
diff --git a/gcc/c-tree.h b/gcc/c-tree.h
index a557855..44ec800 100644
--- a/gcc/c-tree.h
+++ b/gcc/c-tree.h
@@ -145,17 +145,6 @@ struct lang_type
/* In a FIELD_DECL, nonzero if the decl was originally a bitfield. */
#define DECL_C_BIT_FIELD(NODE) DECL_LANG_FLAG_4 (NODE)
-/* Nonzero if the type T promotes to itself.
- ANSI C states explicitly the list of types that promote;
- in particular, short promotes to int even if they have the same width. */
-#define C_PROMOTING_INTEGER_TYPE_P(t) \
- (TREE_CODE ((t)) == INTEGER_TYPE \
- && (TYPE_MAIN_VARIANT (t) == char_type_node \
- || TYPE_MAIN_VARIANT (t) == signed_char_type_node \
- || TYPE_MAIN_VARIANT (t) == unsigned_char_type_node \
- || TYPE_MAIN_VARIANT (t) == short_integer_type_node \
- || TYPE_MAIN_VARIANT (t) == short_unsigned_type_node))
-
/* In a VAR_DECL, means the variable is really an iterator. */
#define ITERATOR_P(D) (DECL_LANG_FLAG_4(D))
@@ -260,7 +249,6 @@ extern void incomplete_type_error PROTO((tree, tree));
Given two compatible ANSI C types, returns the merged type. */
extern tree common_type PROTO((tree, tree));
extern int comptypes PROTO((tree, tree));
-extern int self_promoting_args_p PROTO((tree));
extern tree c_sizeof PROTO((tree));
extern tree c_sizeof_nowarn PROTO((tree));
extern tree c_size_in_bytes PROTO((tree));