From aa269c2e9c242a2fdf1f47ea400f58823ae9e395 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Sun, 19 Apr 2009 07:32:03 +0000 Subject: [PATCH] invalid directives can occur in #if 0 code, just pass them through like other directives PTH doesn't care about. This should fix rdar://6804029 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69524 91177308-0d34-0410-b5e6-96231b3b80d8 --- tools/clang-cc/CacheTokens.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tools/clang-cc/CacheTokens.cpp b/tools/clang-cc/CacheTokens.cpp index c417eb4902..2b08818f8f 100644 --- a/tools/clang-cc/CacheTokens.cpp +++ b/tools/clang-cc/CacheTokens.cpp @@ -490,12 +490,15 @@ PTHEntry PTHWriter::LexTokens(Lexer& L) { Tok.setIdentifierInfo(II); tok::PPKeywordKind K = II->getPPKeywordID(); - assert(K != tok::pp_not_keyword); ParsingPreprocessorDirective = true; switch (K) { + case tok::pp_not_keyword: + // Invalid directives "#foo" can occur in #if 0 blocks etc, just pass + // them through. default: break; + case tok::pp_include: case tok::pp_import: case tok::pp_include_next: { -- 2.50.1