summaryrefslogtreecommitdiffstats
path: root/clang/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Avoid assert-crash in a case where the expression passed to EmitConstantExprEli Friedman2009-11-141-3/+1
| | | | | | legitimately has side-effects (and needs to be generated as a non-constant). llvm-svn: 88767
* Make __func__ and friends work correctly within the initializer for a staticEli Friedman2009-11-141-6/+8
| | | | | | local variable. llvm-svn: 88766
* Shuffle VerifyDiagnosticsClient API to be less fragile.Daniel Dunbar2009-11-142-31/+37
| | | | llvm-svn: 88765
* Add CompilerInstance::InitializeSourceManager.Daniel Dunbar2009-11-141-0/+38
| | | | llvm-svn: 88764
* PR5462: Don't run off the edge of the argument array for vararg handlingEli Friedman2009-11-141-1/+1
| | | | | | when there are more parameters in the prototype than arguments to the call. llvm-svn: 88759
* PR5483: Generate missing form of destructor when it is virtual. (SomeoneEli Friedman2009-11-141-0/+2
| | | | | | | more familiar with this stuff should double-check that there isn't some more general rule; this is purely from inspecting g++ output.) llvm-svn: 88755
* Fix for PR5489: don't skip the complete type requrirement for variableEli Friedman2009-11-141-2/+7
| | | | | | definitions just because the type happens to be an array type. llvm-svn: 88752
* When type-checking a static cast (or the static_cast part of a C-styleDouglas Gregor2009-11-143-46/+125
| | | | | | | | cast) that is converting to a class type, enumerate its constructors as in any other direct initialization. This ensures that we get the proper conversion sequence. llvm-svn: 88751
* Switch -verify implementation to use VerifyDiagnosticClient.Daniel Dunbar2009-11-141-8/+7
| | | | | | - Not tested, but -verify with multiple inputs should work now. llvm-svn: 88750
* Add VerifyDiagnosticsClient, to replace old -verify.Daniel Dunbar2009-11-142-0/+341
| | | | | | | | | | | | - This reimplements -verify as just another DiagnosticClient, which buffers the diagnostics and checks them when the source file is complete. There are some hacks to make this work, but they are all internal, and this exposes a better external interface. - This also tweaks a few things: o Errors are now just regular diagnostics. o Frontend diagnostics are now caught (for example, errors in command line arguments), although there isn't yet a way to specify that they are expected. That would be nice though. - Not yet used. llvm-svn: 88748
* Diagnose ambiguity of operator delete and operator delete[]. Sebastian, ↵Anders Carlsson2009-11-141-1/+6
| | | | | | please review. llvm-svn: 88747
* Add ASTConsumer to CompilerInstance.Daniel Dunbar2009-11-141-0/+5
| | | | llvm-svn: 88743
* Generate the old API when sending message to superFariborz Jahanian2009-11-141-1/+4
| | | | | | in a category implementation (objc 32bit api related). llvm-svn: 88741
* Handle CXXDefaultArgExprs in EmitLValue. Fixes PR5484.Anders Carlsson2009-11-141-2/+4
| | | | llvm-svn: 88735
* If we attempt to add a constructor template specialization that looksDouglas Gregor2009-11-145-22/+67
| | | | | | | | | | | | like a copy constructor to the overload set, just ignore it. This ensures that we don't try to use such a constructor as a copy constructor *without* triggering diagnostics at the point of declaration. Note that we *do* diagnose such copy constructors when explicitly written by the user (e.g., as an explicit specialization). llvm-svn: 88733
* Add static version of Preprocessor::getSpelling.Daniel Dunbar2009-11-141-2/+12
| | | | llvm-svn: 88732
* Move CompilerInstance::set* methods out-of-line.Daniel Dunbar2009-11-141-0/+32
| | | | llvm-svn: 88731
* Move definition of GRExprEngine::ProcessEndPath() out-of-line.Ted Kremenek2009-11-141-0/+7
| | | | llvm-svn: 88729
* Mangling support for typeinfo names.Mike Stump2009-11-142-0/+18
| | | | llvm-svn: 88726
* Revert r88718, which does NOT solve the ↵Douglas Gregor2009-11-135-45/+27
| | | | | | constructor-template-as-copy-constructor issue. Big thanks to John for finding this llvm-svn: 88724
* Handle descructor printing better.Mike Stump2009-11-131-6/+7
| | | | llvm-svn: 88723
* Template argument deduction of a non-type template parameter from aDouglas Gregor2009-11-131-2/+41
| | | | | | template argument. llvm-svn: 88722
* A constructor template cannot be instantiated to a copyDouglas Gregor2009-11-135-27/+45
| | | | | | constructor. Make sure that such declarations can never be formed. llvm-svn: 88718
* Also track address points for primaries bases.Mike Stump2009-11-131-4/+27
| | | | llvm-svn: 88717
* Code gen. For virtual destructor call on array objectsFariborz Jahanian2009-11-132-2/+10
| | | | | | (still part of pr5472). llvm-svn: 88712
* Obvious fix for PR5474.Eli Friedman2009-11-131-1/+1
| | | | llvm-svn: 88696
* Fixes a code gen. bug for array delete operator callFariborz Jahanian2009-11-131-3/+6
| | | | | | | | | | int 32bit abi (pr5472 related). -This line, and those below, will be ignored-- M lib/CodeGen/CGCXXExpr.cpp llvm-svn: 88695
* Clear temporaries in more places.Anders Carlsson2009-11-131-0/+9
| | | | llvm-svn: 88687
* Code gen for arrady delete operator. Fixes pr5472.Fariborz Jahanian2009-11-133-10/+45
| | | | llvm-svn: 88680
* Fix bug Doug noticed.Anders Carlsson2009-11-132-0/+15
| | | | llvm-svn: 88679
* Do not store DIDescriptor directly into a container. Store MDNode directly, ↵Devang Patel2009-11-132-15/+14
| | | | | | through TrackingVH. llvm-svn: 88677
* This falls into the category of stupid pet tricks. I hate to do this,Mike Stump2009-11-131-0/+3
| | | | | | | | but this is necessary to continue work on virtual vtables. We don't want to penalize virtual table building testcases, just because complex virtual conversions don't yet work. llvm-svn: 88676
* Add clang-cc option "--analyzer-experimental-internal-checks". ThisTed Kremenek2009-11-133-8/+19
| | | | | | | option enables new "internal" checks that will eventually be turned on by default but still require broader testing. llvm-svn: 88671
* When performing copy initialization (= "implicit conversion", here) toDouglas Gregor2009-11-131-5/+10
| | | | | | | | | a class type from itself or a derived class thereof, enumerate constructors and permit user-defined conversions to the arguments of those constructors. This fixes the wacky implicit conversion sequence used in std::auto_ptr's lame emulation of move semantics. llvm-svn: 88670
* When transforming an expression statement (e.g., for templateDouglas Gregor2009-11-132-2/+2
| | | | | | | | | instantiation), be sure to finish the expression statement by providing a FullExprArg, making sure that temporaries get destroyed. Fixes an obscure failure when parsing llvm/LinkAllPasses.h. llvm-svn: 88668
* Add CompilerInstance utility functions for creating output files.Daniel Dunbar2009-11-131-0/+62
| | | | llvm-svn: 88667
* Instead of storing CXXMethodDecls in the vtable builder, store GlobalDecls ↵Anders Carlsson2009-11-133-61/+98
| | | | | | | | so we can represent both the complete and deleting destructors. Also, when encountering a destructor decl, emit entries for both the complete and deleting destructors. Mike, please review. With this change, FileCheck builds and runs the clang test suite without failures! llvm-svn: 88663
* Don't bind arguments to temporaries if the argument has a reference type.Anders Carlsson2009-11-131-1/+2
| | | | llvm-svn: 88662
* Remove local splitLines reimplementation.Daniel Dunbar2009-11-131-29/+7
| | | | llvm-svn: 88661
* Add output file list to CompilerInstance, so that it can track them instead ofDaniel Dunbar2009-11-131-0/+20
| | | | | | forcing all clients to do it. llvm-svn: 87103
* Add CodeCompletion consumer to CompilerInvocation.Daniel Dunbar2009-11-131-1/+42
| | | | llvm-svn: 87100
* Rework Sema code completion interface.Daniel Dunbar2009-11-135-81/+70
| | | | | | | | | | | | | - Provide Sema in callbacks, instead of requiring it in constructor. This eliminates the need for a factory function. Clients now just pass the object to consume the results in directly. - CodeCompleteConsumer is cheap to construct, so building it whenever we are doing code completion is reasonable. Doug, please review. llvm-svn: 87099
* Add CompilerInstance::createPCHExternalASTSource.Daniel Dunbar2009-11-131-0/+38
| | | | llvm-svn: 87097
* Add ASTContext to CompilerInstance.Daniel Dunbar2009-11-131-0/+12
| | | | llvm-svn: 87095
* Malloc checker basically works now.Zhongxing Xu2009-11-131-2/+24
| | | | llvm-svn: 87094
* Hook up Malloc checker.Zhongxing Xu2009-11-133-0/+14
| | | | llvm-svn: 87093
* Check in a new interface of Checker, which will soon be used.Zhongxing Xu2009-11-131-1/+23
| | | | llvm-svn: 87092
* GRStateManager::CurrentStmt is not used. Remove it.Zhongxing Xu2009-11-131-4/+0
| | | | llvm-svn: 87091
* Add CompilerInstance::createDiagnostics, and move clang-cc to it.Daniel Dunbar2009-11-131-0/+67
| | | | | | clang-cc.cpp is now under 1k lines, if anyone is counting. llvm-svn: 87090
* Add Preprocessor to CompilerInstance, and move clang-cc CreatePreprocessor toDaniel Dunbar2009-11-131-0/+52
| | | | | | CompilerInstance::createPreprocessor. llvm-svn: 87088
OpenPOWER on IntegriCloud