This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: RFC: case insensitive for #include



On Jan 28, 2009, at 12:24 PM, H.J. Lu wrote:


On Wed, Jan 28, 2009 at 12:21 PM, Chris Lattner <clattner@apple.com> wrote:

On Jan 28, 2009, at 11:51 AM, H.J. Lu wrote:


Hi,

I got a request to try "FOO.H" if foo.h doesn't exist when dealing
with

#include "foo.h"

Any comments?

I strongly recommend against this, unless this is only a "last chance" fall
back.


From a performance standpoint, if you have -Idir1 -Idir2 -Idir3, you don't
want to stat all variants of "foo.h" in dir1 before moving on to dir2. If
you do a full search for foo.h in all appropriate search paths, and then
redo it only on failure, then the performance issue goes away. However, in
that case you get very difficult to explain behavior if you have multiple
files with spelling variants of foo.h in different search paths.



I won't stat all variants of "foo.h". I think scandir will work here and
this feature will be supported only if scandir is available.

HJ, this is a very performance sensitive part of the preprocessor. Just doing a scandir would be a huge cost.


-Chris


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]