diff options
author | Rafael Avila de Espindola <espindola@google.com> | 2008-07-21 14:29:27 +0000 |
---|---|---|
committer | Rafael Espindola <espindola@gcc.gnu.org> | 2008-07-21 14:29:27 +0000 |
commit | aa14403d28a1af7c28088dd4e04b36a4016e06f9 (patch) | |
tree | 1e111546a06e6c9f6855577afe7e36025fb4eb8c /gcc/cp/parser.c | |
parent | c44109aaf3be31a6816a8a4f3c4454261d8d2622 (diff) | |
download | gcc-aa14403d28a1af7c28088dd4e04b36a4016e06f9.zip gcc-aa14403d28a1af7c28088dd4e04b36a4016e06f9.tar.gz gcc-aa14403d28a1af7c28088dd4e04b36a4016e06f9.tar.bz2 |
Makefile.in: Replace toplev.h with TOPLEV_H.
2007-07-21 Rafael Avila de Espindola <espindola@google.com>
* Makefile.in: Replace toplev.h with TOPLEV_H.
* c-decl.c (merge_decls): Don't set DECL_IN_SYSTEM_HEADER.
* c-lex.c (fe_file_change): Don't set in_system_header.
* c-parser.c (c_token): Remove in_system_header.
(c_lex_one_token): Don't set in_system_header.
(c_parser_set_source_position_from_token): Don't set in_system_header.
* diagnostic.c (diagnostic_report_diagnostic): Use location from
diagnostic_info.
(warning_at): New.
* diagnostic.h (diagnostic_report_warnings_p): Add LOC argument.
* flags.h (in_system_header): Remove.
* function.c (saved_in_system_header): Remove.
(push_cfun): Don't set in_system_header.
(pop_cfun): Don't set in_system_header.
(push_struct_function): Don't set in_system_header.
* input.h (expanded_location): Add sysp.
(in_system_header_at): New.
(in_system_header): New.
* toplev.c (in_system_header): Remove.
* toplev.h: Include input.h
(warning_at): New.
* tree-cfg.c (execute_warn_function_return): Call warning_at.
* tree-ssa.c (warn_uninit): Call warning_at.
(warn_uninitialized_var): Update calls to warn_uninit.
(warn_uninitialized_phi): Update calls to warn_uninit.
* tree.c (make_node_stat): Don't set DECL_IN_SYSTEM_HEADER.
(expand_location): Initialize xloc.sysp.
* tree.h (DECL_IN_SYSTEM_HEADER): Use in_system_header_at.
(tree_decl_with_vis): Remove in_system_header_flag.
2007-07-21 Rafael Avila de Espindola <espindola@google.com>
* parser.c (cp_token): Remove in_system_header.
(eof_token): Remove in_system_header.
(cp_lexer_get_preprocessor_token): Don't set in_system_header.
(cp_lexer_set_source_position_from_token): Don't set in_system_header.
(cp_parser_member_declaration): Use in_system_header_at.
* pt.c (lookup_template_class): Don't set DECL_IN_SYSTEM_HEADER.
(pop_tinst_level): Don't set in_system_header.
(instantiate_class_template): Don't set in_system_header.
(instantiate_decl): Don't set in_system_header.
(instantiate_pending_templates): Don't set in_system_header.
From-SVN: r138031
Diffstat (limited to 'gcc/cp/parser.c')
-rw-r--r-- | gcc/cp/parser.c | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c index 02fb660..b4d2440 100644 --- a/gcc/cp/parser.c +++ b/gcc/cp/parser.c @@ -71,8 +71,6 @@ typedef struct cp_token GTY (()) unsigned char flags; /* Identifier for the pragma. */ ENUM_BITFIELD (pragma_kind) pragma_kind : 6; - /* True if this token is from a system header. */ - BOOL_BITFIELD in_system_header : 1; /* True if this token is from a context where it is implicitly extern "C" */ BOOL_BITFIELD implicit_extern_c : 1; /* True for a CPP_NAME token that is not a keyword (i.e., for which @@ -97,7 +95,7 @@ DEF_VEC_ALLOC_P (cp_token_position,heap); static cp_token eof_token = { - CPP_EOF, RID_MAX, 0, PRAGMA_NONE, 0, false, 0, { NULL }, + CPP_EOF, RID_MAX, 0, PRAGMA_NONE, false, 0, { NULL }, 0 }; @@ -408,7 +406,6 @@ cp_lexer_get_preprocessor_token (cp_lexer *lexer, cp_token *token) lexer == NULL ? 0 : C_LEX_RAW_STRINGS); token->keyword = RID_MAX; token->pragma_kind = PRAGMA_NONE; - token->in_system_header = in_system_header; /* On some systems, some header files are surrounded by an implicit extern "C" block. Set a flag in the token if it @@ -478,15 +475,13 @@ cp_lexer_get_preprocessor_token (cp_lexer *lexer, cp_token *token) } } -/* Update the globals input_location and in_system_header and the - input file stack from TOKEN. */ +/* Update the globals input_location and the input file stack from TOKEN. */ static inline void cp_lexer_set_source_position_from_token (cp_token *token) { if (token->type != CPP_EOF) { input_location = token->location; - in_system_header = token->in_system_header; } } @@ -15391,7 +15386,7 @@ cp_parser_member_declaration (cp_parser* parser) if (!decl_specifiers.any_specifiers_p) { cp_token *token = cp_lexer_peek_token (parser->lexer); - if (pedantic && !token->in_system_header) + if (pedantic && !in_system_header_at (token->location)) pedwarn ("%Hextra %<;%>", &token->location); } else |