[Bug preprocessor/66932] New: Preprocessor includes wrong header file
pilot.mm at gmail dot com
gcc-bugzilla@gcc.gnu.org
Sat Jul 18 19:54:00 GMT 2015
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66932
Bug ID: 66932
Summary: Preprocessor includes wrong header file
Product: gcc
Version: 4.9.3
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: preprocessor
Assignee: unassigned at gcc dot gnu.org
Reporter: pilot.mm at gmail dot com
Target Milestone: ---
Created attachment 36011
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=36011&action=edit
The stripped down test case for the problem...
Hello Folks
There seems to be an error in the preprocessor where the wrong header
file is included. This problem occurs several times when compiling binutils and
gcc with newer versions of gcc. I have successfully compiled both of these
projects with older versions. Furthermore I have confirmed with the binutils
people that this is in fact a gcc bug. For your convenience I have prepared a
stripped down version of the problem. The README explains this test case.
Basically the problem occurs when there exists multiple header files with
the same name in different sub-folders (in my case it was 'config.h'). The
problem occurs when you compile one of the problems in the sub folder. This
occurs when a -I directive to one of the other sub-folders is given.
Furthermore this occurs when the duplicate header file is included indirectly.
It seems binutils and gcc assumes that the version in the local directory
should be included. Instead the preprocessor includes the one in the other
sub-folder.
I hope my explanation makes sense. I have created a stripped down version
for you folks to understand the problem and hopefully fix it.
Take Care
Mike
More information about the Gcc-bugs
mailing list