------- Comment #5 from bothner at gcc dot gnu dot org 2005-10-31 16:58 -------
The two test cases appear to be unrelated problems.
The inital report is because an invalid line marker is seen before debug_hooks
is set in process_options. fe_enter doesn't normally see an LC_ENTER during
read_original_filename.
One possible fix to to initialize debug_hooks statically in toplev.c:
const struct gcc_debug_hooks *debug_hooks = &do_nothing_debug_hooks;
The other testcase is because _cpp_pop_buffer is called prematurely, because
the code doesn't know we're in a directive.
A possible fix for that is to set/clear pfile->state.in_directive areound the
second _cpp_lex_direct in read_original_filename:
if (token->type == CPP_HASH)
{
pfile->state.in_directive = 1;
token1 = _cpp_lex_direct (pfile);
_cpp_backup_tokens (pfile, 1);
pfile->state.in_directive = 0;
I haven't updated my cvs archive yet, but if someone coudl volunteer to test
these fixes that woudl be appreciated.
--
bothner at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Last reconfirmed|2005-09-28 12:56:06 |2005-10-31 16:58:29
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24101