summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
* Make the type of the Decl referred to by a MemberExpr a bit more precise.Eli Friedman2009-12-044-13/+13
| | | | llvm-svn: 90549
* the assertion says state is not NULL. When state is not NULL, getState() Zhongxing Xu2009-12-041-2/+1
| | | | | | returns state. So simplify the predicate. llvm-svn: 90546
* Correctly mangle the 'std' namespace inside extern "C++" blocks.Anders Carlsson2009-12-042-13/+33
| | | | llvm-svn: 90544
* minor tidy.Chris Lattner2009-12-041-6/+5
| | | | llvm-svn: 90543
* Make sure that overridden method decls are always canonical.Anders Carlsson2009-12-043-3/+5
| | | | llvm-svn: 90542
* Test for non-canonical decl and vtables.Eli Friedman2009-12-041-0/+19
| | | | llvm-svn: 90541
* Fix regression in vtable improvements.Eli Friedman2009-12-041-2/+2
| | | | llvm-svn: 90540
* Try/catch statements seem to be working well enough to turn on.Mike Stump2009-12-041-1/+1
| | | | llvm-svn: 90538
* Disable for now, doesn't play nice with the temporary code.Mike Stump2009-12-041-1/+5
| | | | llvm-svn: 90537
* Rename method to something easier to search for.Eli Friedman2009-12-041-7/+10
| | | | llvm-svn: 90536
* More work in preparation of getting rid of the submethods loop.Anders Carlsson2009-12-041-4/+6
| | | | llvm-svn: 90535
* Remove an unused member variable.Anders Carlsson2009-12-041-6/+1
| | | | llvm-svn: 90534
* Add a way to get the index of a method. Assert that we have the same index ↵Anders Carlsson2009-12-041-5/+10
| | | | | | for now. llvm-svn: 90533
* Add a premature optimization.Anders Carlsson2009-12-041-0/+3
| | | | llvm-svn: 90532
* Add the method directly to the vtable.Anders Carlsson2009-12-041-6/+11
| | | | llvm-svn: 90531
* Get rid of the PureVirtualMethods map.Anders Carlsson2009-12-041-11/+0
| | | | llvm-svn: 90530
* Move handling of pure virtual methods to AppendMethods (and rename it to ↵Anders Carlsson2009-12-041-14/+6
| | | | | | AppendMethodsToVtable). llvm-svn: 90529
* Move covariant thunk handling to AppendMethods too.Anders Carlsson2009-12-041-43/+30
| | | | llvm-svn: 90528
* Move 'this' pointer adjustment thunks to AppendMethods.Anders Carlsson2009-12-041-15/+13
| | | | llvm-svn: 90527
* Make functions returning a struct indirectly evaluate the returned structEli Friedman2009-12-043-5/+15
| | | | | | | directly into the sret pointer. This is an optimization in C, but is required for correctness in C++ for classes with a non-trivial copy constructor. llvm-svn: 90526
* Factor appending methods to a vtable out into a separate function.Anders Carlsson2009-12-041-6/+13
| | | | llvm-svn: 90525
* Get rid of the Thunks struct too.Anders Carlsson2009-12-041-26/+16
| | | | llvm-svn: 90524
* Remove the CovariantThunk struct.Anders Carlsson2009-12-041-23/+15
| | | | llvm-svn: 90523
* Remove the GlobalDecl from the Thunk as well.Anders Carlsson2009-12-041-7/+5
| | | | llvm-svn: 90522
* Fix for PR5447: teach Evaluate to deal with floating-point conditionals.Eli Friedman2009-12-042-2/+14
| | | | llvm-svn: 90521
* Remove the GlobalDecl from the CovariantThunk struct, we can just look it up ↵Anders Carlsson2009-12-041-8/+5
| | | | | | in the Methods table now. llvm-svn: 90519
* Start populating the VtableMembers structure.Anders Carlsson2009-12-041-1/+10
| | | | llvm-svn: 90517
* Allow BlockInvocationContext to wrap either a BlockDecl* or a ↵Ted Kremenek2009-12-043-8/+40
| | | | | | BlockDataRegion*, giving us choice in our degree of context-sensitivity. llvm-svn: 90516
* Add a data structure for efficient storing of vtable methods. Not used yet.Anders Carlsson2009-12-041-0/+57
| | | | llvm-svn: 90515
* Fixup reference binding for catch parameters.Mike Stump2009-12-041-6/+21
| | | | | | Fixup throws and rethrows to use invoke as appropriate. llvm-svn: 90513
* Update chunk of #if 0'ed code to remove fixed FIXME and make it compile. WeEli Friedman2009-12-041-11/+6
| | | | | | | probably want to do some sort of performance assessment before enabling it, though. llvm-svn: 90510
* Refactor LocationContext creation logic into a single member template.Ted Kremenek2009-12-043-74/+86
| | | | llvm-svn: 90509
* Refactor FoldingSet profiling code for LocationContexts, and add a new ↵Ted Kremenek2009-12-042-20/+65
| | | | | | BlockInvocationContext to represent the invocation of a block. llvm-svn: 90506
* Fix for PR5679: make __builtin_prefetch a bit more flexible in what it acceptsEli Friedman2009-12-044-11/+23
| | | | | | | as a constant integer. Also, some minor cleanup and improvements to the diagnostics. llvm-svn: 90504
* constify MemRegion* returned by MemRegionManager::getXXXRegion() methods.Ted Kremenek2009-12-044-64/+62
| | | | llvm-svn: 90503
* When recovering from an invalid forward reference to an enum type in C++,John McCall2009-12-042-4/+8
| | | | | | create the enum type in the same scope as you would a record type. llvm-svn: 90500
* More template-logic for MemRegion construction out of MemRegion.h and into ↵Ted Kremenek2009-12-042-157/+161
| | | | | | MemRegion.cpp. llvm-svn: 90499
* These are done.Mike Stump2009-12-031-2/+0
| | | | llvm-svn: 90494
* Improve catch parameter bindings for scalar non-pointers. WIP.Mike Stump2009-12-031-4/+8
| | | | llvm-svn: 90492
* Lift the ObjCPropertyCallback out of local scope to unbreak VS2005 builds.John McCall2009-12-032-55/+60
| | | | | | | Make it an inner class of Parser to assuage access control. No functionality change. llvm-svn: 90491
* Add recursion guards to ice-checking and evaluation for declrefs, so weEli Friedman2009-12-035-22/+88
| | | | | | don't infinitely recurse for cases we can't evaluate. llvm-svn: 90480
* Try to make the output of PlistDiagnostics more deterministic by sorting ↵Ted Kremenek2009-12-031-0/+39
| | | | | | PathDiagnostics before they are emitted. Fixes <rdar://problem/7439668>. llvm-svn: 90478
* Convert some methods in PathDiagnostic to return StringRefs instead of ↵Ted Kremenek2009-12-031-3/+3
| | | | | | std::string&. llvm-svn: 90477
* A new helper function to set various bits in the class whenFariborz Jahanian2009-12-034-15/+19
| | | | | | | a new virtual function is declared/instantiated. it is used in couple of places. llvm-svn: 90470
* Fix Clang tool translation to forward -fvisibility as separate arguments, theDaniel Dunbar2009-12-032-3/+8
| | | | | | old syntax isn't supported. llvm-svn: 90469
* Add utils/TestUtils, and sink pch-test.pl there.Daniel Dunbar2009-12-032-0/+24
| | | | | | Also, add a test for generator a C file with a very deep call stack. llvm-svn: 90468
* Unify the end-of-class code paths used by the parser and templateDouglas Gregor2009-12-035-27/+55
| | | | | | | | | | | | | | instantiation, to ensure that we mark class template specilizations as abstract when we need to and perform checking of abstract classes. Also, move the checking that determines whether we are creating a variable of abstract class type *after* we check whether the type is complete. Otherwise, we won't see when we have an abstract class template specialization that is implicitly instantiated by this declaration. This is the "something else" that Sebastian had noted earlier. llvm-svn: 90467
* Add another blocks test case illustrating how parameters passed-by-reference ↵Ted Kremenek2009-12-031-0/+15
| | | | | | in block invocations are invalidated (just like function calls). llvm-svn: 90466
* When instantiating a class, if a base specifier is not dependent we still ↵Anders Carlsson2009-12-034-11/+41
| | | | | | need to copy its attributes down to the instantiated class. llvm-svn: 90463
* Tweak handling of BlockDataRegions in ↵Ted Kremenek2009-12-031-4/+6
| | | | | | RegionStoreManager::RemoveDeadBindings(): only the VarRegions for variables marked with the '__block' annotation should have their lifetime extended by a BlockDataRegion. llvm-svn: 90462
OpenPOWER on IntegriCloud