]> granicus.if.org Git - clang/commit
[preamble] Also record the "skipping" state of the preprocessor
authorErik Verbruggen <erikjv@me.com>
Fri, 3 Nov 2017 09:40:07 +0000 (09:40 +0000)
committerErik Verbruggen <erikjv@me.com>
Fri, 3 Nov 2017 09:40:07 +0000 (09:40 +0000)
commit16962ce7c214f12f7362c41bfbe79689bc07ea2f
treede4b9d348928f65c509e85d952e95b9d4eb8e130
parent324e0a9695a1682b11e60f5c22024243fa2246d3
[preamble] Also record the "skipping" state of the preprocessor

When a preamble ends in a conditional preprocessor block that is being
skipped, the preprocessor needs to continue skipping that block when
the preamble is used.

This fixes PR34570.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@317308 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/Lex/Preprocessor.h
lib/Lex/PPDirectives.cpp
lib/Lex/Preprocessor.cpp
lib/Serialization/ASTReader.cpp
lib/Serialization/ASTWriter.cpp
test/Index/preamble-conditionals-inverted.cpp
test/Index/preamble-conditionals-skipping.cpp [new file with mode: 0644]