summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
* Template instantiation for do-while statements.Douglas Gregor2009-05-156-13/+54
| | | | llvm-svn: 71899
* Factor code for adding module-level class lists into separate method.Daniel Dunbar2009-05-151-43/+43
| | | | | | - No functionality change. llvm-svn: 71898
* Fixup parsing for (throw,throw) and __extension__ throw 1.Mike Stump2009-05-152-9/+18
| | | | llvm-svn: 71897
* Template instantiation for WhileStmt and CXXConditionDeclExpr.Douglas Gregor2009-05-155-12/+59
| | | | llvm-svn: 71896
* Make sure that we use the canonical type for the names of instantiatedDouglas Gregor2009-05-154-5/+25
| | | | | | | | | | constructors and destructors. This is a requirement of DeclarationNameTable::getCXXSpecialName that we weren't assert()'ing, so it should have been caught much earlier :( Big thanks to Anders for the test case. llvm-svn: 71895
* improved on diagnosing misplacement of sentinel attributes.Fariborz Jahanian2009-05-154-6/+8
| | | | | | No change in functionality. llvm-svn: 71894
* Add hack to scan-build to fix PR 4215Ted Kremenek2009-05-151-0/+12
| | | | | | | (http://llvm.org/bugs/show_bug.cgi?id=4215): When xcodebuild is invoked with -sdk iphonesimulator3.0, use gcc-4.2 instead of the system default gcc. llvm-svn: 71891
* added -fblocks to the test.Fariborz Jahanian2009-05-151-1/+1
| | | | llvm-svn: 71890
* Allow instantiation of NULL expressions and statementsDouglas Gregor2009-05-152-0/+6
| | | | llvm-svn: 71889
* This patch finishes off the sentinel attribute handling forFariborz Jahanian2009-05-155-11/+83
| | | | | | blocks and function pointers. llvm-svn: 71888
* I take it back, InstantiateExpr does not check for null.Anders Carlsson2009-05-151-4/+7
| | | | llvm-svn: 71887
* Instantiation support for 'this'Anders Carlsson2009-05-152-0/+20
| | | | llvm-svn: 71886
* No need to null check the expr, Sema::SemaRef.InstantiateExpr handles all that.Anders Carlsson2009-05-151-7/+4
| | | | llvm-svn: 71885
* Add SemaTemplateInstantiateStmt.cpp to Xcode project.Anders Carlsson2009-05-151-0/+4
| | | | llvm-svn: 71884
* Make sure that the type associated with a class template is dependent.Douglas Gregor2009-05-153-4/+16
| | | | llvm-svn: 71878
* Template instantiation for "if" statements. Also:Douglas Gregor2009-05-156-13/+61
| | | | | | | | - Skip semantic analysis of the "if" condition if it is type-dependent. - Added the location of the "else" keyword into IfStmt, so that we can provide it for type-checking after template instantiation. llvm-svn: 71875
* Update checker build.Ted Kremenek2009-05-151-1/+1
| | | | llvm-svn: 71874
* A C++ member function always has either weak linkage (if it's inline or ↵Anders Carlsson2009-05-152-1/+16
| | | | | | defined inline) or strong linkage (other cases). llvm-svn: 71873
* Move statement instantiation into its own file. No functionality changeDouglas Gregor2009-05-153-132/+153
| | | | llvm-svn: 71872
* When word-wrapping, be more defensive about a ridiculously small number of ↵Douglas Gregor2009-05-152-3/+5
| | | | | | columns. Fixes <rdar://problem/6892178> llvm-svn: 71870
* Call ActOnStartOfFunctionDecl/ActOnFinishFunctionBody whenDouglas Gregor2009-05-155-16/+34
| | | | | | instantiating the definition of a function from a template. llvm-svn: 71869
* Name mangling for class template specializations and template arguments.Anders Carlsson2009-05-152-3/+91
| | | | llvm-svn: 71861
* Fix processing of -Ufoo to not inject "#undef foo 1" into the predefinesChris Lattner2009-05-151-1/+11
| | | | | | | | | | | | | | | | buffer. This caused exciting nonsense like this: $ clang t.c -fsyntax-only -UMACRO In file included from <built-in>:104: <command line>:1:14: warning: extra tokens at end of #undef directive [-Wextra-tokens] #undef MACRO 1 ^ // 1 diagnostic generated. rdar://6891800 llvm-svn: 71860
* Fix crash when deriving the enclosing summary of a method whose first ↵Ted Kremenek2009-05-152-12/+29
| | | | | | selector slot has a null IdentifierInfo*. This happens when analyzing Growl. llvm-svn: 71857
* Remove extra whitespace character in string literal. Purely cosmetic.Ted Kremenek2009-05-151-1/+1
| | | | llvm-svn: 71847
* Update checker build.Ted Kremenek2009-05-151-1/+1
| | | | llvm-svn: 71846
* Use dyn_cast instead of cast to allow our assumptions to be safely wrong.Ted Kremenek2009-05-151-4/+12
| | | | llvm-svn: 71843
* Cleanup internal checks bug reporting, allowing intermediate diagnostics to ↵Ted Kremenek2009-05-151-71/+134
| | | | | | be generated for bad argument warnings, bad branches, etc. llvm-svn: 71838
* Re-enable passing analyzer options from scan-build to ccc-analyzer.Ted Kremenek2009-05-151-9/+16
| | | | llvm-svn: 71836
* Don't strip quotes in compiler line for -D arguments.Ted Kremenek2009-05-151-1/+5
| | | | | | Fixes PR 4205. llvm-svn: 71835
* BugReporter (extensive diagnostics): Do not include the range of target '}'Ted Kremenek2009-05-151-4/+6
| | | | llvm-svn: 71832
* PathDiagnosticLocation::asRange(): for a PathDiagnosticLocation, the range ↵Ted Kremenek2009-05-151-0/+9
| | | | | | | | of a DeclStmt is only the decl, not the decl + initializer. llvm-svn: 71831
* BugReporter (extensive diagnostics): Add control-flow piece to '}' inTed Kremenek2009-05-151-16/+36
| | | | | | | loop body when generating 'Looping back to the head of the loop' diagnostics. llvm-svn: 71829
* Instantiate return statements.Anders Carlsson2009-05-153-1/+28
| | | | llvm-svn: 71825
* Fixup debug information for the location information for __blockMike Stump2009-05-151-2/+4
| | | | | | | | | | | | | | | | | | | | variables. For this to work, the backend needs to handle more complex forms for locations. A typical utterance would be: %forwarding = getelementptr %0* %use_by_ref, i32 0, i32 1 ; <i8**> [#uses=1] %0 = load i8** %forwarding ; <i8*> [#uses=1] %1 = bitcast i8* %0 to %0* ; <%0*> [#uses=1] %x = getelementptr %0* %1, i32 0, i32 4 ; <i32*> [#uses=1] %2 = bitcast i32* %x to { }* ; <{ }*> [#uses=1] call void @llvm.dbg.declare({ }* %2, { }* bitcast (%llvm.dbg.variable.type* @llvm.dbg.variable to { }*)) Presently when selection finds something it doesn't understand, it just avoids generating any information, which is safe, just incomplete. Radar 6867696 llvm-svn: 71824
* Add NullStmt::Clone and use itAnders Carlsson2009-05-153-1/+7
| | | | llvm-svn: 71823
* Instantiate goto and label statements. (Very useful, I know)Anders Carlsson2009-05-152-0/+29
| | | | llvm-svn: 71822
* Add SemaTemplateInstantiateExpr.cpp to Xcode project.Anders Carlsson2009-05-151-0/+4
| | | | llvm-svn: 71820
* Implement template instantiation for DeclStmtDouglas Gregor2009-05-154-2/+37
| | | | llvm-svn: 71818
* Don't warn if result/argument type of an implemented Fariborz Jahanian2009-05-145-5/+39
| | | | | | | method is a qualified id which conforms to the matching type of its method declaration. llvm-svn: 71817
* Template instantiation for the NULL statement. Lame, I knowDouglas Gregor2009-05-142-0/+16
| | | | llvm-svn: 71816
* Introduce basic support for instantiating the definitions of memberDouglas Gregor2009-05-147-17/+137
| | | | | | | functions of class templates. Only compound statements and expression statements are currently implemented. llvm-svn: 71814
* Check that the function being overridden is virtual.Anders Carlsson2009-05-147-12/+31
| | | | llvm-svn: 71802
* Improvements to the FunctionDecl getters/setters.Anders Carlsson2009-05-145-16/+20
| | | | llvm-svn: 71800
* Introduce a stack of instantiation scopes that are used to store the mapping ↵Douglas Gregor2009-05-145-5/+88
| | | | | | from variable declarations that occur within templates to their instantiated counterparts llvm-svn: 71799
* Fix <rdar://problem/6859457> [NSData dataWithBytesNoCopy] does not return a ↵Ted Kremenek2009-05-142-0/+35
| | | | | | retained object. llvm-svn: 71797
* Fix the same speling error in the test case (Duh).Anders Carlsson2009-05-141-1/+1
| | | | llvm-svn: 71793
* Link FunctionDecls instantiated from the member functions of a classDouglas Gregor2009-05-146-10/+107
| | | | | | | | template to the FunctionDecls from which they were instantiated. This is a necessary first step to support instantiation of the definitions of such functions, but by itself does essentially nothing. llvm-svn: 71792
* Fix a speling error.Anders Carlsson2009-05-141-1/+1
| | | | llvm-svn: 71791
* updated comments.Fariborz Jahanian2009-05-141-3/+2
| | | | llvm-svn: 71790
OpenPOWER on IntegriCloud