Fariborz Jahanian
9a8e759b4f
Implement an important missing warning when a selector
...
is searched for in the global pool. It already uncovered
a clang bug in message selection.
llvm-svn: 65974
2009-03-03 22:19:15 +00:00
Steve Naroff
c03f6b91b1
Fix <rdar://problem/5982579> [clang on xcode] (using arch=x86_64): synthesized property 'sdkPath' must either be named the same as a compatible ivar or must explicitly name an ivar.
...
llvm-svn: 65973
2009-03-03 22:09:41 +00:00
Ted Kremenek
c9747dd60f
Rework use of loc::SymbolVal in the retain/release checker to use the new method
...
SVal::getAsLocSymbol(). This simplifies the code and allows the retain/release
checker to (I believe) also correctly reason about location symbols wrapped in
SymbolicRegions.
Along the way I cleaned up SymbolRef a little, disallowing implicit casts to
'unsigned'.
llvm-svn: 65972
2009-03-03 22:06:47 +00:00
Steve Naroff
27ed6f6766
Fix <rdar://problem/6252237> [sema] qualified id should be disallowed in @catch statements.
...
llvm-svn: 65969
2009-03-03 21:16:54 +00:00
Steve Naroff
39d6fba0d6
Fix <rdar://problem/6632061> [sema] non object types should not be allowed in @catch statements.
...
llvm-svn: 65968
2009-03-03 20:59:06 +00:00
Chris Lattner
5c3529634a
implement support for propagating *features* down to the code generator
...
and defining target-specific macros based on them (like __SSE3__ and
friends). After extensive discussion with Daniel, this work will need
driver support, which will translate things like -msse3 into a -mattr
feature. Until this work is done, the code in clang.cpp is disabled and
the X86TargetInfo ctor still defaults to SSE2. With these two things
changed, this code will work. PR3634
llvm-svn: 65966
2009-03-03 19:56:18 +00:00
Steve Naroff
371b8fb4c3
Fix <rdar://problem/6640991> Exception handling executes wrong clause (Daniel, please verify).
...
Also necessary to fix:
<rdar://problem/6632061> [sema] non object types should not be allowed in @catch statements
<rdar://problem/6252237> [sema] qualified id should be disallowed in @catch statements
llvm-svn: 65964
2009-03-03 19:52:17 +00:00
Ted Kremenek
9f276d6279
Don't use std::auto_ptr with getSubRegionMap().
...
llvm-svn: 65957
2009-03-03 19:02:42 +00:00
Ted Kremenek
e3852bd252
Fix case where we should use dyn_cast instead of cast.
...
llvm-svn: 65956
2009-03-03 19:01:37 +00:00
Fariborz Jahanian
eab5ecd8e0
Fixed an ir-gen bug in syntheszing a getter function
...
with property type which does not match its ivar and
in -fobjc-gc-only mode!
llvm-svn: 65955
2009-03-03 18:49:40 +00:00
Ted Kremenek
5340b248b4
Fix extra ';' bug noticed by Mike Stump.
...
llvm-svn: 65954
2009-03-03 18:15:30 +00:00
Daniel Dunbar
cabb41d15a
Hush gcc.
...
llvm-svn: 65952
2009-03-03 16:54:38 +00:00
Anders Carlsson
24b1447b19
Return 0 if the ConstExprEmitter can't handle an expression.
...
llvm-svn: 65951
2009-03-03 16:43:34 +00:00
Steve Naroff
b0e25c1ceb
Remove old/incorrect warnings.
...
llvm-svn: 65950
2009-03-03 15:49:23 +00:00
Steve Naroff
3e1181e2e9
Fix <rdar://problem/6497242> Inherited overridden protocol declared objects don't work.
...
Change Sema::DiagnosePropertyMismatch() to check for type compatibility (rather than type equivalence, which is too strict).
llvm-svn: 65949
2009-03-03 15:43:24 +00:00
Steve Naroff
157599fe1c
Fix <rdar://problem/6497608> clang does not catch ivar type mismatches in @implementation.
...
llvm-svn: 65948
2009-03-03 14:49:36 +00:00
Daniel Dunbar
d53cf6c0c5
Driver: Sketch Arg & ArgList classes.
...
llvm-svn: 65937
2009-03-03 07:34:45 +00:00
Eli Friedman
4735374e39
PR3691: Add support for complex modes. I also tossed in support for XF
...
while I was at it. There are still a lot of diagnostics missing from
this code, and it isn't completely correct for anything other than x86, but
it should work correctly on x86 for valid cases.
llvm-svn: 65935
2009-03-03 06:41:03 +00:00
Daniel Dunbar
b2da933989
Sketch Driver Option classes.
...
llvm-svn: 65933
2009-03-03 05:55:11 +00:00
Eli Friedman
78350edafb
Fix for PR3687: use the memory representation for booleans when a
...
sub-type describes a memory location, like the pointee type of a pointer
or the element type of an array.
llvm-svn: 65925
2009-03-03 04:48:01 +00:00
Douglas Gregor
463421deb1
Implement the basics of implicit instantiation of class templates, in
...
response to attempts to diagnose an "incomplete" type. This will force
us to use DiagnoseIncompleteType more regularly (rather than looking at
isIncompleteType), but that's also a good thing.
Implicit instantiation is still very simplistic, and will create a new
definition for the class template specialization (as it should) but it
only actually instantiates the base classes and attaches
those. Actually instantiating class members will follow.
Also, instantiate the types of non-type template parameters before
checking them, allowing, e.g.,
template<typename T, T Value> struct Constant;
to work properly.
llvm-svn: 65924
2009-03-03 04:44:36 +00:00
Ted Kremenek
6c6a098a83
Tighten message bubble height.
...
Make bubble number decoration look more like circles than ovals.
llvm-svn: 65921
2009-03-03 03:00:21 +00:00
Ted Kremenek
4c8a5817a5
Implement FIXME: GRStateManager::scanReachableSymbols now supports scanning MemRegions.
...
llvm-svn: 65919
2009-03-03 02:51:43 +00:00
Ted Kremenek
d62491a808
Update checker build.
...
llvm-svn: 65916
2009-03-03 01:44:57 +00:00
Ted Kremenek
8dc671cdc9
Add StoreManager::getSubRegionMap(). This method returns an opaque mapping for clients of StoreManagers from MemRegions to their subregions.
...
llvm-svn: 65914
2009-03-03 01:35:36 +00:00
Fariborz Jahanian
a458c4ff65
Check of ivar access access control.
...
llvm-svn: 65912
2009-03-03 01:21:12 +00:00
Steve Naroff
f3833d70be
Fix <rdar://problem/6635908> crash on invalid
...
llvm-svn: 65909
2009-03-03 00:45:38 +00:00
Zhongxing Xu
6765d449ed
Add test case for pointer arithmetic.
...
llvm-svn: 65907
2009-03-03 00:28:42 +00:00
Chris Lattner
5a9a892e48
fix PR#
...
llvm-svn: 65906
2009-03-03 00:00:26 +00:00
Ted Kremenek
ccca5c3f00
Adjust CSS to make message bubble numbers less gaudy.
...
llvm-svn: 65903
2009-03-02 23:39:27 +00:00
Ted Kremenek
7f16ed4c25
Resize message bubble back to original size.
...
llvm-svn: 65892
2009-03-02 23:06:15 +00:00
Ted Kremenek
c62af6c4cf
Adjust HTML message bubbles to utilize information from PathDiagnosticPiece::Kind.
...
llvm-svn: 65891
2009-03-02 23:05:40 +00:00
Chris Lattner
96e43578fc
Add plumbing to support programatically defining __SSE2__ and friends,
...
even though we still hard code sse2 for now. No support for 3dnow or sse4a,
but someone could add that if they desired.
llvm-svn: 65886
2009-03-02 22:40:39 +00:00
Chris Lattner
ecd49037ec
minor cleanups to target-specific #defines, no functionality change.
...
llvm-svn: 65885
2009-03-02 22:27:17 +00:00
Chris Lattner
c25d8a7e30
improve compatibility with GCC 4.4, patch by Michel Salim (PR3697)
...
llvm-svn: 65884
2009-03-02 22:20:04 +00:00
Chris Lattner
e6e4c0381a
start wiring up support for target-specific -mfoo options like -msse
...
llvm-svn: 65881
2009-03-02 22:11:07 +00:00
Steve Naroff
b94d7f65fa
Fix <rdar://problem/6636803> [sema] crash on InterfaceBuilder.
...
Parser::ParseObjCMethodDefinition(): Make sure we don't exit the BodyScope until ActOnFinishFunctionBody() is complete.
llvm-svn: 65880
2009-03-02 22:00:56 +00:00
Fariborz Jahanian
bf8e842b67
Diagnose a variety of access of ivars when they conflict with
...
local or global variables in instance/class methods.
llvm-svn: 65879
2009-03-02 21:55:29 +00:00
Ted Kremenek
53b72b4fea
Plist diagnostics now include PathDiagnostPiece::Kind.
...
llvm-svn: 65878
2009-03-02 21:44:02 +00:00
Ted Kremenek
e780823fac
Update HTML diagnostics to honor the different between 'event' and 'control-flow' diagnostics.
...
llvm-svn: 65877
2009-03-02 21:42:01 +00:00
Ted Kremenek
c7b663120e
BugReporter: Construct path-related PathDiagnosticPieces with kind "ControlFlow".
...
llvm-svn: 65876
2009-03-02 21:41:18 +00:00
Ted Kremenek
592ca2c4ab
Update Xcode project.
...
llvm-svn: 65870
2009-03-02 21:00:12 +00:00
Chris Lattner
e29509a6e1
fix PR2639
...
llvm-svn: 65869
2009-03-02 20:58:48 +00:00
Daniel Dunbar
544ecd14b6
Stub out some structure for C++ driver.
...
llvm-svn: 65867
2009-03-02 19:59:07 +00:00
Anders Carlsson
b3b675c35e
inline asm calls should be nounwind. Chris, please review.
...
llvm-svn: 65866
2009-03-02 19:58:15 +00:00
Daniel Dunbar
4c71f563e7
Fix name.
...
llvm-svn: 65865
2009-03-02 19:50:00 +00:00
Ted Kremenek
5e26e36283
Update Xcode project.
...
llvm-svn: 65863
2009-03-02 19:41:07 +00:00
Ted Kremenek
da8cdbb53e
Add a 'kind' field to PathDiagnosticPieces.
...
llvm-svn: 65862
2009-03-02 19:40:38 +00:00
Ted Kremenek
353e40211c
For now, do not output the 'DisplayHint' in plist files.
...
llvm-svn: 65861
2009-03-02 19:40:15 +00:00
Ted Kremenek
1f8140d3d4
For now, do not output the 'DisplayHint' in plist files.
...
llvm-svn: 65860
2009-03-02 19:39:50 +00:00