- Jan 07, 2012
-
-
Anna Zaks authored
We already have a more conservative check in the compiler (if the format string is not a literal, we warn). Still adding it here for completeness and since this check is stronger - only triggered if the format string is tainted. llvm-svn: 147714
-
Eli Friedman authored
This patch (and some of my other commits related to lambdas) is heavily based off of John Freeman's work-in-progress patches. llvm-svn: 147706
-
Ted Kremenek authored
This removes analysis of other translation units, but that was an experimental feature anyway that we will revisit later. llvm-svn: 147705
-
Akira Hatanaka authored
is inserted before the real argument. Padding is needed to ensure the backend reads from or writes to the correct argument slots when the original alignment of a byval structure is unavailable due to flattening. llvm-svn: 147699
-
Ted Kremenek authored
llvm-svn: 147698
-
Ted Kremenek authored
[analyzer] Remove CallExitNodeBuilder, and have ExprEngine::processCallExit() do the work manually. This is a nice simplification. Along the way, fix Exprengine::processCallExit() to also perform the postStmt callback for checkers for CallExprs. llvm-svn: 147697
-
- Jan 06, 2012
-
-
Matt Beaumont-Gay authored
Along the way, move a helper function from SemaChecking.cpp to a more accessible home in SourceManager. llvm-svn: 147692
-
Fariborz Jahanian authored
currently turned off. // rdar://6137845 Also, fixes a test case which should be nonatomic under new API. llvm-svn: 147691
-
Ted Kremenek authored
(Stmt*,LocationContext*) pairs to SVals instead of Stmt* to SVals. This is needed to support basic IPA via inlining. Without this, we cannot tell if a Stmt* binding is part of the current analysis scope (StackFrameContext) or part of a parent context. This change introduces an uglification of the use of getSVal(), and thus takes two steps forward and one step back. There are also potential performance implications of enlarging the Environment. Both can be addressed going forward by refactoring the APIs and optimizing the internal representation of Environment. This patch mainly introduces the functionality upon when we want to build upon (and clean up). llvm-svn: 147688
-
Douglas Gregor authored
chain to determine whether any declaration of the given entity is visible, eliminating the redundant (and less efficient) getPreviousDeclaration() implementation. This tweak uncovered an omission in the handling of RedeclarableTemplateDecl, where we weren't making sure to search for additional redeclarations of a template in other module files. Things would be cleaner if RedeclarableTemplateDecl actually used Redeclarable. llvm-svn: 147687
-
Eli Friedman authored
llvm-svn: 147681
-
Chad Rosier authored
llvm-svn: 147678
-
Eli Friedman authored
llvm-svn: 147677
-
DeLesley Hutchins authored
llvm-svn: 147672
-
DeLesley Hutchins authored
llvm-svn: 147670
-
Joerg Sonnenberger authored
"double" rounding. llvm-svn: 147669
-
Fariborz Jahanian authored
properties of c++ object types with non-trivial assignment copy. Not used yet. // rdar://6137845 llvm-svn: 147666
-
Jakub Staszak authored
llvm-svn: 147664
-
Douglas Gregor authored
include stack to find the first file that is known to be part of the module. This copes with situations where the module map doesn't completely specify all of the headers that are involved in the module, which can come up when there are very strange #include_next chains (e.g., with weird compiler/stdlib headers like stdarg.h or float.h). llvm-svn: 147662
-
Douglas Gregor authored
into the two unused lower bits of the NextDeclInContext link, dropping the number of bits in Decl down to 32, and saving 8 bytes per declaration on x86-64. llvm-svn: 147660
-
Richard Smith authored
pointer-arithmetic-related undefined behavior and unspecified results. We continue to fold such values, but now notice they aren't constant expressions. llvm-svn: 147659
-
Douglas Gregor authored
is hidden from name lookup. The previous hack of tweaking the ModulePrivate bit when loading a declaration from a hidden submodule was brittle. Note that we now have 34 bits in Decl. I'll fix that next. llvm-svn: 147658
-
Douglas Gregor authored
David Fang and Takumi Nakamura. Fixes many PCH failures on PowerPC. llvm-svn: 147657
-
David Chisnall authored
builtins. This fixes PR11711. llvm-svn: 147655
-
John McCall authored
dependent case. Thanks to Jason Merrill for pointing this out. llvm-svn: 147653
-
Rafael Espindola authored
call is elidable or if the constructor is trivial instead of checking if it is user declared. llvm-svn: 147652
-
Eli Friedman authored
More lambda work. Fixes a minor bug Richard pointed out, makes lookup for lambda parameters work correctly, recording more information into the AST. llvm-svn: 147650
-
Richard Smith authored
int f(); in function scopes under -Wvexing-parse, so now we do. llvm-svn: 147649
-
Richard Smith authored
the Semantic Powers to only warn on class types (or dependent types), where the constructor or destructor could do something interesting. llvm-svn: 147642
-
Eli Friedman authored
llvm-svn: 147641
-
Fariborz Jahanian authored
for copying atomic properties of c++ objects with non-trivial copy assignment in setters/getters. Not yet used. // rdar://6137845 llvm-svn: 147636
-
-
Eli Friedman authored
llvm-svn: 147631
-
Douglas Gregor authored
some code in Clang expects 8-byte alignment of declarations. llvm-svn: 147626
-
- Jan 05, 2012
-
-
Ted Kremenek authored
After further discussion, rename attribute 'objc_disable_automatic_synthesis' to 'objc_requires_property_definitions'. llvm-svn: 147622
-
Eli Friedman authored
Tweak the fix to PR8977: an empty expression-list represents value initialization, not default initialization. Fixes PR11712. llvm-svn: 147620
-
Douglas Gregor authored
each deserialized declaration, since that information is already available in each declaration. llvm-svn: 147619
-
Douglas Gregor authored
storage for the global declaration ID. Declarations that are parsed (rather than deserialized) are unaffected, so the number of declarations that pay this cost tends to be relatively small (since relatively few declarations are ever deserialized). This replaces a largish DenseMap within the AST reader. It's not strictly a win in terms of memory use---not every declaration was added to that DenseMap in the first place---but it's cleaner to have this information available for every deserialized declaration, so that future clients can rely on it. llvm-svn: 147617
-
Douglas Gregor authored
go through a central allocation routine Decl::AllocateDeserializedDecl(). No actual functionality change (yet). llvm-svn: 147614
-
Argyrios Kyrtzidis authored
as suggested by Tom Honermann. llvm-svn: 147612
-