- Aug 07, 2012
-
-
Richard Smith authored
was mistakenly classifying dynamic_casts which might throw as having no side effects. Switch it from a visitor to a switch, so it is kept up-to-date as future Expr nodes are added. Move it from ExprConstant.cpp to Expr.cpp, since it's not really related to constant expression evaluation. Since we use HasSideEffect to determine whether to emit an unused global with internal linkage, this has the effect of suppressing emission of globals in some cases. I've left many of the Objective-C cases conservatively assuming that the expression has side-effects. I'll leave it to someone with better knowledge of Objective-C than mine to improve them. llvm-svn: 161388
-
Jordan Rose authored
This is an additional test for r161349 (ignoring 10.8's annotations for NSMakeCollectable). llvm-svn: 161380
-
Eric Christopher authored
just let the alignment be zero. PR13531 llvm-svn: 161379
-
Ted Kremenek authored
Remove two fall through diagnostics from the IgnoredAttributes group, since they are errors, not warnings. Only warnings should be in warning groups. This was causing an assertion failure in code using pragmas to map -Wignored-attributes to ignored, but this kind of diagnostic mapping is disallowed for builtin errors. We should just wire up tablegen to reject errors being in diagnostic groups. llvm-svn: 161376
-
Chad Rosier authored
the ASTContext BumpPtr. Also use the preferred llvm::ArrayRef interface. llvm-svn: 161373
-
Eric Christopher authored
llvm-svn: 161372
-
Eric Christopher authored
llvm-svn: 161369
-
Eric Christopher authored
that we attach the lost qualifiers. Fixes rdar://11882155 llvm-svn: 161368
-
Ted Kremenek authored
llvm-svn: 161367
-
Anna Zaks authored
Dynamic type inference does the right thing in this case. However, as Jordan suggested, it would be nice to add a warning here as well. llvm-svn: 161365
-
Fariborz Jahanian authored
// rdar://6505197 llvm-svn: 161362
-
Dmitri Gribenko authored
command, for example: \tparam\brief. llvm-svn: 161361
-
Anna Zaks authored
I currently have a bit of redundancy with the cast kind switch statement inside the ImplicitCast callback, but I might be adding more casts going forward. llvm-svn: 161358
-
Anna Zaks authored
Instead of sprinkling dynamic type info propagation throughout ExprEngine, the added checker would add the more precise type information on known APIs (Ex: ObjC alloc, new) and propagate the type info in other cases (ex: ObjC init method, casts (the second is not implemented yet)). Add handling of ObjC alloc, new and init to the checker. llvm-svn: 161357
-
David Blaikie authored
The one caller that's surrounded by nearby code manipulating the underlying evaluation context list is left unmodified for readability. Review by Sean Silva and Richard Smith. llvm-svn: 161355
-
- Aug 06, 2012
-
-
Dmitri Gribenko authored
llvm-svn: 161352
-
Jordan Rose authored
No functionality change, but from now on, any new path notes should be tested both with plain-text output (for ease of human auditing) and with plist output (to ensure control flow and events are being correctly represented in Xcode). llvm-svn: 161351
-
Jordan Rose authored
llvm-svn: 161350
-
Jordan Rose authored
The frameworks correctly use the 'cf_consumed' and 'ns_returns_retained' attributes for NSMakeCollectable, but we can model the behavior under garbage collection more precisely than that. No functionality change. llvm-svn: 161349
-
Richard Trieu authored
in duplicate -Wuninitialized warnings. Change so that only the check in TryConstructorInitialization() will be used and a single warning be emitted. llvm-svn: 161345
-
Ted Kremenek authored
llvm-svn: 161343
-
Chad Rosier authored
change intended. No test case as there's no real way to test at this time. llvm-svn: 161342
-
Simon Atanasyan authored
The patch reviewed by Akira Hatanaka. llvm-svn: 161333
-
Dmitri Gribenko authored
llvm-svn: 161331
-
Ted Kremenek authored
llvm-svn: 161330
-
Dmitri Gribenko authored
Doxygen manual claims that multiple \brief or \returns commands will be merged together, but actual behavior is different (second \brief command becomes a part of a discussion, second \returns becomes a "Returns: blah" paragraph on its own). Anyway, it seems to be a bad idea to use multiple \brief or \returns commands in a single command. llvm-svn: 161325
-
Dmitri Gribenko authored
ObjC methods. llvm-svn: 161324
-
Craig Topper authored
llvm-svn: 161319
-
Richard Smith authored
'clang-cpp'. For now, the test uses "REQUIRES: shell" to determine if the host system supports "ln -s", which it uses to create a 'clang-cpp' symlink. This is a bit hacky and should likely be directly supported by lit.cfg. llvm-svn: 161317
-
Richard Smith authored
we know whether the function is virtual. But check it as soon as we do know; in some cases we don't need to wait for an instantiation. llvm-svn: 161316
-
Richard Smith authored
been defined. llvm-svn: 161315
-
Hal Finkel authored
llvm-svn: 161310
-
- Aug 04, 2012
-
-
Benjamin Kramer authored
llvm-svn: 161303
-
Anna Zaks authored
We can be in the situation where we did not track the symbol before realloc was called on it. llvm-svn: 161294
-
Fariborz Jahanian authored
resulting in issuance of unused static variable warning now. // rdar://10777111 llvm-svn: 161291
-
Jordan Rose authored
This should fix the failing test on the buildbot as well. llvm-svn: 161290
-
Jordan Rose authored
While there is no such thing as a "null reference" in the C++ standard, many implementations of references (including Clang's) do not actually check that the location bound to them is non-null. Thus unlike a regular null dereference, this will not cause a problem at runtime until the reference is actually used. In order to catch these cases, we need to not prune out paths on which the input pointer is null. llvm-svn: 161288
-
Eric Christopher authored
llvm-svn: 161287
-
Eric Christopher authored
llvm-svn: 161286
-
Jordan Rose authored
Like base constructors, delegating constructors require no further processing in the CFGInitializer node. Also, add PrettyStackTraceLoc to the initializer and destructor logic so we can get better stack traces in the future. llvm-svn: 161283
-