-E from stdin loses standard include paths?
Neil Booth
neil@daikokuya.co.uk
Fri Feb 14 21:50:00 GMT 2003
Phil Edwards wrote:-
> Forgive me if this is normal behavior, but I just ran into something strange.
>
> This works:
>
> fenric 69% echo '#include <string>' > p.cc
> fenric 70% g++ -E p.cc
> [many lines of code on stdout, all good]
>
> This doesn't:
>
> fenric 71% echo '#include <string>' | g++ -E -
> # 1 "<stdin>"
> # 1 "<built-in>"
> # 1 "<command line>"
> # 1 "<stdin>"
> <stdin>:1:18: string: No such file or directory
> fenric 72%
>
> This strikes me as non-intuitive.
The driver can't guess what file you are inputting.
Try -x C or similar.
I guess a patch to improve handling of '-' in specs for g++
would be a good idea.
Neil.
More information about the Gcc-bugs
mailing list