preprocessor/6521: -MG creates dependency with wrong path
Neil Booth
neil@daikokuya.demon.co.uk
Fri May 3 05:53:00 GMT 2002
rspier@pobox.com wrote:-
> >Description:
> gcc or g++ -MG outputs incorrect dependency information when there is a nonexistent header file specified in angle brackets. (i.e. #include <...>)
>
> It uses the path of the first specified -I argument (or the first system directory, if no directory is specified.)
>
> The attached script demonstrates the problem.
>
> #include "some/header.h"
> #include <nonexistent.h>
> int main() {
> }
> gcc3 -M -MG /tmp/_16336//test.c -I/tmp/_16336//not/a/real/path
> test.o: /tmp/_16336/test.c some/header.h \
> /tmp/_16336/not/a/real/path/nonexistent.h
> >How-To-Repeat:
> (Run attached script.)
This is intended behaviour (but undocumented I think); whether it is
desirable or not is a different question.
IMO this is not worth fixing; and we should just document the behaviour
for <> headers. What do you think, Zack?
Neil.
More information about the Gcc-bugs
mailing list