Age | Commit message (Collapse) | Author | Files | Lines |
|
------------------------------------------------------------------------
r195146 | fjahanian | 2013-11-19 11:26:30 -0800 (Tue, 19 Nov 2013) | 4 lines
ObjectiveC ARC. Removes a bogus warning when a weak
property is redeclared as 'weak' in class extension.
// rdar://15465916
------------------------------------------------------------------------
llvm-svn: 195224
|
|
------------------------------------------------------------------------
r195135 | fjahanian | 2013-11-19 09:42:25 -0800 (Tue, 19 Nov 2013) | 3 lines
bjectiveC. Use a uniform diagnostic for
'objc_bridge' attribute. // rdar://15454846.
------------------------------------------------------------------------
llvm-svn: 195141
|
|
per Doug/Jordan comments. // rdar://15454846.
llvm-svn: 195066
|
|
on struct/union/class instead of typedef of
such types. // rdar://15454846
llvm-svn: 195061
|
|
CF objects with objc_bridge'ing annotaiton.
// rdar://15454846
llvm-svn: 194938
|
|
of ObjectiveC objects to CF types when CF type
has the objc_bridge attribute.
llvm-svn: 194930
|
|
// rdar://15454846.
llvm-svn: 194915
|
|
Improve on wording on illegal objc_bridge argumment.
// rdar://15454846
llvm-svn: 194881
|
|
// rdar://15454846
llvm-svn: 194864
|
|
the point of CF object type-cast and issue diagnostic
if it is not a valid ObjectiveC class. // rdar//15454846.
This is wip.
llvm-svn: 194861
|
|
ivar when property belongs to a super class and
currnt class happens to have a method with same name as
property. // rdar//15473432
llvm-svn: 194830
|
|
Per feedback from Jordan Rose I realized this wasn't the right way to go.
llvm-svn: 194664
|
|
all bridge casts.
Also refine test case to capture the intention of this suppression. Essentially
some developers use __bridge_transfer as if it were a safe CFRelease.
llvm-svn: 194663
|
|
management.
Fixes <rdar://problem/15432770>.
llvm-svn: 194647
|
|
objc_bridge attributes in my previous test.
Per Jordan's comment.
llvm-svn: 194645
|
|
toll-free bridging cf types only. // rdar//15454846 wip.
llvm-svn: 194640
|
|
that teaches the compiler about a subset of toll-free
bridging semantics. This is wip. // rdar://15454846
llvm-svn: 194633
|
|
"Missing call to Super" in the overriding method and
not in the method itself. // rdar://15385981.
llvm-svn: 194031
|
|
-fobjc-subscripting-legacy-runtime which is off
by default and on only when using ObjectiveC
legacy runtime. Use this flag to allow
array and dictionary subscripting and disallow
objectiveC pointer arithmatic in ObjectiveC
legacy runtime. // rdar://15363492
llvm-svn: 193889
|
|
into a separate "parse an attribute that takes a type argument" codepath. This
results in both codepaths being a lot cleaner and simpler, and fixes some bugs
where the type argument handling bled into the expression argument handling and
caused us to both accept invalid and reject valid attribute arguments.
llvm-svn: 193731
|
|
is redeclared as 'weak' in class extension.
// rdar://15304886
llvm-svn: 193453
|
|
backing warning is not used in one of its accessor methods.
// rdar://14989999
llvm-svn: 193439
|
|
attributes when such methods are actually envoked in message
expression. // rdar://15242010
llvm-svn: 193003
|
|
that can represent unicode characters
Fixes <rdar://problem/13991617>.
llvm-svn: 192673
|
|
OpaqueValueExprs.
Fixes a false positive with -Wconversion involving Objective-C properties.
Fixes <rdar://problem/14415662>.
llvm-svn: 192611
|
|
This patch fixes PR17019. When doing typo correction, Sema::CorrectTypo uses
correction already seen for the same typo. This causes problems if that
correction is from another scope and cannot be accessed in the current.
llvm-svn: 192594
|
|
the fereach loop must be a non-const lvalue expression as
it will be assigned to at the beginning of the loop.
// rdar://15123684
llvm-svn: 192399
|
|
warn when the literal comes from a macro expansion. Fixes <rdar://problem/15147688>.
llvm-svn: 192328
|
|
ownership attribute (such as 'copy', 'assign' etc.)
// rdar://15131088
llvm-svn: 192115
|
|
(assign/unsafe_unretained/weak/retain/strong/copy) in super class
to be overridden by a property with any explicit ownership in the
subclass. // rdar://15014468
llvm-svn: 191971
|
|
disable-objc-default-synthesize-properties.
We want the modern behavior most of the time, so inverting the option simplifies
the driver and the tests.
llvm-svn: 191551
|
|
llvm-svn: 191545
|
|
declared in a typedef declaraton used as super
class of an ObjC class. Curretnly, these protocols
are dropped from the class hierarchy. Test shows that
it is now included. // rdar://15051465
llvm-svn: 191395
|
|
objc_returns_inner_pointer on properties. // rdar://14990439
llvm-svn: 191016
|
|
of ObjectiveC properties to mean annotation of
NS_RETURNS_INNER_POINTER on its synthesized getter.
This also facilitates more migration to properties when
methods are annotated with NS_RETURNS_INNER_POINTER.
// rdar://14990439
llvm-svn: 191009
|
|
<rdar://problem/14970968>
llvm-svn: 190635
|
|
This expands very slightly what -Wtautological-compare considers to be
tautological to include implicit accesses to C++ fields and ObjC ivars.
I don't want to turn this into a full expression-identity check, but
these additions seem pretty well-contained, and maintain the theme
of checking for "x == x".
<rdar://problem/14431127>
llvm-svn: 190118
|
|
llvm-svn: 189731
|
|
argument list.
llvm-svn: 189711
|
|
properties (direct or indirect) setter/getter (or declared
methods as well) are seen by the method implementation type
matching logic before declaration of method in super class
is seen. This fixes the warning coming out of that method mismatch.
// rdar://14650159
llvm-svn: 188438
|
|
// rdar://14303083
llvm-svn: 188335
|
|
expresison is a concatenated nsstring element.
// rdar://14303083
llvm-svn: 188332
|
|
function: it can't be 'void' and it can't be an initializer list. We give a
hard error for these rather than treating them as undefined behavior (we can
and probably should do the same for non-POD types in C++11, but as of this
change we don't).
Slightly rework the checking of variadic arguments in a function with a format
attribute to ensure that certain kinds of format string problem (non-literal
string, too many/too few arguments, ...) don't suppress this error.
llvm-svn: 187735
|
|
retainable pointer is passed to an audited CF function
expecting CF type. // rdar://14569171
llvm-svn: 187543
|
|
llvm-svn: 187400
|
|
diagnostic for clarity; updated almost all of the affected test cases.
Thanks to Fariborz Jahanian for the suggestion!
llvm-svn: 186980
|
|
llvm-svn: 186966
|
|
llvm-svn: 186947
|
|
Adding missing test cases for the diagnostics.
llvm-svn: 186944
|
|
count reported matches reality.
llvm-svn: 186936
|