- Aug 07, 2009
-
-
Fariborz Jahanian authored
Work in progress. llvm-svn: 78355
-
Ted Kremenek authored
with array accesses. In the process, refactor some common logic in RetrieveElement() and RetrieveField() into RetrieveFieldOrElementCommon(). llvm-svn: 78349
-
Douglas Gregor authored
TransformStmt, into the tree transformer. llvm-svn: 78347
-
- Aug 06, 2009
-
-
Mike Stump authored
rtti so we can properly test it. Refactor code a little. Still a work in progress. llvm-svn: 78343
-
Ted Kremenek authored
involving reasoning about unions (which we don't handle yet). llvm-svn: 78342
-
John McCall authored
guard its report on GNUMode. llvm-svn: 78338
-
John McCall authored
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
-
Fariborz Jahanian authored
llvm-svn: 78331
-
Mike Stump authored
llvm-svn: 78327
-
Fariborz Jahanian authored
don't recurs and crash. llvm-svn: 78323
-
Douglas Gregor authored
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
-
Mike Stump authored
llvm-svn: 78314
-
Mike Stump authored
llvm-svn: 78308
-
Mike Stump authored
llvm-svn: 78305
-
Mike Stump authored
llvm-svn: 78303
-
Zhongxing Xu authored
Some Builders need further cleanup. llvm-svn: 78301
-
Zhongxing Xu authored
merge GRCoreEngineImpl and GRCoreEngine. Introduce a new interface class GRSubEngine as the subengine of GRCoreEngine. GRExprEngine subclasses GRSubEngine now. llvm-svn: 78298
-
Douglas Gregor authored
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
-
Zhongxing Xu authored
merge ExplodedGraphImpl and ExplodedGraph. llvm-svn: 78291
-
Douglas Gregor authored
tree transformation. Template instantiation uses this general transformation rather than implementing its own transformation. llvm-svn: 78286
-
-
Ted Kremenek authored
llvm-svn: 78284
-
Douglas Gregor authored
llvm-svn: 78283
-
Ted Kremenek authored
llvm-svn: 78280
-
Ted Kremenek authored
already been uniqued. llvm-svn: 78279
-
Douglas Gregor authored
this->Base::foo from James Porter! llvm-svn: 78278
-
Ryan Flynn authored
llvm-svn: 78276
-
John McCall authored
llvm-svn: 78274
-
Zhongxing Xu authored
llvm-svn: 78273
-
Daniel Dunbar authored
- Patch by Carl-Daniel Hailfinger. llvm-svn: 78272
-
Zhongxing Xu authored
and their impl base classes. This can greatly simply some code of the core analysis engine. This patch merges ExplodedNodeImpl into ExplodedNode. llvm-svn: 78270
-
Daniel Dunbar authored
llvm-svn: 78269
-
Ted Kremenek authored
RegionStore already lazily abstracted the contents of arrays and structs, when doing an assignment from one array/struct to another we did an explicit element-wise copy, which resulted in a loss of laziness and huge performance problem when analyzing many code bases. Now RegionStoreManager handles such assignments using a new SVal could 'LazyCompoundSVal', which basically means the value of a given struct or array (a MemRegion*) in a specific state (GRState). When we do a load from a field whose encompassing struct binds to a LazyCompoundSVal, we essentially do a field lookup in the original structure. This means we have essentially zero copying of data for structs/arrays and everything stays lazy. llvm-svn: 78268
-
Fariborz Jahanian authored
appropriate. llvm-svn: 78267
-
Mike Stump authored
virtual base layout. llvm-svn: 78265
-
Owen Anderson authored
llvm-svn: 78259
-
Mike Stump authored
llvm-svn: 78254
-
Mike Stump authored
the vtable. Still a work in progress. llvm-svn: 78252
-
- Aug 05, 2009
-
-
Benjamin Kramer authored
llvm-svn: 78233
-
Eli Friedman authored
llvm-svn: 78230
-