aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/ChainedIncludesSource.cpp
AgeCommit message (Collapse)AuthorFilesLines
2013-02-07Simplify FindExternalVisibleDeclsByName by making it return a bool indicatingRichard Smith1-1/+1
if it found any decls, rather than returning a list of found decls. This removes a returning-ArrayRef-to-deleted-storage bug from MultiplexExternalSemaSource (in code not exercised by any of the clang binaries), reduces the work required in the found-no-decls case with PCH, and importantly removes the need for DeclContext::lookup to be reentrant. No functionality change intended! llvm-svn: 174576
2012-12-04Sort all of Clang's files under 'lib', and fix up the broken headersChandler Carruth1-5/+5
uncovered. This required manually correcting all of the incorrect main-module headers I could find, and running the new llvm/utils/sort_includes.py script over the files. I also manually added quite a few missing headers that were uncovered by shuffling the order or moving headers up to be main-module-headers. llvm-svn: 169237
2012-11-16Since CreateTargetInfo is taking ownership of the target options, passDouglas Gregor1-1/+1
it as a pointer. llvm-svn: 168136
2012-11-15[modules] Setup the import location of a module file and use itArgyrios Kyrtzidis1-1/+1
as the include location of the main file of an imported module. llvm-svn: 168061
2012-11-09Turn FrontendInputFile into an immutable class and have it also acceptArgyrios Kyrtzidis1-1/+1
a memory buffer instead of only a filename. llvm-svn: 167627
2012-11-09Make CompilerInstance::InitializeSourceManager accept a FrontendInputFile,Argyrios Kyrtzidis1-3/+3
no functionality change. llvm-svn: 167626
2012-10-23Make DiagnosticOptions intrusively reference-counted, and make sureDouglas Gregor1-2/+2
the various stakeholders bump up the reference count. In particular, the diagnostics engine now keeps the DiagnosticOptions object alive. llvm-svn: 166508
2012-10-22Allow clients of the AST reader to specify what kinds of AST loadDouglas Gregor1-1/+2
failures they know how to tolerate, e.g., out-of-date input files or configuration/version mismatches. Suppress the corresponding diagnostics if the client can handle it. No clients actually use this functionality, yet. llvm-svn: 166449
2012-10-22Distinguish the various kinds of AST file loading failures:Douglas Gregor1-1/+4
file corruption, compiler version mismatch, target/language configuration mismatch, out-of-date AST file. No functionality change yet. llvm-svn: 166446
2012-10-09Rework the (de-)serialization of macros, as stored inDouglas Gregor1-0/+2
MacroInfo*. Instead of simply dumping an offset into the current file, give each macro definition a proper ID with all of the standard modules-remapping facilities. Additionally, when a macro is modified in a subsequent AST file (e.g., #undef'ing a macro loaded from another module or from a precompiled header), provide a macro update record rather than rewriting the entire macro definition. This gives us greater consistency with the way we handle declarations, and ties together macro definitions much more cleanly. Note that we're still not actually deserializing macro history (we never were), but it's far easy to do properly now. llvm-svn: 165560
2012-03-11Unify naming of LangOptions variable/get function across the Clang stack ↵David Blaikie1-1/+1
(Lex to AST). The member variable is always "LangOpts" and the member function is always "getLangOpts". Reviewed by Chris Lattner llvm-svn: 152536
2012-02-20Basic: import IntrusiveRefCntPtr<> into clang namespaceDylan Noblesmith1-2/+2
The class name is long enough without the llvm:: added. Also bring in RefCountedBase and RefCountedBaseVPTR. llvm-svn: 150958
2012-02-05Basic: import OwningPtr<> into clang namespaceDylan Noblesmith1-7/+7
llvm-svn: 149798
2012-01-25Rework the external Sema source's ReadMethodPool() so that it doesn'tDouglas Gregor1-3/+2
return pre-built lists. Instead, it feeds the methods it deserializes to Sema so that Sema can unique them, which keeps the chains shorter. llvm-svn: 148889
2012-01-20Extract the (InputKind, std::string) pair used to describe inputs toDouglas Gregor1-2/+3
the front end into its own class, FrontendInputFile, to make it easier to introduce new per-input data. No functionality change. llvm-svn: 148546
2011-12-09Move ChainedIncludesSource into the Frontend library. This never reallyChandler Carruth1-0/+240
belonged in the Serialization library, it's setting up a compilation, not just deserializing. This should fix PR11512, making Serialization actually be layered below Frontend, a long standing layering violation in Clang. llvm-svn: 146233