diff options
author | Geoffrey Keating <geoffk@apple.com> | 2005-01-04 02:13:56 +0000 |
---|---|---|
committer | Geoffrey Keating <geoffk@gcc.gnu.org> | 2005-01-04 02:13:56 +0000 |
commit | 942926ad9aaed64e1fd18ca1a44ab04de79e632d (patch) | |
tree | 52c88aedd7f1c8d991064ad1952bd3983c447b8a /libcpp | |
parent | 1eb3331e96ce4c7652004ef02da7ca9e72539555 (diff) | |
download | gcc-942926ad9aaed64e1fd18ca1a44ab04de79e632d.zip gcc-942926ad9aaed64e1fd18ca1a44ab04de79e632d.tar.gz gcc-942926ad9aaed64e1fd18ca1a44ab04de79e632d.tar.bz2 |
Index: libcpp/ChangeLog
2005-01-03 Geoffrey Keating <geoffk@apple.com>
* files.c (_cpp_find_file): Add files found by search_path_exhausted
to the list of all files.
Index: gcc/testsuite/ChangeLog
2005-01-03 Geoffrey Keating <geoffk@apple.com>
Robert Bowdidge <bowdidge@apple.com>
* gcc.dg/cpp/subframework1.c: New.
* gcc.dg/cpp/frame/one.framework/Frameworks/OneSub.framework/Headers/A.h: New.
* gcc.dg/cpp/frame/one.framework/Frameworks/OneSub.framework/Headers/B.h: New.
* gcc.dg/cpp/frame/one.framework/Frameworks/OneSub.framework/Headers/C.h: New.
* gcc.dg/cpp/frame/one.framework/Headers/one-includeSubs.h: New.
Co-Authored-By: Robert Bowdidge <bowdidge@apple.com>
From-SVN: r92883
Diffstat (limited to 'libcpp')
-rw-r--r-- | libcpp/ChangeLog | 5 | ||||
-rw-r--r-- | libcpp/files.c | 10 |
2 files changed, 14 insertions, 1 deletions
diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index 88e5b8f..fb3e928 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,3 +1,8 @@ +2005-01-03 Geoffrey Keating <geoffk@apple.com> + + * files.c (_cpp_find_file): Add files found by search_path_exhausted + to the list of all files. + 2005-01-01 Gabriel Dos Reis <gdr@integrable-solutions.net> * internal.h: Update references to Cpp lib filenames. diff --git a/libcpp/files.c b/libcpp/files.c index bd5f8dd..df5d9d7 100644 --- a/libcpp/files.c +++ b/libcpp/files.c @@ -438,7 +438,15 @@ _cpp_find_file (cpp_reader *pfile, const char *fname, cpp_dir *start_dir, bool f if (file->dir == NULL) { if (search_path_exhausted (pfile, fname, file)) - return file; + { + /* Although this file must not go in the cache, because + the file found might depend on things (like the current file) + that aren't represented in the cache, it still has to go in + the list of all files so that #import works. */ + file->next_file = pfile->all_files; + pfile->all_files = file; + return file; + } open_file_failed (pfile, file); if (invalid_pch) |