| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
| |
finished.
This mainly prevents failures and/or crashes when multiple processes try to read/write the same PCH file. (rdar://8392711&8294781); suggestion & review by Daniel!
llvm-svn: 114187
|
|
|
|
|
|
|
| |
the main file isn't an included file, and the IncludePos is
always SourceLocation().
llvm-svn: 112269
|
|
|
|
| |
llvm-svn: 111474
|
|
|
|
| |
llvm-svn: 111471
|
|
|
|
| |
llvm-svn: 111467
|
|
|
|
|
|
|
| |
convoluted and a bit leaky. Now, the Diagnostic object owns its
DiagnosticClient.
llvm-svn: 111437
|
|
|
|
| |
llvm-svn: 111279
|
|
|
|
| |
llvm-svn: 111265
|
|
|
|
|
|
| |
contain all the module code in the future. Update the Makefiles, CMake projects and the Xcode project. I hope I did everything right for Xcode. No functionality change.
llvm-svn: 111258
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
declarations (in addition to macros). Each kind of declaration maps to
a certain set of completion contexts, and the ASTUnit completion logic
introduces the completion strings for those declarations if the actual
code-completion occurs in one of the contexts where it matters.
There are a few new code-completion-context kinds. Without these,
certain completions (e.g., after "using namespace") would need to
suppress all global completions, which would be unfortunate.
Note that we don't get the priorities right for global completions,
because we don't have enough type information. We'll need a way to
compare types in an ASTContext-agnostic way before this can be
implemented.
llvm-svn: 111093
|
|
|
|
|
|
| |
need to force it
llvm-svn: 110993
|
|
|
|
|
|
|
| |
for parsing, so that it can persist beyond the lifetime of the parsing
call.
llvm-svn: 110978
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
completion within the translation unit using the same command-line
arguments for parsing the translation unit. Eventually, we'll reuse
the precompiled preamble to improve code-completion performance, and
this also gives us a place to cache results.
Expose this function via the new libclang function
clang_codeCompleteAt(), which performs the code completion within a
CXTranslationUnit. The completion occurs in-process
(clang_codeCompletion() runs code completion out-of-process).
llvm-svn: 110210
|
|
|
|
|
|
| |
PCHReader and PCHWriter are initialized to correctly pick up all initializer. On the upside, this means that there is far less repetition in the dependent PCH now.
llvm-svn: 109823
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
of the usual consistency checks used to determine when a precompiled
header is incompatible with the translation unit it's being loaded
into.
Enable this option when loading a precompiled preamble, because the
preamble loader will be performing all of this checking itself. Enable
the preamble-based test now that it's working.
This option is also useful for debugging Clang's PCH
(<rdar://problem/7532213>).
llvm-svn: 109475
|
|
|
|
| |
llvm-svn: 109375
|
|
|
|
| |
llvm-svn: 107994
|
|
|
|
| |
llvm-svn: 107915
|
|
|
|
|
|
| |
to parallel what is done for AST inputs.
llvm-svn: 105579
|
|
|
|
|
|
| |
instead of an IsAST bool.
llvm-svn: 105578
|
|
|
|
| |
llvm-svn: 105577
|
|
|
|
| |
llvm-svn: 104856
|
|
|
|
|
|
| |
statements }) in the code-completion results if explicitly requested.
llvm-svn: 104637
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
separate count of "suppressed" errors. This way, semantic analysis
bits that depend on the error count to determine whether problems
occured (e.g., some template argument deduction failures, jump-scope
checking) will not get confused.
The actual problem here is that a missing #include (which is a fatal
error) could cause the jump-scope checker to run on invalid code,
which it is not prepared to do. Trivial fix for both
<rdar://problem/7775941> and <rdar://problem/7775709>.
llvm-svn: 101297
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
of errors and warnings. This allows us to emit something like this:
2 warnings and 1 error generated.
instead of:
3 diagnostics generated.
This also stops counting 'notes' because they are just follow-on information
about the previous diag, not a diagnostic in themselves.
llvm-svn: 100675
|
|
|
|
|
|
| |
maybe-ownership vs. ownership.
llvm-svn: 100498
|
|
|
|
| |
llvm-svn: 99894
|
|
|
|
|
|
|
|
| |
actual action.
- This is easier to use, and more reliable for timing the thing this was
actually meant to be useful for.
llvm-svn: 98978
|
|
|
|
|
|
| |
tie its creation to a CC1 flag -detailed-preprocessing-record.
llvm-svn: 98963
|
|
|
|
| |
llvm-svn: 98722
|
|
|
|
| |
llvm-svn: 98721
|
|
|
|
| |
llvm-svn: 98719
|
|
|
|
|
|
| |
<rdar://problem/7735566>.
llvm-svn: 98613
|
|
|
|
|
|
| |
and start simplifying the interfaces in SourceManager that can fail.
llvm-svn: 98594
|
|
|
|
| |
llvm-svn: 97878
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
we attach diagnostics to translation units and code-completion
results, so they can be queried at any time.
To facilitate this, the new StoredDiagnostic class stores a diagnostic
in a serializable/deserializable form, and ASTUnit knows how to
capture diagnostics in this stored form. CIndex's CXDiagnostic is a
thin wrapper around StoredDiagnostic, providing a C interface to
stored or de-serialized diagnostics.
I've XFAIL'd one test case temporarily, because currently we end up
storing diagnostics in an ASTUnit that's never returned to the user
(because it contains errors). I'll introduce a temporary fix for this
soon; the real fix will be to allow us to return and query invalid ASTs.
llvm-svn: 96592
|
|
|
|
| |
llvm-svn: 96314
|
|
|
|
|
|
|
|
| |
This allows clients to install their own CompilerInvocation object, which is
important for clients that may wish to create references to things like
LangOptions whose lifetime will extend past that of the CompilerInstance.
llvm-svn: 94923
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
so that CIndex can report diagnostics through the normal mechanisms
even when executing Clang in a separate process. This applies both
when performing code completion and when using ASTs as an intermediary
for clang_createTranslationUnitFromSourceFile().
The serialized format is not perfect at the moment, because it does
not encapsulate macro-instantiation information. Instead, it maps all
source locations back to the instantiation location. However, it does
maintain source-range and fix-it information. To get perfect fidelity
from the serialized format would require serializing a large chunk of
the source manager; at present, it isn't clear if this code will live
long enough for that to matter.
llvm-svn: 94740
|
|
|
|
|
|
| |
rewriting for any target. (refixes radar 7530235).
llvm-svn: 93331
|
|
|
|
|
|
|
|
| |
clang -cc1 logic for running an action against a set of options.
- This should make it easier to build tools that have a clang -cc1 like
interface, but aren't actually part of clang -cc1.
llvm-svn: 93282
|
|
|
|
| |
llvm-svn: 91176
|
|
|
|
|
|
| |
to) update all clients to be able to handle failure.
llvm-svn: 90437
|
|
|
|
| |
llvm-svn: 90436
|
|
|
|
| |
llvm-svn: 90322
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
-remap-file=from;to
which takes the file "from" and transparently replaces its contents
with the contents of the file "to" from the source manager's
perspective. This is the moral equivalent of
cp from saved
cp to from
<call clang>
cp saved from
rm saved
without all of the pesky file copying.
llvm-svn: 90307
|
|
|
|
|
|
|
|
|
|
| |
files with the contents of an arbitrary memory buffer. Use this new
functionality to drastically clean up the way in which we handle file
truncation for code-completion: all of the truncation/completion logic
is now encapsulated in the preprocessor where it belongs
(<rdar://problem/7434737>).
llvm-svn: 90300
|
|
|
|
|
|
| |
for a massive speedup
llvm-svn: 90209
|
|
|
|
|
|
|
|
|
|
|
| |
CompilerInstance already contains various objects that are used
throughout the entire run.
Also addresses Daniels review comments in:
http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20091123/024508.html
llvm-svn: 90073
|
|
|
|
|
|
| |
output file failed.
llvm-svn: 89502
|