Mike Stump
2b488873bf
Break out code for reuse. WIP.
...
llvm-svn: 90991
2009-12-09 22:59:31 +00:00
Fariborz Jahanian
26de2e594b
Fixes a bogus error when declaring an extern "C" array.
...
(fixes radar 7457109).
llvm-svn: 90986
2009-12-09 21:39:38 +00:00
Mike Stump
f16b8c30d9
Add throw support. WIP.
...
llvm-svn: 90982
2009-12-09 19:24:08 +00:00
Fariborz Jahanian
a5fee26d28
Codegen. support for ObjCIsaExpr AST which until now
...
was not needed (fixes radar 7453430).
llvm-svn: 90981
2009-12-09 19:05:56 +00:00
Mike Stump
d0caa82b36
Fix 80-col violation.
...
llvm-svn: 90976
2009-12-09 18:09:35 +00:00
Anders Carlsson
538af0906d
Add DeclContext::dump.
...
llvm-svn: 90974
2009-12-09 17:27:46 +00:00
Zhongxing Xu
1042bf4ae2
Refactor OSAtomic evaluation logic into OSAtomicChecker.
...
llvm-svn: 90968
2009-12-09 12:23:28 +00:00
Zhongxing Xu
8cca37fae0
Use a temporary destination set such that we can clear fake auto transitions.
...
Otherwise, even when real evaluation occurs, the previous fake auto
transitions would still be in the destination set, causing fake state
bifurcation.
llvm-svn: 90967
2009-12-09 12:16:07 +00:00
Daniel Dunbar
75017b7cef
clang -cc1: Mark -i* options as JoinedOrSeparate, since the driver forwards them
...
directly and one can write '-includefoo' if one really wants to.
llvm-svn: 90966
2009-12-09 10:01:26 +00:00
John McCall
5677499fbf
First pass at implementing C++ enum semantics: calculate (and store) an
...
"integer promotion" type associated with an enum decl, and use this type to
determine which type to promote to. This type obeys C++ [conv.prom]p2 and
is therefore generally signed unless the range of the enumerators forces
it to be unsigned.
Kills off a lot of false positives from -Wsign-compare in C++, addressing
rdar://7455616
llvm-svn: 90965
2009-12-09 09:09:27 +00:00
Zhongxing Xu
1d153328be
OSAtomic simulation: use the original region as the location to load from,
...
instead of the ElementRegion obtained from casts.
Test cast: the leak cannot occur bacause the true branch cannot be taken.
llvm-svn: 90964
2009-12-09 08:32:57 +00:00
Anders Carlsson
c50b340108
Look through using declarations when searching for allocation overloads.
...
llvm-svn: 90961
2009-12-09 07:39:44 +00:00
Ted Kremenek
2cba2ce28f
Update checker build.
...
llvm-svn: 90955
2009-12-09 06:58:36 +00:00
Zhongxing Xu
f5448561ed
remove dead code.
...
llvm-svn: 90953
2009-12-09 05:52:12 +00:00
Zhongxing Xu
d1dee7e71a
Insert instead of assign to the dest node set, since we use the dest node set
...
repeatedly.
llvm-svn: 90952
2009-12-09 05:48:53 +00:00
Eli Friedman
f7195532ee
Fix for PR5730: make sure to consistently call
...
PerformObjectArgumentInitialization from BuildCXXMemberCallExpr.
llvm-svn: 90950
2009-12-09 04:53:56 +00:00
Eli Friedman
a958a01e9f
Whitespace fix.
...
llvm-svn: 90949
2009-12-09 04:52:43 +00:00
Anders Carlsson
f9812782b7
In CXXRecordDecl::forallBases, add the base to the "queue", so we walk more than one heirarchy of classes. John, please review.
...
llvm-svn: 90948
2009-12-09 04:26:02 +00:00
Zhongxing Xu
39644a62f9
Add notes to a test case.
...
llvm-svn: 90947
2009-12-09 04:22:30 +00:00
Ted Kremenek
06ba78d07d
Fix crash in DisplayFunction(). ObjCInterfaceDecls can also get passed to this function, but we don't want to display them.
...
llvm-svn: 90944
2009-12-09 03:45:19 +00:00
Anders Carlsson
a038825b1c
Don't warn about function templates or function template specializations.
...
llvm-svn: 90943
2009-12-09 03:44:46 +00:00
Mike Stump
aff69af918
Add cleanups for exceptional edges. WIP.
...
llvm-svn: 90940
2009-12-09 03:35:49 +00:00
John McCall
daa3d6bb50
Rename Sema::IsOverload to Sema::CheckOverload. Teach it to ignore unresolved
...
using value decls; we optimistically assume they won't turn into conflicts.
Teach it to tell the caller *why* the function doesn't overload with the returned
decl; this will be useful for using hiding.
llvm-svn: 90939
2009-12-09 03:35:25 +00:00
Anders Carlsson
31c7e88667
Move the missing prototypes checking out into a new function. Don't warn about inline functions. Add a test.
...
llvm-svn: 90938
2009-12-09 03:30:09 +00:00
Eli Friedman
4f678f3de1
Fix for PR5709: use the computed type of the declaration instead of the
...
type of the builtin when generating the function declaration for a builtin
library call.
llvm-svn: 90936
2009-12-09 03:05:59 +00:00
Anders Carlsson
efa4732747
Pass the current SourceLocation to getAssignOperatorMethod, fixing a crash when the assign operator method needs to be instantiated. Doug, please review the updated default-assignment-operator.cpp change.
...
llvm-svn: 90935
2009-12-09 03:01:51 +00:00
Ted Kremenek
32c32892f7
Fix a horrid bug in GRExprEngine::CheckerVisit() that was identified
...
by the test case in PR 5627. Essentially we shouldn't clear the
ExplodedNodeSet where we deposit newly constructed nodes if that set
is the 'Dst' set passed in. It is not okay to clear that set because
it may already contain nodes.
llvm-svn: 90931
2009-12-09 02:45:41 +00:00
Chris Lattner
53d80e2c07
Neil points out that this could be simplified, do it.
...
llvm-svn: 90927
2009-12-09 02:08:14 +00:00
Mike Stump
85d9968533
Add support for the cleanup attribute for C++; we don't have to copy
...
all of g++'s bugs.
llvm-svn: 90924
2009-12-09 01:50:36 +00:00
Douglas Gregor
40cb9ad391
Implemented an implicit conversion from "noreturn" function types (and
...
pointers thereof) to their corresponding non-noreturn function
types. This conversion is considered an exact match for
overload-resolution purposes. Note that we are a little more strict
that GCC is, because we encode noreturn in the type system, but that's
a Good Thing (TM) because it does not allow us to pretend that
potentially-returning function pointers are non-returning function
pointers.
Fxies PR5620.
llvm-svn: 90913
2009-12-09 00:47:37 +00:00
Daniel Dunbar
a8ad0a90fb
Improve test portability; I can't figure out how to get the regexp library to
...
match $ correctly with \r\n, unfortunately.
llvm-svn: 90907
2009-12-09 00:04:46 +00:00
Fariborz Jahanian
e19122ff01
Added a missing case to a switch statement.
...
llvm-svn: 90902
2009-12-08 23:46:15 +00:00
Daniel Dunbar
e07f152e6d
Increase inlining threshold at -O3, to match llvm-gcc.
...
llvm-svn: 90897
2009-12-08 23:15:55 +00:00
Fariborz Jahanian
859c415567
More detailed analysis of typecast to an objective-c pointer
...
in objective-c++ mode without being too lenient.
llvm-svn: 90895
2009-12-08 23:09:15 +00:00
John McCall
3a60c87a59
Handle unresolved using decls in bare lookups. These are not being adequately
...
tested. Fixes PR5727.
llvm-svn: 90893
2009-12-08 22:45:53 +00:00
Daniel Dunbar
8775727b39
Improve test portability.
...
llvm-svn: 90890
2009-12-08 22:22:20 +00:00
Anders Carlsson
347e9007c4
Make the BugType.h header self-contained so Daniel will stop bugging me ;)
...
llvm-svn: 90887
2009-12-08 22:16:41 +00:00
Mike Stump
4a6b337cfd
Add fixme.
...
llvm-svn: 90884
2009-12-08 22:12:48 +00:00
Daniel Dunbar
f51087656d
Remove include of system header.
...
llvm-svn: 90883
2009-12-08 21:52:24 +00:00
Mike Stump
e6d54ca553
Remove some old code. WIP.
...
llvm-svn: 90882
2009-12-08 21:46:41 +00:00
Douglas Gregor
9291ab6d80
Don't expand tabs when computing the offset from the code-completion column
...
llvm-svn: 90881
2009-12-08 21:45:46 +00:00
Daniel Dunbar
e74042a8e3
Don't use MS extensions in this test, we expect header include markers.
...
llvm-svn: 90880
2009-12-08 21:40:02 +00:00
Douglas Gregor
df72af5935
Pick up MB_LEN_MAX as defined by the system <limits.h>, when it's provided there
...
llvm-svn: 90879
2009-12-08 21:35:00 +00:00
Daniel Dunbar
17c4f8d746
Update CGExprConstant for change to emit padding values as undef.
...
- This fixes 2003-05-21-BitfieldHandling.
llvm-svn: 90876
2009-12-08 21:12:32 +00:00
Daniel Dunbar
6059021edc
Switch this test to use clang-cc.
...
llvm-svn: 90875
2009-12-08 21:12:25 +00:00
Fariborz Jahanian
33e148f64b
Patch to allow matching 0 with an objective-c pointer type
...
in objective-c++ mode. Fixes radar 7443165
llvm-svn: 90874
2009-12-08 20:04:24 +00:00
Daniel Dunbar
6cc525b44e
Unbreak clang-cc handling of -msoft-float / -mfloat-abi=, which I borked.
...
llvm-svn: 90873
2009-12-08 19:49:51 +00:00
Daniel Dunbar
888a89ccf2
Use clang-cc in this test.
...
llvm-svn: 90872
2009-12-08 19:49:40 +00:00
Fariborz Jahanian
1c548021ec
Patch to allow cstyle cast of objective-c pointers in objective-c++
...
mode as they are pervasive.
llvm-svn: 90867
2009-12-08 19:22:33 +00:00
Fariborz Jahanian
410f2ebdb6
Refactor objective-c pointer assignment compatibility logic. No
...
intended functionality change.
llvm-svn: 90865
2009-12-08 18:24:49 +00:00