| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
llvm-svn: 97835
|
|
|
|
| |
llvm-svn: 97831
|
|
|
|
|
|
|
|
|
|
| |
copy the source buffers provided rather than referencing them
directly, so that the caller can free those buffers immediately after
calling clang_createTranslationUnitFromSourceFile(). Otherwise, we
risk hitting those buffers later (when building source ranges, forming
diagnostics, etc.).
llvm-svn: 97296
|
|
|
|
|
|
| |
the ASTUnit itself is destroyed. Fixes <rdar://problem/7649385>.
llvm-svn: 96628
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
this as an argument.
llvm-svn: 96316
|
|
|
|
| |
llvm-svn: 96315
|
|
|
|
|
|
|
|
|
| |
live as long as the ASTUnit. This is useful for clients which want to maintain
pointers to the LangOptions object which ultimately lives in the
CompilerInvocation, although it would be nice to make all of this ownership
stuff more explicit and obvious.
llvm-svn: 94924
|
|
|
|
|
|
|
|
| |
stuff. Use a static_cast instead.
I don't know if this hack is the right fix. Doug, please take a look.
llvm-svn: 94895
|
|
|
|
|
|
|
| |
line -- they may be remapped (fake) files. This is useful for testing parsing
entirely from memory.
llvm-svn: 94395
|
|
|
|
|
|
| |
translation units that include unsaved files.
llvm-svn: 94258
|
|
|
|
|
|
|
| |
resources (e.g., /usr/lib/clang/1.1) to be passed on the command line instead of
computed.
llvm-svn: 91370
|
|
|
|
|
|
| |
CIndex to pass in the right directory (previously it was using the path to the main executable, which generally is wrong).
llvm-svn: 91238
|
|
|
|
|
|
| |
CompilerInvocation::CreateFromArgs.
llvm-svn: 91237
|
|
|
|
| |
llvm-svn: 90822
|
|
|
|
|
|
|
|
| |
from a source file.
- This allows CIndex to avoid iterating over all the top-level decls when using
a PCH, which means we deserialize far fewer decls.
llvm-svn: 90559
|
|
|
|
|
|
| |
propogate and simplify.
llvm-svn: 90379
|
|
|
|
| |
llvm-svn: 90349
|
|
|
|
|
|
| |
UseBumpAllocator.
llvm-svn: 90348
|
|
|
|
|
|
| |
source files.
llvm-svn: 90311
|
|
|
|
| |
llvm-svn: 90310
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(clang/driver) command line arguments (including the source file).
- The arguments are expected to include the source file.
- The idea is that even though this is a somewhat odd API, its the form which
many tools can most easily use (for example, by interposing with the compiler).
Also, switch index-test's -ast-from-source to use this entry point, and provide
a -arg command line argument which can be used to test that the command line
arguments are handled correctly.
llvm-svn: 90288
|
|
|
|
| |
llvm-svn: 90263
|
|
|
|
|
|
|
| |
Also, add an -ast-from-source option to index-test which allows index-test to
run on source files directly.
llvm-svn: 90223
|
|
|
|
| |
llvm-svn: 90033
|
|
|
|
|
|
|
|
| |
- This ended up being hard to factor, sorry for the large diff.
- Some post-commit cleanup to come.
llvm-svn: 88833
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the front-end (as far as the preprocessor goes), follow the usual logic of
inserting the (original include path) name into the predefines buffer. This
pushes the responsibility for handling this to PCH instead of the front-end. In
PCH this requires being a little more clever when we diff the predefines
buffers.
Neither of these solutions are particularly great, I think what we eventually
should do is something like gcc where we insert a special marker to indicate the
PCH file, but then run the preprocessor as usual. This would be clearer and
would allow us to drop the overly clever predefines handling.
llvm-svn: 86806
|
|
|
|
| |
llvm-svn: 86775
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ASTUnit to specify
alternate DiagnosticClients. To match this API, ASTUnit::LoadFromPCHFile() now takes a corresponding
DiagnosticClient* argument as well. The DiagnosticClient object is destroyed when the ASTUnit object
is destroyed.
The CIndex library now uses this API to create a 'IgnoreDiagnosticsClient' that simply silences
diagnostics when using the clang_createTranslationUnitFromSourceFile() function. This fixes
<rdar://problem/7312058>. This API can change in the future as we add more flexibility for clients.
llvm-svn: 84539
|
|
|
|
|
|
| |
Removing this shared data should enable clang_createTranslationUnit/clang_createTranslationUnitFromSourceFile to be run from multiple threads (related to <rdar://problem/7303432>).
llvm-svn: 84499
|
|
|
|
| |
llvm-svn: 84415
|
|
|
|
|
|
|
|
|
|
|
| |
created ASTContext to use
its own BumpPtrAllocator to allocate ASTs.
Change clang_createTranslationUnit (CIndex) to pass 'UseBumpPtrAllocator = true' to
ASTUnit::LoadFromPCHFile().
llvm-svn: 84296
|
|
|
|
|
|
|
|
|
|
| |
header or not via a new "PCHLevel" field in Decl. We currently use
this information to help CIndex filter out declarations that came from
a precompiled header (rather than from an AST file). Further down the
road, it can be used to help implement multi-level precompiled
headers.
llvm-svn: 84267
|
|
|
|
| |
llvm-svn: 84208
|
|
|
|
|
|
|
|
| |
predefines.
- It isn't really clear what to do with the preprocessor here, but this is more sensible.
llvm-svn: 82431
|
|
|
|
|
|
| |
control of this.
llvm-svn: 82430
|
|
|
|
| |
llvm-svn: 81346
|
|
|
|
|
|
|
| |
Implement clang_getCursor() - wired up to Argiris's work.
Implement callbacks for CXCursor_ObjCProtocolRef.
llvm-svn: 81004
|
|
|
|
|
|
| |
clang_getTranslationUnitSpelling().
llvm-svn: 80932
|
|
|
|
|
|
| |
variables.", this is breaking x86_64-apple-darwin10 and Linux tests.
llvm-svn: 80896
|
|
|
|
|
|
| |
previous commit this depends on is breaking x86_64-apple-darwin10 and Linux tests.
llvm-svn: 80895
|
|
|
|
| |
llvm-svn: 80861
|
|
|
|
|
|
|
|
| |
variables.
Add clang_getTranslationUnitSpelling().
llvm-svn: 80859
|
|
|
|
| |
llvm-svn: 74196
|
|
|
|
| |
llvm-svn: 73825
|
|
ASTUnit is a helper class to allow easy loading of an ASTContext from a PCH file. No users for now.
llvm-svn: 73819
|