directives.c (cpp_handle_deferred_pragma): Save, clear and restore cb.line_change.
* directives.c (cpp_handle_deferred_pragma): Save, clear and restore cb.line_change. Otherwise do_pragma will call the line_change call-back with a meaningless line number. From-SVN: r88320
This commit is contained in:
parent
fa74d329ec
commit
67a741463c
|
@ -1,3 +1,9 @@
|
||||||
|
2004-09-29 Per Bothner <per@bothner.com>
|
||||||
|
|
||||||
|
* directives.c (cpp_handle_deferred_pragma): Save, clear and restore
|
||||||
|
cb.line_change. Otherwise do_pragma will call the line_change
|
||||||
|
call-back with a meaningless line number.
|
||||||
|
|
||||||
2004-09-24 Zack Weinberg <zack@codesourcery.com>
|
2004-09-24 Zack Weinberg <zack@codesourcery.com>
|
||||||
|
|
||||||
* configure.ac: Move AC_PROG_MAKE_SET, AC_PROG_INSTALL to
|
* configure.ac: Move AC_PROG_MAKE_SET, AC_PROG_INSTALL to
|
||||||
|
|
|
@ -1419,10 +1419,13 @@ cpp_handle_deferred_pragma (cpp_reader *pfile, const cpp_string *s)
|
||||||
cpp_token *saved_cur_token = pfile->cur_token;
|
cpp_token *saved_cur_token = pfile->cur_token;
|
||||||
tokenrun *saved_cur_run = pfile->cur_run;
|
tokenrun *saved_cur_run = pfile->cur_run;
|
||||||
bool saved_defer_pragmas = CPP_OPTION (pfile, defer_pragmas);
|
bool saved_defer_pragmas = CPP_OPTION (pfile, defer_pragmas);
|
||||||
|
void (*saved_line_change) (cpp_reader *, const cpp_token *, int)
|
||||||
|
= pfile->cb.line_change;
|
||||||
|
|
||||||
pfile->context = XNEW (cpp_context);
|
pfile->context = XNEW (cpp_context);
|
||||||
pfile->context->macro = 0;
|
pfile->context->macro = 0;
|
||||||
pfile->context->prev = 0;
|
pfile->context->prev = 0;
|
||||||
|
pfile->cb.line_change = NULL;
|
||||||
CPP_OPTION (pfile, defer_pragmas) = false;
|
CPP_OPTION (pfile, defer_pragmas) = false;
|
||||||
|
|
||||||
run_directive (pfile, T_PRAGMA, s->text, s->len);
|
run_directive (pfile, T_PRAGMA, s->text, s->len);
|
||||||
|
@ -1431,6 +1434,7 @@ cpp_handle_deferred_pragma (cpp_reader *pfile, const cpp_string *s)
|
||||||
pfile->context = saved_context;
|
pfile->context = saved_context;
|
||||||
pfile->cur_token = saved_cur_token;
|
pfile->cur_token = saved_cur_token;
|
||||||
pfile->cur_run = saved_cur_run;
|
pfile->cur_run = saved_cur_run;
|
||||||
|
pfile->cb.line_change = saved_line_change;
|
||||||
CPP_OPTION (pfile, defer_pragmas) = saved_defer_pragmas;
|
CPP_OPTION (pfile, defer_pragmas) = saved_defer_pragmas;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue