aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/lex.c
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2008-02-29 20:09:05 +0000
committerTom Tromey <tromey@gcc.gnu.org>2008-02-29 20:09:05 +0000
commit966e8f4d3fa971039cad79e25de0f0cb385a9368 (patch)
tree11ac9314a803ee4f351c76ac29b94a265faace5a /gcc/cp/lex.c
parent3cbe0ba6aab8e6310613a7cfc1d153840f210cf7 (diff)
downloadgcc-966e8f4d3fa971039cad79e25de0f0cb385a9368.zip
gcc-966e8f4d3fa971039cad79e25de0f0cb385a9368.tar.gz
gcc-966e8f4d3fa971039cad79e25de0f0cb385a9368.tar.bz2
toplev.c (input_file_stack, [...]): Remove.
gcc * toplev.c (input_file_stack, input_file_stack_tick, fs_p, input_file_stack_history, input_file_stack_restored): Remove. (push_srcloc, pop_srcloc, restore_input_file_stack): Likewise. * input.h (struct file_stack): Remove. (push_srcloc, pop_srcloc, restore_input_file_stack): Likewise. (input_file_stack, input_file_stack_tick, INPUT_FILE_STACK_BITS): Likewise. * diagnostic.h (struct diagnostic_context) <last_module>: Change type. (diagnostic_last_module_changed): Add 'map' argument. (diagnostic_set_last_function): Likewise. * diagnostic.c (undiagnostic_report_current_module): Iterate using line map, not input_file_stack. * c-lex.c (fe_file_change): Don't use push_srcloc or pop_srcloc. gcc/cp * parser.c (struct cp_token) <input_file_stack_index>: Remove. (cp_lexer_get_preprocessor_token): Update. (cp_lexer_set_source_position_from_token): Don't call restore_input_file_stack. * lex.c (cxx_init): Don't use push_srcloc or pop_srcloc. gcc/testsuite * g++.dg/warn/pragma-system_header2.C: Ignore "included from" line. From-SVN: r132775
Diffstat (limited to 'gcc/cp/lex.c')
-rw-r--r--gcc/cp/lex.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/gcc/cp/lex.c b/gcc/cp/lex.c
index 2558a78..0b2a372 100644
--- a/gcc/cp/lex.c
+++ b/gcc/cp/lex.c
@@ -372,6 +372,7 @@ bool statement_code_p[MAX_TREE_CODES];
bool
cxx_init (void)
{
+ location_t saved_loc;
unsigned int i;
static const enum tree_code stmt_codes[] = {
CTOR_INITIALIZER, TRY_BLOCK, HANDLER,
@@ -385,7 +386,8 @@ cxx_init (void)
for (i = 0; i < ARRAY_SIZE (stmt_codes); i++)
statement_code_p[stmt_codes[i]] = true;
- push_srcloc (BUILTINS_LOCATION);
+ saved_loc = input_location;
+ input_location = BUILTINS_LOCATION;
init_reswords ();
init_tree ();
@@ -413,7 +415,7 @@ cxx_init (void)
if (c_common_init () == false)
{
- pop_srcloc();
+ input_location = saved_loc;
return false;
}
@@ -421,7 +423,7 @@ cxx_init (void)
init_repo ();
- pop_srcloc();
+ input_location = saved_loc;
return true;
}