diff options
author | Niklas Hallqvist <niklas@cvs.openbsd.org> | 1998-03-03 21:37:38 +0000 |
---|---|---|
committer | Niklas Hallqvist <niklas@cvs.openbsd.org> | 1998-03-03 21:37:38 +0000 |
commit | c826e751760901de543f4640467e3a08df7f49bf (patch) | |
tree | 6a2323a78664ba45b78df1709ff3cc077db63ccd /gnu/usr.bin/gcc/c-tree.h | |
parent | a4511fe6a5dc69a771b5ffdf64ba574c959cf37d (diff) |
GCC 2.8.0 merge
Diffstat (limited to 'gnu/usr.bin/gcc/c-tree.h')
-rw-r--r-- | gnu/usr.bin/gcc/c-tree.h | 47 |
1 files changed, 32 insertions, 15 deletions
diff --git a/gnu/usr.bin/gcc/c-tree.h b/gnu/usr.bin/gcc/c-tree.h index 02f57c3b9dc..3e0e10a401f 100644 --- a/gnu/usr.bin/gcc/c-tree.h +++ b/gnu/usr.bin/gcc/c-tree.h @@ -1,5 +1,5 @@ /* Definitions for C parsing and type checking. - Copyright (C) 1987, 1993, 1994, 1995 Free Software Foundation, Inc. + Copyright (C) 1987, 1993, 1994, 1995, 1997 Free Software Foundation, Inc. This file is part of GNU CC. @@ -40,27 +40,27 @@ struct lang_identifier /* This represents the value which the identifier has in the file-scope namespace. */ #define IDENTIFIER_GLOBAL_VALUE(NODE) \ - (((struct lang_identifier *)(NODE))->global_value) + (((struct lang_identifier *) (NODE))->global_value) /* This represents the value which the identifier has in the current scope. */ #define IDENTIFIER_LOCAL_VALUE(NODE) \ - (((struct lang_identifier *)(NODE))->local_value) + (((struct lang_identifier *) (NODE))->local_value) /* This represents the value which the identifier has as a label in the current label scope. */ #define IDENTIFIER_LABEL_VALUE(NODE) \ - (((struct lang_identifier *)(NODE))->label_value) + (((struct lang_identifier *) (NODE))->label_value) /* This records the extern decl of this identifier, if it has had one at any point in this compilation. */ #define IDENTIFIER_LIMBO_VALUE(NODE) \ - (((struct lang_identifier *)(NODE))->limbo_value) + (((struct lang_identifier *) (NODE))->limbo_value) /* This records the implicit function decl of this identifier, if it has had one at any point in this compilation. */ #define IDENTIFIER_IMPLICIT_DECL(NODE) \ - (((struct lang_identifier *)(NODE))->implicit_decl) + (((struct lang_identifier *) (NODE))->implicit_decl) /* This is the last function in which we printed an "undefined variable" message for this identifier. Value is a FUNCTION_DECL or null. */ #define IDENTIFIER_ERROR_LOCUS(NODE) \ - (((struct lang_identifier *)(NODE))->error_locus) + (((struct lang_identifier *) (NODE))->error_locus) /* In identifiers, C uses the following fields in a special way: TREE_PUBLIC to record that there was a previous local extern decl. @@ -109,7 +109,7 @@ struct lang_type /* Store a value in that field. */ #define C_SET_EXP_ORIGINAL_CODE(exp, code) \ - (TREE_COMPLEXITY (exp) = (int)(code)) + (TREE_COMPLEXITY (exp) = (int) (code)) /* Record whether a typedef for type `int' was actually `signed int'. */ #define C_TYPEDEF_EXPLICITLY_SIGNED(exp) DECL_LANG_FLAG_1 ((exp)) @@ -124,6 +124,9 @@ struct lang_type without prototypes. */ #define TYPE_ACTUAL_ARG_TYPES(NODE) TYPE_NONCOPIED_PARTS (NODE) +/* 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. */ @@ -174,7 +177,7 @@ extern tree convert_and_check PROTO((tree, tree)); extern void overflow_warning PROTO((tree)); extern void unsigned_conversion_warning PROTO((tree, tree)); /* Read the rest of the current #-directive line. */ -extern char *get_directive_line STDIO_PROTO((FILE *)); +extern char *get_directive_line PROTO((FILE *)); /* Subroutine of build_binary_op, used for comparison operations. See if the operands have both been converted from subword integer types and, if so, perhaps change them both back to their original type. */ @@ -285,12 +288,9 @@ extern void pending_xref_error PROTO((void)); extern void pop_c_function_context PROTO((void)); extern void pop_label_level PROTO((void)); extern tree poplevel PROTO((int, int, int)); -extern void print_lang_decl STDIO_PROTO((FILE *, tree, - int)); -extern void print_lang_identifier STDIO_PROTO((FILE *, tree, - int)); -extern void print_lang_type STDIO_PROTO((FILE *, tree, - int)); +extern void print_lang_decl PROTO((FILE *, tree, int)); +extern void print_lang_identifier PROTO((FILE *, tree, int)); +extern void print_lang_type PROTO((FILE *, tree, int)); extern void push_c_function_context PROTO((void)); extern void push_label_level PROTO((void)); extern void push_parm_decl PROTO((tree)); @@ -382,6 +382,11 @@ extern int current_function_returns_value; extern int current_function_returns_null; +/* Nonzero means the expression being parsed will never be evaluated. + This is a count, since unevaluated expressions can nest. */ + +extern int skip_evaluation; + /* Nonzero means `$' can be in an identifier. */ extern int dollars_in_ident; @@ -395,6 +400,10 @@ extern int flag_cond_mismatch; extern int flag_no_asm; +/* Nonzero means environment is hosted (i.e., not freestanding) */ + +extern int flag_hosted; + /* Nonzero means ignore `#ident' directives. */ extern int flag_no_ident; @@ -458,6 +467,10 @@ extern int warn_char_subscripts; extern int warn_conversion; +/* Warn if main is suspicious. */ + +extern int warn_main; + /* Nonzero means do some things the same way PCC does. */ extern int flag_traditional; @@ -474,6 +487,10 @@ extern int warn_parentheses; extern int warn_missing_braces; +/* Warn about comparison of signed and unsigned values. */ + +extern int warn_sign_compare; + /* Nonzero means this is a function to call to perform comptypes on two record types. */ |