diff options
author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2010-11-18 20:06:41 +0000 |
---|---|---|
committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2010-11-18 20:06:41 +0000 |
commit | 33e4e70c8c0a17e0ccb7465d96556b077a68ecb1 (patch) | |
tree | 7f65080a9221d10495e43911e7bbaeb2724084f7 /tools/libclang/CIndexCodeCompletion.cpp | |
parent | 9313aac61d425f14fa0b82c3dfe1eb2c3626d38c (diff) |
Refactoring of Diagnostic class.
-Move the stuff of Diagnostic related to creating/querying diagnostic IDs into a new DiagnosticIDs class.
-DiagnosticIDs can be shared among multiple Diagnostics for multiple translation units.
-The rest of the state in Diagnostic object is considered related and tied to one translation unit.
-Have Diagnostic point to the SourceManager that is related with. Diagnostic can now accept just a
SourceLocation instead of a FullSourceLoc.
-Reflect the changes to various interfaces.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119730 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/libclang/CIndexCodeCompletion.cpp')
-rw-r--r-- | tools/libclang/CIndexCodeCompletion.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/tools/libclang/CIndexCodeCompletion.cpp b/tools/libclang/CIndexCodeCompletion.cpp index 06c418dfb9..01c855ecc2 100644 --- a/tools/libclang/CIndexCodeCompletion.cpp +++ b/tools/libclang/CIndexCodeCompletion.cpp @@ -258,7 +258,9 @@ struct AllocatedCXCodeCompleteResults : public CXCodeCompleteResults { static unsigned CodeCompletionResultObjects; AllocatedCXCodeCompleteResults::AllocatedCXCodeCompleteResults() - : CXCodeCompleteResults(), Diag(new Diagnostic), + : CXCodeCompleteResults(), + Diag(new Diagnostic( + llvm::IntrusiveRefCntPtr<DiagnosticIDs>(new DiagnosticIDs))), SourceMgr(*Diag, FileMgr, FileSystemOpts) { if (getenv("LIBCLANG_OBJTRACKING")) { ++CodeCompletionResultObjects; |