llvm-project/clang/test
Douglas Gregor 3f4bea0646 Introduce basic support for loading a precompiled preamble while
reparsing an ASTUnit. When saving a preamble, create a buffer larger
than the actual file we're working with but fill everything from the
end of the preamble to the end of the file with spaces (so the lexer
will quickly skip them). When we load the file, create a buffer of the
same size, filling it with the file and then spaces. Then, instruct
the lexer to start lexing after the preamble, therefore continuing the
parse from the spot where the preamble left off.

It's now possible to perform a simple preamble build + parse (+
reparse) with ASTUnit. However, one has to disable a bunch of checking
in the PCH reader to do so. That part isn't committed; it will likely
be handled with some other kind of flag (e.g., -fno-validate-pch).

As part of this, fix some issues with null termination of the memory
buffers created for the preamble; we were trying to explicitly
NULL-terminate them, even though they were also getting implicitly
NULL terminated, leading to excess warnings about NULL characters in
source files.

llvm-svn: 109445
2010-07-26 21:36:20 +00:00
..
ASTMerge Hack in some really terrible C++ record PCH support that I need right now. 2010-06-03 19:28:45 +00:00
Analysis Added an path-sensitive unreachable code checker to the experimental analyzer checks. 2010-07-23 23:04:53 +00:00
CXX Treat template parameters as part of the declaration-specifiers for the 2010-07-16 08:13:16 +00:00
CodeCompletion Only filter out names reserved for the implementation (e.g., __blah or 2010-07-14 17:44:04 +00:00
CodeGen Switch some random local-decl cleanups over to using lazy cleanups. Turn on 2010-07-21 06:13:08 +00:00
CodeGenCXX Mangle enum constant expressions. Fixes rdar://problem/8204122 2010-07-24 01:17:35 +00:00
CodeGenObjC Return type of a setter call caused by 2010-07-24 00:34:08 +00:00
CodeGenObjCXX Support catching Objective C pointers in C++ under the non-fragile NeXT runtime. 2010-07-24 00:37:23 +00:00
Coverage Eliminate the "minimal" and printing parser actions, which only ever 2010-07-26 04:08:02 +00:00
Driver Driver/Darwin: Set -force_cpusubtype_ALL only by default on x86. 2010-07-22 01:47:22 +00:00
FixIt Introduce -f{no-}spell-checking options to enable/disable 2010-07-09 17:35:33 +00:00
Frontend Driver/Darwin: Resolve deployment target defaulting to be more predictable; 2010-07-15 16:18:06 +00:00
Headers Headers: Define __INT64_TYPE__ in terms of getInt64Type(), which isn't always 2010-06-30 06:30:56 +00:00
Index Update test case to include USRs containing offsets instead of line/columns. 2010-07-22 11:30:17 +00:00
Lexer tests: Make FileCheck version check that preamble isn't longer than we expected. 2010-07-22 02:22:24 +00:00
Misc tests: Use %clangxx when using driver for C++, in case C++ support is disabled. 2010-06-29 16:52:24 +00:00
PCH Introduce basic support for loading a precompiled preamble while 2010-07-26 21:36:20 +00:00
Parser Eliminate the "minimal" and printing parser actions, which only ever 2010-07-26 04:08:02 +00:00
Preprocessor Add another terrible VC++ compatibility hack: allow users to 2010-07-17 16:24:30 +00:00
Rewriter Fix a rewriter bug which originates in SemaInit involving 2010-07-21 17:36:39 +00:00
Sema turn down the logical bitwise confusion warning to not warn 2010-07-24 01:10:11 +00:00
SemaCXX turn down the logical bitwise confusion warning to not warn 2010-07-24 01:10:11 +00:00
SemaObjC Warn when property ivar lookup finds a global variable 2010-07-22 23:33:21 +00:00
SemaObjCXX Support catching Objective C pointers in C++ under the non-fragile NeXT runtime. 2010-07-24 00:37:23 +00:00
SemaTemplate PR7698: Make sure we correctly handle the initialization of an array with 2010-07-24 21:19:15 +00:00
CMakeLists.txt Add test cases for r98003 and r98006. 2010-03-08 23:38:27 +00:00
Makefile daniel doesn't hate me, he hates macpython 2.5, which 2010-07-18 18:42:35 +00:00
TestRunner.sh Switch TestRunner.sh to just use 'lit'. 2009-09-20 22:00:23 +00:00
cxx-sections.data Update C++ section data and directory structure to reflect N2914 2009-06-30 16:45:27 +00:00
lit.cfg tests: Use %clangxx when using driver for C++, in case C++ support is disabled. 2010-06-29 16:52:24 +00:00
lit.site.cfg.in Rework site config for cmake to be generated at configure time, and only pass 2009-11-07 23:53:32 +00:00
make_test_dirs.pl Add the structure for a C++ test suite that mimics the structure of the C++ standard 2009-06-13 06:06:53 +00:00