PCH versus --enable-mapped-location

Devang Patel dpatel@apple.com
Thu Mar 31 19:49:00 GMT 2005


On Mar 30, 2005, at 10:36 PM, Per Bothner wrote:

> * Note that we compile the gch file as it were the main file
> - i.e. it has the MAIN_FILE_P property, and it is not included
> from any file.

Another side effect, it bypasses system header check.

     gcc -x c-header /usr/include/stdio.h

Here, stdio.h is main input file but it is not recognized as a
system header.

> This means the restored line_table is slightly
> anomalous.  One solution to this is when we generate the gch file,
> we pretend the .h file is included in a dummy file, which we
> may call <main>.  This adds two line_map entries: one for <main>
> before the LC_ENTER of the .h file, and one at the end to LC_LEAVE
> the .h file.  Then when we restore, we patch both of these to
> replace "<main>" by the real main file name.

-
Devang



More information about the Gcc mailing list