Skip to content

Commit

Permalink
Index: libcpp/ChangeLog
Browse files Browse the repository at this point in the history
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.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@92883 138bc75d-0d04-0410-961f-82ee72b054a4
  • Loading branch information
geoffk committed Jan 4, 2005
1 parent 9e45f41 commit ba841ef
Show file tree
Hide file tree
Showing 8 changed files with 46 additions and 1 deletion.
9 changes: 9 additions & 0 deletions gcc/testsuite/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,12 @@
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.

2005-01-03 Geoffrey Keating <geoffk@apple.com>

* gcc.dg/darwin-weakimport-1.c: Remove check for variables
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#import <OneSub/C.h>
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#import <OneSub/C.h>
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#ifdef ONESUB_C_INCLUDED
#error should only be imported once
#endif
#define ONESUB_C_INCLUDED 1
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
#import <OneSub/A.h>
#import <OneSub/B.h>
15 changes: 15 additions & 0 deletions gcc/testsuite/gcc.dg/cpp/subframework1.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
/* Copyright (C) 2004 Free Software Foundation, Inc. */

/* { dg-do preprocess } */
/* { dg-options "-F$srcdir/gcc.dg/cpp/frame" } */

/* Contributed by Robert Bowdidge <bowdidge@apple.com> */
/* include a file from a subframework that will import two files that
both look at the same file. Make sure we only include that file once;
if so, the program will compile fine. If not, we'll get redefinition
errors */

#include <one/one-includeSubs.h>
#ifndef ONESUB_C_INCLUDED
#error C.h not included
#endif
5 changes: 5 additions & 0 deletions libcpp/ChangeLog
Original file line number Diff line number Diff line change
@@ -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.
Expand Down
10 changes: 9 additions & 1 deletion libcpp/files.c
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down

0 comments on commit ba841ef

Please sign in to comment.