]> granicus.if.org Git - clang/commit
Refactored duplicate string literal lexing code within Preprocessor, into a
authorAndy Gibbs <andyg1001@hotmail.co.uk>
Sat, 17 Nov 2012 19:15:38 +0000 (19:15 +0000)
committerAndy Gibbs <andyg1001@hotmail.co.uk>
Sat, 17 Nov 2012 19:15:38 +0000 (19:15 +0000)
commit02a176871d91bba3004e4f94b2d4d588ae4b2122
tree526b40ca59194f0bdb548e3ac2ae64983861c4c2
parentb9971bada4eeae74883b61ba96fc6d983b6b0e7f
Refactored duplicate string literal lexing code within Preprocessor, into a
common LexStringLiteral function.  In doing so, some consistency problems have
been ironed out (e.g. where the first token in the string literal was lexed
with macro expansion, but subsequent ones were not) and also an erroneous
diagnostic has been corrected.

LexStringLiteral is complemented by a FinishLexStringLiteral function which
can be used in the situation where the first token of the string literal has
already been lexed.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168266 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/Basic/DiagnosticCommonKinds.td
include/clang/Basic/DiagnosticParseKinds.td
include/clang/Lex/Preprocessor.h
lib/Lex/PPMacroExpansion.cpp
lib/Lex/Pragma.cpp
lib/Lex/Preprocessor.cpp
test/Preprocessor/invalid-__has_warning1.c
test/Preprocessor/invalid-__has_warning2.c
test/Preprocessor/pragma_diagnostic.c
test/Preprocessor/pragma_microsoft.c
test/Preprocessor/warning_tests.c