llvm-project/clang/test/Lexer
Jordan Rose b13eb8dca5 Allow -verify directives to be filtered by preprocessing.
This is accomplished by making VerifyDiagnosticsConsumer a CommentHandler,
which then only reads the -verify directives that are actually in live
blocks of code. It also makes it simpler to handle -verify directives that
appear in header files, though we still have to manually reparse some files
depending on how they are generated.

This requires some test changes. In particular, all PCH tests now have their
-verify directives outside the "header" portion of the file, using the @line
syntax added in r159978. Other tests have been modified mostly to make it
clear what is being tested, and to prevent polluting the expected output with
the directives themselves.

Patch by Andy Gibbs! (with slight modifications)

The new Frontend/verify-* tests exercise the functionality of this commit,
as well as r159978, r159979, and r160053 (Andy's other -verify enhancements).

llvm-svn: 160068
2012-07-11 19:58:23 +00:00
..
11-27-2007-FloatLiterals.c Added testcase for commit r122963. 2011-01-06 16:56:00 +00:00
badstring_in_if0.c
bcpl-escaped-newline.c Allow -verify directives to be filtered by preprocessing. 2012-07-11 19:58:23 +00:00
block_cmt_end.c Change magic string "abc" to better magic string "qux". 2011-05-10 20:28:29 +00:00
c90.c PR12717: Clang supports hexadecimal floating-point literals in all language 2012-06-15 05:07:49 +00:00
char-escapes.c Fix diagnostic for reporting bad escape sequence. 2010-12-03 00:09:56 +00:00
char-literal-encoding-error.c Implement warning for non-wide string literals with an unexpected encoding. Downgrade error for non-wide character literals with an unexpected encoding to a warning for compatibility with gcc and older versions of clang. <rdar://problem/10837678>. 2012-02-11 05:08:10 +00:00
char-literal.cpp Fix off-by-one error in UTF-16 encoding: don't try to use a surrogate pair for U+FFFF. 2012-06-13 05:41:29 +00:00
clang-keywords.cpp Add __char16_t and __char32_t as aliases for the C++0x char16_t and 2010-09-13 23:21:44 +00:00
comment-escape.c
conflict-marker.c Allow -verify directives to be filtered by preprocessing. 2012-07-11 19:58:23 +00:00
constants.c Add and update tests for character literals 2012-01-18 12:27:10 +00:00
counter.c
cxx0x_keyword.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
cxx0x_keyword_as_cxx98.cpp Make the -Wc++11-compat warnings ignored by default, so we don't break 2011-10-25 03:07:45 +00:00
cxx0x_raw_string_delim_length.cpp When checking the encoding of an 8-bit string literal, don't just check the 2012-03-08 21:59:28 +00:00
cxx0x_raw_string_unterminated.cpp Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
digraph.c
dollar-idents.c
escape_newline.c In Lexer::getCharAndSizeSlow[NoWarn] if we come up against 2011-12-22 04:38:07 +00:00
gnu_keywords.c
has_extension.c Accept __has_feature(__feature__) as a synonym for __has_feature(feature) (and 2012-02-25 10:41:10 +00:00
has_extension_cxx.cpp Add feature check "cxx_local_type_template_args" describing support 2012-04-04 00:48:39 +00:00
has_feature_address_sanitizer.cpp implement __has_feature(address_sanitizer); also use LangOpts.AddressSanitizer instead of CodeGenOpts.AddressSanitizer 2011-11-22 01:28:36 +00:00
has_feature_c1x.c Some improvements to the handling of C11 atomic types: 2012-01-16 17:27:18 +00:00
has_feature_cxx0x.cpp Add a query macro for C++11 N3276, decltype does not require complete 2012-04-10 20:00:33 +00:00
has_feature_exceptions.cpp
has_feature_modules.m Add __has_feature(modules) to indicate when modules are available (in 2012-01-04 21:16:09 +00:00
has_feature_objc_arc.m Make -fobjc-nonfragile-abi the -cc1 default, since it's the 2011-10-02 01:16:38 +00:00
has_feature_rtti.cpp
has_feature_type_traits.cpp Implement support for the __is_final type trait, to determine whether 2011-12-03 18:14:24 +00:00
hexfloat.cpp PR12717: Clang supports hexadecimal floating-point literals in all language 2012-06-15 05:07:49 +00:00
ms-extensions.c Make -fms-compatibility imply -fms-extensions. Fixes PR11204. 2011-10-24 15:27:23 +00:00
ms-extensions.cpp ext_reserved_user_defined_literal must not default to Error in MicrosoftMode. Hence create ext_ms_reserved_user_defined_literal that doesn't default to Error; otherwise MSVC headers won't parse. 2012-04-07 23:09:23 +00:00
msdos-cpm-eof.c
multiple-include.c
newline-eof-c++11.cpp C++11 no longer requires files to end with a newline 2012-04-13 01:00:34 +00:00
newline-eof-c++98-compat.cpp %clang -cc1 -> %clang_cc1 2012-04-15 04:41:49 +00:00
newline-eof.c Fix the location of the fixit for -Wnewline-eof. 2012-06-19 03:09:38 +00:00
numeric-literal-trash.c
pragma-mark.c
pragma-message.c Have #pragma message not turn into error by -Werror, by default. Fixes rdar://9308989. 2011-04-21 17:11:44 +00:00
pragma-operators.cpp [-E] Emit a rewritten _Pragma on its own line. 2012-06-15 23:33:51 +00:00
preamble.c Make Lexer::ComputePreamble accept a LangOptions parameter, otherwise it may be 2011-08-25 20:39:19 +00:00
rdar-8914293.c Warn for missing terminating " or ' instead of error for gcc compatibility. Fixed rdar://8914293. 2011-02-15 23:45:31 +00:00
rdr-6096838-2.c Modify how the -verify flag works. Currently, the verification string and 2011-12-15 00:38:15 +00:00
rdr-6096838.c tests: Force triple to avoid limited precision warning on win32. 2010-10-18 23:37:08 +00:00
string-literal-encoding.c When checking the encoding of an 8-bit string literal, don't just check the 2012-03-08 21:59:28 +00:00
string_concat.cpp Modify how the -verify flag works. Currently, the verification string and 2011-12-15 00:38:15 +00:00
token-concat-2.c
token-concat.c
token-concat.cpp User-defined literals: reject string and character UDLs in all places where the 2012-03-06 03:21:47 +00:00
unknown-char.c
utf-16.c Fix tests that weren't actually verifying anything. 2012-04-15 22:09:44 +00:00
utf-16.c.txt
utf8-char-literal.cpp Add and update tests for character literals 2012-01-18 12:27:10 +00:00
wchar-signedness.c Add a predefine __WINT_UNSIGNED__, similar to __WCHAR_UNSIGNED__, and test them both for ARM and X86. 2012-05-04 11:23:40 +00:00
wchar.c Add and update tests for character literals 2012-01-18 12:27:10 +00:00