diff options
author | Jakub Jelinek <jakub@redhat.com> | 2016-02-10 19:43:01 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2016-02-10 19:43:01 +0100 |
commit | 3d863dc5d25a432a00fbe7987352d74e1eb39fe9 (patch) | |
tree | ae764f15ecf59af856d457e0ccdf9d4ae14368df /libcpp | |
parent | 32e6d8c40bd542528ca8e977303937c9144d0ac6 (diff) |
backport: re PR pch/68176 (all pch tests fail on eglibc systems (with bits/predefs.h))
Backported from mainline
2016-01-28 Jakub Jelinek <jakub@redhat.com>
PR pch/68176
* files.c (_cpp_find_file): Set file->implicit_preinclude even if
included from file->implicit_preinclude header.
From-SVN: r233299
Diffstat (limited to 'libcpp')
-rw-r--r-- | libcpp/ChangeLog | 9 | ||||
-rw-r--r-- | libcpp/files.c | 5 |
2 files changed, 13 insertions, 1 deletions
diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index 23e05cccfe9..7754af842fe 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,3 +1,12 @@ +2016-02-10 Jakub Jelinek <jakub@redhat.com> + + Backported from mainline + 2016-01-28 Jakub Jelinek <jakub@redhat.com> + + PR pch/68176 + * files.c (_cpp_find_file): Set file->implicit_preinclude even if + included from file->implicit_preinclude header. + 2015-12-04 Release Manager * GCC 5.3.0 released. diff --git a/libcpp/files.c b/libcpp/files.c index 9f28b9ef1ed..ea2cc23d625 100644 --- a/libcpp/files.c +++ b/libcpp/files.c @@ -522,7 +522,10 @@ _cpp_find_file (cpp_reader *pfile, const char *fname, cpp_dir *start_dir, return entry->u.file; file = make_cpp_file (pfile, start_dir, fname); - file->implicit_preinclude = implicit_preinclude; + file->implicit_preinclude + = (implicit_preinclude + || (pfile->buffer + && pfile->buffer->file->implicit_preinclude)); /* Try each path in the include chain. */ for (; !fake ;) |