Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Assert that the LLVM type has the same size as the RecordDecl size. | Anders Carlsson | 2009-08-08 | 1 | -0/+3 |
| | | | | llvm-svn: 78481 | ||||
* | getFunctionLevelDeclContext needs to get the previous DeclContext if ↵ | Anders Carlsson | 2009-08-08 | 1 | -1/+2 |
| | | | | | | EnterDeclaratorContext has been called. Fixes PR4694. (Doug, please review) llvm-svn: 78480 | ||||
* | Factor some code to get the "function level" DeclContext out into a separate ↵ | Anders Carlsson | 2009-08-08 | 2 | -9/+12 |
| | | | | | | function. llvm-svn: 78478 | ||||
* | Make sure to diagnose use of declarations in the case where we create an ↵ | Anders Carlsson | 2009-08-08 | 1 | -0/+2 |
| | | | | | | implicit CXXThisExpr. llvm-svn: 78474 | ||||
* | Patch should implement packed enums - PR4098. Credit to Anders Johnsen. | Edward O'Callaghan | 2009-08-08 | 5 | -13/+43 |
| | | | | llvm-svn: 78471 | ||||
* | Get rid of Stmt::Clone now that we can reference count statements instead. | Anders Carlsson | 2009-08-08 | 6 | -95/+5 |
| | | | | llvm-svn: 78452 | ||||
* | Introduce reference counting for statements and expressions, using it | Douglas Gregor | 2009-08-08 | 5 | -25/+37 |
| | | | | | | | to allow sharing of nodes. Simplifies some aspects of template instantiation, and fixes both PR3444 and <rdar://problem/6757457>. llvm-svn: 78450 | ||||
* | Remove use of uninitized variable. | Fariborz Jahanian | 2009-08-08 | 2 | -6/+3 |
| | | | | llvm-svn: 78448 | ||||
* | Synthesize copying of non-static data members with | Fariborz Jahanian | 2009-08-08 | 1 | -12/+32 |
| | | | | | | non-trivial copy constructors. llvm-svn: 78445 | ||||
* | Synthesized copy constructor now generates code for | Fariborz Jahanian | 2009-08-07 | 3 | -18/+55 |
| | | | | | | | copying non-virtual base classes which have non-trivial constructor. Work in progress. llvm-svn: 78436 | ||||
* | Add a CK_ArrayToPointerDecay cast kind. | Anders Carlsson | 2009-08-07 | 2 | -1/+3 |
| | | | | llvm-svn: 78434 | ||||
* | Add CK_ToUnion and use it for aggregate expression codegen. | Anders Carlsson | 2009-08-07 | 2 | -9/+10 |
| | | | | llvm-svn: 78429 | ||||
* | More CastKind work. | Anders Carlsson | 2009-08-07 | 5 | -25/+30 |
| | | | | llvm-svn: 78415 | ||||
* | Just add global scope to the associated namespaces set instead of tracking it | John McCall | 2009-08-07 | 2 | -77/+67 |
| | | | | | | | separately. Add the framework (currently unfed) for finding friend declarations during argument-dependent lookup. llvm-svn: 78414 | ||||
* | Add vbase offsets to the vtable. Wow, having an rbegin was so | Mike Stump | 2009-08-07 | 1 | -0/+12 |
| | | | | | | fortuitous. WIP. llvm-svn: 78413 | ||||
* | Fix: <rdar://problem/7075531> static analyzer wrongly detects unused ivars ↵ | Ted Kremenek | 2009-08-07 | 1 | -2/+8 |
| | | | | | | used in blocks llvm-svn: 78409 | ||||
* | Constify some pointers. No functionality change. | Ted Kremenek | 2009-08-07 | 1 | -15/+16 |
| | | | | llvm-svn: 78407 | ||||
* | More synthesis of copy constructors. Work in progress. | Fariborz Jahanian | 2009-08-07 | 5 | -4/+94 |
| | | | | llvm-svn: 78402 | ||||
* | Fix typo. | Mike Stump | 2009-08-07 | 1 | -1/+1 |
| | | | | llvm-svn: 78401 | ||||
* | Add ability to generate vcall offsets for primary virtual base. | Mike Stump | 2009-08-07 | 3 | -9/+16 |
| | | | | llvm-svn: 78396 | ||||
* | Use the correct cast kind as suggested by Doug. | Anders Carlsson | 2009-08-07 | 1 | -1/+2 |
| | | | | llvm-svn: 78395 | ||||
* | Fix some const_cast issues. This is the beginning of the rabbit hole. | Mike Stump | 2009-08-07 | 4 | -18/+12 |
| | | | | llvm-svn: 78393 | ||||
* | PR3333: warn when shifting by invalid amount | Ryan Flynn | 2009-08-07 | 1 | -0/+23 |
| | | | | llvm-svn: 78385 | ||||
* | Separate Stmt::Destroy into the entrypoint for destroying a statement | Douglas Gregor | 2009-08-07 | 3 | -32/+18 |
| | | | | | | | or expression (Destroy) from the virtual function used to actually destroy a given expression (DoDestroy). llvm-svn: 78375 | ||||
* | add support for opensuse 11.1/11.2 search paths, patch by Stefan Reinauer | Chris Lattner | 2009-08-07 | 1 | -0/+16 |
| | | | | | | and Carl-Daniel Hailfinger! llvm-svn: 78368 | ||||
* | Add support for vcall generation for vtables for virtual bases. WIP. | Mike Stump | 2009-08-06 | 2 | -5/+26 |
| | | | | llvm-svn: 78357 | ||||
* | Patch toward synthesizing copy constructors. | Fariborz Jahanian | 2009-08-06 | 2 | -8/+21 |
| | | | | | | Work in progress. llvm-svn: 78355 | ||||
* | Fix a few more false positives involving RegionStore and unions, but this time | Ted Kremenek | 2009-08-06 | 1 | -85/+55 |
| | | | | | | | with array accesses. In the process, refactor some common logic in RetrieveElement() and RetrieveField() into RetrieveFieldOrElementCommon(). llvm-svn: 78349 | ||||
* | Minor refactoring to introduce a new transformation function, | Douglas Gregor | 2009-08-06 | 1 | -1/+18 |
| | | | | | | TransformStmt, into the tree transformer. llvm-svn: 78347 | ||||
* | Also generate the rtti field for virtual bases for vtables. Turn on | Mike Stump | 2009-08-06 | 2 | -30/+44 |
| | | | | | | | rtti so we can properly test it. Refactor code a little. Still a work in progress. llvm-svn: 78343 | ||||
* | Fix a couple false positive "uninitialized value" warnings with RegionStore | Ted Kremenek | 2009-08-06 | 1 | -1/+22 |
| | | | | | | involving reasoning about unions (which we don't handle yet). llvm-svn: 78342 | ||||
* | Drop the friend-inner-class diagnostic from an extwarn to an ext and don't | John McCall | 2009-08-06 | 1 | -2/+2 |
| | | | | | | guard its report on GNUMode. llvm-svn: 78338 | ||||
* | Permit a class to friend its members in C++0x, without restriction. | John McCall | 2009-08-06 | 1 | -7/+18 |
| | | | | | | | Permit a class to friend its class members in C++ 98, as long as extensions are enabled (and even when they aren't, only give an extwarn about it). llvm-svn: 78332 | ||||
* | Set and use Elidable in elimination of copy ctors. | Fariborz Jahanian | 2009-08-06 | 3 | -13/+10 |
| | | | | llvm-svn: 78331 | ||||
* | Layout the primary base first in the vtable. | Mike Stump | 2009-08-06 | 1 | -21/+14 |
| | | | | llvm-svn: 78327 | ||||
* | After reporting ill-formed copy constructor(12.8.p3) | Fariborz Jahanian | 2009-08-06 | 1 | -1/+2 |
| | | | | | | don't recurs and crash. llvm-svn: 78323 | ||||
* | When we encounter a dependent type that was parsed before we know that | Douglas Gregor | 2009-08-06 | 4 | -1/+147 |
| | | | | | | | | | | | | | | | | | | | | | | we were going to enter into the scope of a class template or class template partial specialization, rebuild that type so that it can refer to members of the current instantiation, as in code like template<typename T> struct X { typedef T* pointer; pointer data(); }; template<typename T> typename X<T>::pointer X<T>::data() { ... } Without rebuilding the return type of this out-of-line definition, the canonical return type of the out-of-line definition (a TypenameType) will not match the canonical return type of the declaration (the canonical type of T*). llvm-svn: 78316 | ||||
* | More layout for virtual tables for virtual bases. Still in progress. | Mike Stump | 2009-08-06 | 2 | -9/+28 |
| | | | | llvm-svn: 78314 | ||||
* | Layout virtual bases. Work in progress. | Mike Stump | 2009-08-06 | 3 | -8/+27 |
| | | | | llvm-svn: 78308 | ||||
* | I have a dream, one day, we won't need to do this. | Mike Stump | 2009-08-06 | 1 | -0/+1 |
| | | | | llvm-svn: 78305 | ||||
* | Fix spell-o. | Mike Stump | 2009-08-06 | 1 | -1/+1 |
| | | | | llvm-svn: 78303 | ||||
* | Last step of template cleanup: merge *BuilderImpl to *Builder. | Zhongxing Xu | 2009-08-06 | 6 | -267/+260 |
| | | | | | | Some Builders need further cleanup. llvm-svn: 78301 | ||||
* | Core analysis engine template cleanup step 2: | Zhongxing Xu | 2009-08-06 | 1 | -15/+41 |
| | | | | | | | | | merge GRCoreEngineImpl and GRCoreEngine. Introduce a new interface class GRSubEngine as the subengine of GRCoreEngine. GRExprEngine subclasses GRSubEngine now. llvm-svn: 78298 | ||||
* | Implement transformation of template names within the generic tree | Douglas Gregor | 2009-08-06 | 2 | -71/+180 |
| | | | | | | | | | | | | | | | transform, then use the result for template instantiation. The generic transformation fixes a few issues: - It copes better with template template parameters and member templates (when they're implemented). - The logic used to replace template template parameters with their arguments is now centralized in TransformDecl, so that it will apply for other declaration-instantiation steps. - The error-recovery strategy is normalized now, so that any error results in a NULL TemplateName. llvm-svn: 78292 | ||||
* | Core analysis engine template cleanup step 2: | Zhongxing Xu | 2009-08-06 | 3 | -43/+81 |
| | | | | | | merge ExplodedGraphImpl and ExplodedGraph. llvm-svn: 78291 | ||||
* | Implement transformation of nested-name-specifiers within the general | Douglas Gregor | 2009-08-06 | 3 | -69/+139 |
| | | | | | | | tree transformation. Template instantiation uses this general transformation rather than implementing its own transformation. llvm-svn: 78286 | ||||
* | Fix typo reported in <rdar://problem/7121409>. | Ted Kremenek | 2009-08-06 | 1 | -1/+1 |
| | | | | llvm-svn: 78285 | ||||
* | Refactor RegionStoreManager::RemoveDeadBindings to also scan the bindings of ↵ | Ted Kremenek | 2009-08-06 | 1 | -93/+154 |
| | | | | | | LazyCompoundSVals. llvm-svn: 78284 | ||||
* | Predefine __cplusplus to the right value (199711L), except when in GNU mode. | Douglas Gregor | 2009-08-06 | 1 | -1/+7 |
| | | | | llvm-svn: 78283 | ||||
* | Remove unimplemented methods 'AddRegionView' and 'RemoveRegionView'. They ↵ | Ted Kremenek | 2009-08-06 | 1 | -10/+0 |
| | | | | | | are no longer needed. llvm-svn: 78280 |