------- Comment #1 from jakub at gcc dot gnu dot org 2008-07-29 20:46 ------- This is caused by http://gcc.gnu.org/ml/gcc-patches/2007-09/msg00396.html patch, in particular changing line_table from a structure into a pointer into GC allocated structure. Although push_command_line_include sets line_table->trace_includes to cpp_opts->print_include_names, after that when the *.gch file is read line_table will point to a different structure (the one read from the *.gch file) and thus it will use the -H vs. non-H setting from *.gch compilation instead of the current compilation.
I don't know why line_table was changed into a pointer, but if that's needed, I guess we want to save the line_table->trace_includes setting before reading pch (or in push_command_line_include) and set it in the new structure after PCH is read. -- jakub at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |tromey at gcc dot gnu dot | |org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36649