- Jul 31, 2012
-
-
Anna Zaks authored
Use self-init.m for testing. (It used to have a bunch of failing tests with dynamic inlining turned on.) llvm-svn: 161012
-
Anna Zaks authored
The inlinable portion of the test relies on attributes/instead of the function implementation. llvm-svn: 161011
-
Richard Smith authored
sure to update the exception specification on the declaration as well as the definition. If we're building in -fno-exceptions mode, nothing else will trigger it to be updated. llvm-svn: 161008
-
Jordan Rose authored
Previously, we were only checking the origin expressions of inlined calls. Checkers using the generic postCall and older postObjCMessage callbacks were ignored. Now that we have CallEventManager, it is much easier to create a CallEvent generically when exiting an inlined function, which we can then use for post-call checks. No test case because we don't (yet) have any checkers that depend on this behavior (which is why it hadn't been fixed before now). llvm-svn: 161005
-
- Jul 30, 2012
-
-
Richard Smith authored
Extend the ',' versus ';' diagnostic for -Wvexing-parse to cover the with-arguments case as well as the no-arguments case. llvm-svn: 160999
-
Richard Smith authored
accurate by asking the parser whether there was an ambiguity rather than trying to reverse-engineer it from the DeclSpec. Make the with-parameters case have better diagnostics by using semantic information to drive the warning, improving the diagnostics and adding a fixit. Patch by Nikola Smiljanic. Some minor changes by me to suppress diagnostics for declarations of the form 'T (*x)(...)', which seem to have a very high false positive rate, and to reduce indentation in 'warnAboutAmbiguousFunction'. llvm-svn: 160998
-
Fariborz Jahanian authored
type of generated call to super dealloc is 'void' and asserts if user's dealloc is not of 'void type. This rule must be enforced in clang front-end (with a fixit) if this is not the case, instead of asserting in CodeGen. // rdar://11987838 llvm-svn: 160993
-
Anna Zaks authored
- Retrieves the type of the object/receiver from the state. - Binds self during stack setup. - Only explores the path on which the method is inlined (no bifurcation to explore the path on which the method is not inlined). llvm-svn: 160991
-
Anna Zaks authored
llvm-svn: 160990
-
Anna Zaks authored
llvm-svn: 160989
-
Anna Zaks authored
dispatched methods. Disabled by default for now. llvm-svn: 160988
-
Jordan Rose authored
This ensures that it is valid to reference-count any CallEvents, and we won't accidentally try to reclaim a CallEvent that lives on the stack. It also hides an ugly switch statement for handling CallExprs! There should be no functionality change here. llvm-svn: 160986
-
Jordan Rose authored
No functionality change. llvm-svn: 160985
-
Matt Beaumont-Gay authored
While '%n' can be used for evil in an attacker-controlled format string, there isn't any acute danger in using it in a literal format string with an argument of the appropriate type. llvm-svn: 160984
-
Jordan Rose authored
This allows us to get around the C++ "virtual constructor" problem when we'd like to create a CallEvent from an ExplodedNode, an inlined StackFrameContext, or another CallEvent. The solution has three parts: - CallEventManager uses a BumpPtrAllocator to allocate CallEvent-sized memory blocks. It also keeps a cache of freed CallEvents for reuse. - CallEvents all have protected copy constructors, along with cloneTo() methods that use placement new to copy into CallEventManager-managed memory, vtables intact. - CallEvents owned by CallEventManager are now wrapped in an IntrusiveRefCntPtr. Going forwards, it's probably a good idea to create ALL CallEvents through the CallEventManager, so that we don't accidentally try to reclaim a stack-allocated CallEvent. All of this machinery is currently unused but will be put into use shortly. llvm-svn: 160983
-
Dmitri Gribenko authored
llvm-svn: 160980
-
Dmitri Gribenko authored
command llvm-svn: 160975
-
Dmitri Gribenko authored
llvm-svn: 160974
-
Dmitri Gribenko authored
llvm-svn: 160973
-
Dmitri Gribenko authored
llvm-svn: 160972
-
Dmitri Gribenko authored
llvm-svn: 160971
-
Dmitri Gribenko authored
called unless index is valid. llvm-svn: 160970
-
Hans Wennborg authored
This makes Clang check that the corresponding argument for "%n" in a format string is a pointer to int. llvm-svn: 160966
-
Dmitri Gribenko authored
llvm-svn: 160965
-
Benjamin Kramer authored
llvm-svn: 160964
-
Benjamin Kramer authored
llvm-svn: 160962
-
Benjamin Kramer authored
When performing the simplistic overload resolution for single-argument methods, don't check the best overload for ambiguity with itself when the best overload doesn't happen to be the first one. Fixes PR13480. llvm-svn: 160961
-
Jiangning Liu authored
llvm-svn: 160958
-
Daniel Jasper authored
llvm-svn: 160947
-
- Jul 29, 2012
-
-
David Chisnall authored
Provide correct linker command line options on FreeBSD 8 (GNU ld 2.15) and on newer FreeBSD (GNU ld 2.17). Patch by Dimitry Andric! llvm-svn: 160931
-
Benjamin Kramer authored
llvm-svn: 160928
-
- Jul 28, 2012
-
-
Richard Smith authored
expressions to have complete return types (or accessible destructors). If the return type is required to be complete for some other reason (for instance, if it is needed by overload resolution), then it will still be required to be complete. This is apparently required in order to parse a MSVC11 header. llvm-svn: 160924
-
Fariborz Jahanian authored
CF to ARC conversions. llvm-svn: 160923
-
Rafael Espindola authored
as arguments of a template. llvm-svn: 160911
-
Dmitri Gribenko authored
llvm-svn: 160908
-
Fariborz Jahanian authored
__bride fixit, as it doesn't matter which cast to use. // rdar://11923822 llvm-svn: 160906
-
Fariborz Jahanian authored
// rdar://11923822 llvm-svn: 160902
-
Dmitri Gribenko authored
llvm-svn: 160901
-
Fariborz Jahanian authored
are cast to retainable types, only suggest CFBridgingRelease/ CFBridgingRetain and not the __bridge casts. // rdar://11923822 llvm-svn: 160900
-
- Jul 27, 2012
-
-
Dmitri Gribenko authored
arguments. Just an optimization, no functional change. llvm-svn: 160896
-