aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-08-19Refactor common functionality into SourceManager::getFileIDSize, no ↵Argyrios Kyrtzidis
functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138127 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Static Analyzer Diagnostics: Kill the addVisitorCreator(callbackTy, void*) ↵Anna Zaks
API in favor of addVisitor(BugReporterVisitor*). 1) Create a header file to expose the predefined visitors. And move the parent(BugReporterVisitor) there as well. 2) Remove the registerXXXVisitor functions - the Visitor constructors/getters can be used now to create the object. One exception is registerVarDeclsLastStore(), which registers more then one visitor, so make it static member of FindLastStoreBRVisitor. 3) Modify all the checkers to use the new API. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138126 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Remove 2008-10-29-WrongOffset.cpp since it requires a header file on allEric Christopher
platforms. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138118 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Migrate 2007-10-01-StructResize.cpp from llvm/test/FrontendC++.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138117 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Migrate 2008-01-12-VecInit.cpp from llvm/test/FrontendC++.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138114 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Migrate 2008-05-07-CrazyOffsetOf.cpp from llvm/test/FrontendC++.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138113 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Migrate 2008-10-29-WrongOffset.cpp from llvm/test/FrontendC++.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138112 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Migrate 2009-03-17-dbg.cpp from llvm/test/FrontendC++.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138111 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Migrate 2009-04-23-bool2.cpp from llvm/test/FrontendC++.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138110 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Remove this test. It's failing and it's not that good of a test.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138106 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Migrate 2009-06-16-DebugInfoCrash.cpp from llvm/test/FrontendC++.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138099 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Migrate 2009-07-16-PrivateCopyConstructor.cpp from llvm/test/FrontendC++.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138098 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Migrate 2009-08-05-ZeroInitWidth.cpp from llvm/test/FrontendC++.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138097 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Migrate 2009-07-16-Using.cpp from llvm/test/FrontendC++.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138096 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Migrate 2009-08-11-VectorRetTy.cpp from llvm/test/FrontendC++.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138095 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Migrate 2009-09-09-packed-layout.cpp test from llvm/test/FrontendC++.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138090 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Migrate 2009-10-27-crash.cpp from llvm/test/FrontendC++.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138089 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Migrate 2009-12-23-MissingSext.cpp from test/FrontendC++ and modifyEric Christopher
for sext -> and difference. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138088 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Remove another unused function from ModuleManager. We have no notion of a ↵Douglas Gregor
'last' module any more git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138081 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Remove unused function ModuleManager::exportLookup()Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138079 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Do not depend on the standard library on the system. Replace the #include withNick Lewycky
the relevant section of libcxx. As an aside, I am not at all confident that this test is still testing that it's supposed to. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138075 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Improve the correctness and accuracy of the message for ↵Matt Beaumont-Gay
-Wdynamic-class-memaccess git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138074 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19objc-arc: @property definitions should default to (strong) when notFariborz Jahanian
specified. // rdar://9971982 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138062 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Revers r138040. Need to look at a few buildbot failures.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138049 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19objective-c: Bring objective-c handling of decl contextFariborz Jahanian
to modernity. Instead of passing down individual context objects from parser to sema, establish decl context in parser and have sema access current context as needed. I still need to take of Doug's comment for minor cleanups. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138040 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Rename -Wstrl-incorrect-size to -Wstrlcpy-strlcat-size. This warning really ↵Ted Kremenek
is just specific to strlcpy and strlcat. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138038 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Reflow code. No functionality change.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138032 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Warn about and truncate UCNs that are too big for their character literal type.Craig Topper
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138031 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Teach ModuleManager::addModule() to check whether a particular moduleDouglas Gregor
has already been loaded before allocating a new Module structure. If the module has already been loaded (uniquing based on file name), then just return the existing module rather than trying to load it again. This allows us to load a DAG of modules. Introduce a simple test case that forms a diamond-shaped module graph, and illustrates that a source file importing the bottom of the diamond can see declarations in all four of the modules that make up the diamond. Note that this version moves the file-opening logic into the module manager, rather than splitting it between the module manager and the AST reader. More importantly, it properly handles the weird-but-possibly-useful case of loading an AST file from "-". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138030 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Fix a memory leak in the analyzer - BugReports didn't get freed. Plus, ↵Anna Zaks
remove invalid assert from the destructor which wasn't called previously due to the leak. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138027 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Fix the rest of the indent goofiness here.Chandler Carruth
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138024 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Fix an egregious formatting goof.Chandler Carruth
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138023 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-19Add a completely hacky workaround for pch kext files with different extensionsEric Christopher
when falling back to cc1plus for our compile. rdar://9963920 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138017 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18Enhance -Wstrl-incorrect-size to not report a FIXIT for destinations that ↵Ted Kremenek
are flexible arrays or have size 1. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138004 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18Static Analyzer Diagnostics: Move custom diagnostic visitors from ↵Anna Zaks
BugReporterContext to BugReport. One API change: I added BugReporter as an additional parameter to the BugReporterVisitor::VisitNode() method to allow visitors register other visitors with the report on the fly (while processing a node). This functionality is used by NilReceiverVisitor, which registers TrackNullOrUndefValue when the receiver is null. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138001 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18[libclang] Remove NestedNameSpecifierVisit, as Clang says that this code is ↵Ted Kremenek
dead. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137999 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18Don't accept a typo correction if the corrected identifier is the same as theKaelyn Uhrain
uncorrected identifier. Fixes a problem pointed out by Eli. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137987 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18Remove main() *errors* from warning group.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137983 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18Reapply r137903, but fix the definition of size_t in the test case to use ↵Ted Kremenek
__SIZE_TYPE__ (and hence be portable). Also, change the warning to -Wstrl-incorrect-size. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137980 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18[libclang] Support code-completion inside macro arguments.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137973 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18Temporarily revert r137925 to appease buildbots. Original commit message:Chad Rosier
Teach ModuleManager::addModule() to check whether a particular module has already been loaded before allocating a new Module structure. If the module has already been loaded (uniquing based on file name), then just return the existing module rather than trying to load it again. This allows us to load a DAG of modules. Introduce a simple test case that forms a diamond-shaped module graph, and illustrates that a source file importing the bottom of the diamond can see declarations in all four of the modules that make up the diamond. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137971 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18Add a test for checking that custom diagnostic visitors are working.Anna Zaks
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137970 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18Rework DiagnoseInvalidRedeclaration to add the ability to correct typos whenKaelyn Uhrain
diagnosing invalid function redeclarations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137966 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18[libclang] Annotate correctly macro argument tokens.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137961 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18Use StringRef, rather than C string APIs.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137958 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18Fixes traversal of class template nodes on template instantiations.Manuel Klimek
Also fixes a spelling error. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137945 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18Add support for MSVC __unaligned attribute. Necessary to parse MSVC headers ↵Francois Pichet
in 64-bit mode (ie: when _M_IA64 or _M_AMD64 is defined) more info: http://msdn.microsoft.com/en-us/library/ms177389.aspx git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137935 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18Always mark friend function declarations in class templates asChandler Carruth
implicitly instantiable, even if we don't see a body on the friend function declaration. The body may simply have not yet been attached. This fixes PR10666. There may be an alternate, preferred implementation strategy, see my FIXME. Review would definitely be appreciated Doug. =D git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137934 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18Teach ModuleManager::addModule() to check whether a particular moduleDouglas Gregor
has already been loaded before allocating a new Module structure. If the module has already been loaded (uniquing based on file name), then just return the existing module rather than trying to load it again. This allows us to load a DAG of modules. Introduce a simple test case that forms a diamond-shaped module graph, and illustrates that a source file importing the bottom of the diamond can see declarations in all four of the modules that make up the diamond. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137925 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-18Keep track of which modules have been loaded directly (e.g., viaDouglas Gregor
-import-module) vs. loaded because some other module depends on them. As part of doing this, pass down the module that caused a module to be loaded directly, rather than assuming that we're loading a chain. Finally, write out all of the directly-loaded modules when serializing an AST file (using the new IMPORTS record), so that an AST file can depend on more than one other AST file, all of which will be loaded when that AST file is loaded. This allows us to form and load a tree of modules, but we can't yet load a DAG of modules. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137923 91177308-0d34-0410-b5e6-96231b3b80d8