| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
| |
member functions defined inside an objc class
implementation. wip.
llvm-svn: 161667
|
|
|
|
|
|
| |
non-POD. Fixes <rdar://problem/12031870>.
llvm-svn: 161395
|
|
|
|
|
|
| |
-dealloc method. PR13401.
llvm-svn: 161135
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
are cast to retainable types, only suggest CFBridgingRelease/
CFBridgingRetain and not the __bridge casts.
// rdar://11923822
llvm-svn: 160900
|
|
|
|
| |
llvm-svn: 160895
|
|
|
|
|
|
|
|
| |
retainable types in arc, only suggest CFBridgingRelease/
CFBridgingRetain and not the confusing __bridge casts.
// rdar://11923822
llvm-svn: 160839
|
|
|
|
|
|
|
|
| |
structor class under ARC, that struct/class does not have a trivial
move constructor or move assignment operator. Fixes the rest of
<rdar://problem/11738725>.
llvm-svn: 160615
|
|
|
|
|
|
|
|
| |
of c-functions nested in namespace in method implementations
by turning off its delayed parsing until a proper solution is
figured out. pr13418
llvm-svn: 160552
|
|
|
|
|
|
| |
No functionality change.
llvm-svn: 160516
|
|
|
|
|
|
|
|
| |
[temp.deduct.call]p4 under Objective-C++ ARC, make sure to adjust the
qualifiers to introduce the implicit strong lifetime when
needed. Fixes <rdar://problem/11825671>.
llvm-svn: 160412
|
|
|
|
|
|
| |
over objective-c container collection. // rdar://9293227
llvm-svn: 159847
|
|
|
|
|
|
|
|
|
| |
of out-of-line c++ method definition which happens
to be inside an objc class implementation
until I can figure out how to do it. This is to fix
a broken project.
llvm-svn: 159772
|
|
|
|
|
|
|
| |
c-function parsing when a declaration with
C++0x braced-init-list is inside an @implementation.
llvm-svn: 159693
|
|
|
|
|
|
|
| |
type traits that assignment to/construction of a lifetime-qualified
object under ARC is *not* trivial. Fixes <rdar://problem/11738725>.
llvm-svn: 159401
|
|
|
|
|
|
| |
not a pointer to a fast-enumerable object. // rdar://11488666
llvm-svn: 158998
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
target Objective-C runtime down to the frontend: break this
down into a single target runtime kind and version, and compute
all the relevant information from that. This makes it
relatively painless to add support for new runtimes to the
compiler. Make the new -cc1 flag, -fobjc-runtime=blah-x.y.z,
available at the driver level as a better and more general
alternative to -fgnu-runtime and -fnext-runtime. This new
concept of an Objective-C runtime also encompasses what we
were previously separating out as the "Objective-C ABI", so
fragile vs. non-fragile runtimes are now really modelled as
different kinds of runtime, paving the way for better overall
differentiation.
As a sort of special case, continue to accept the -cc1 flag
-fobjc-runtime-has-weak, as a sop to PLCompatibilityWeak.
I won't go so far as to say "no functionality change", even
ignoring the new driver flag, but subtle changes in driver
semantics are almost certainly not intended.
llvm-svn: 158793
|
|
|
|
|
|
|
| |
There was already a test that it did not fire in type-dependent contexts.
This was already behaving correctly.
llvm-svn: 158530
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This could happen for cases like this:
- (NSArray *)getAllNames:(NSArray *)images {
NSMutableArray *results = [NSMutableArray array];
for (auto img in images) {
[results addObject:img.name];
}
return results;
}
Here the property access will fail because 'img' has type 'id', rather than,
say, NSImage.
This warning will not fire in templated code, since the 'id' could have
come from a template parameter.
llvm-svn: 158239
|
|
|
|
|
|
|
|
|
|
| |
Previously we would reject it as illegal using a value of
enum type and on ObjC++ it was illegal to use an enumerator
as well.
rdar://11454917
llvm-svn: 156843
|
|
|
|
|
|
|
|
| |
<rdar://problem/11333367>.
While I'm here, fix source locations for other diagnostics related to property synthesis.
llvm-svn: 155953
|
|
|
|
|
|
|
| |
when we're in an Objective-C container context. Fixes
<rdar://problem/11286701>.
llvm-svn: 155836
|
|
|
|
|
|
| |
<rdar://problem/11284902>.
llvm-svn: 155356
|
|
|
|
|
|
|
| |
type for rewriter project will be BoolTy.
// rdar://11231426.
llvm-svn: 154861
|
|
|
|
|
|
| |
rebuilt. Fixes <rdar://problem/11052352>.
llvm-svn: 154667
|
|
|
|
|
|
|
| |
that of typedef BOOL if found.
// rdar://11231426
llvm-svn: 154595
|
|
|
|
|
|
|
|
|
| |
root class is intentionally declared.
The warning this inhibits, -Wobjc-root-class, is opt-in for now. However, all clang unit tests that would trigger
the warning have been updated to use -Wno-objc-root-class. <rdar://problem/7446698>
llvm-svn: 154187
|
|
|
|
|
|
| |
in ARC, under the usual reasoning limiting the use of __autoreleasing.
llvm-svn: 153725
|
|
|
|
| |
llvm-svn: 153602
|
|
|
|
|
|
|
| |
provide 'fixit' hint when dictionary index
is not of proper type. // rdar://11062080
llvm-svn: 153584
|
|
|
|
|
|
|
| |
to forward class, and assigning to an 'id' type var, message
sends default to 'id'. // rdar"//10988847
llvm-svn: 152420
|
|
|
|
|
|
|
| |
type-analysis; otherwise, we just completely do the
wrong thing for placeholders.
llvm-svn: 152375
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
NSNumber, and boolean literals. This includes both Sema and Codegen support.
Included is also support for new Objective-C container subscripting.
My apologies for the large patch. It was very difficult to break apart.
The patch introduces changes to the driver as well to cause clang to link
in additional runtime support when needed to support the new language features.
Docs are forthcoming to document the implementation and behavior of these features.
llvm-svn: 152137
|
|
|
|
|
|
| |
// rdar://10907410
llvm-svn: 151296
|
|
|
|
|
|
|
|
| |
name for dot syntax, e.g., NSObject.class or foo.class. For other
C++-keywords-as-method-names, use message send syntax. Fixes
<rdar://problem/10794452>.
llvm-svn: 150710
|
|
|
|
|
|
| |
or __strong __typeof__(some.strong.thing).
llvm-svn: 150029
|
|
|
|
|
|
| |
last commit. Sorry for the outage.
llvm-svn: 149744
|
|
|
|
|
|
| |
rdar://10736625
llvm-svn: 149662
|
|
|
|
|
|
| |
changing the diagnostic. Also use correct spelling for both.
llvm-svn: 149554
|
|
|
|
|
|
|
|
| |
CFBridgingRetain/CFBridgingRelease calls instead
of __bridge_retained/__bridge_transfer casts as preferred
way of moving cf objects to arc land. // rdar://10207950
llvm-svn: 149449
|
|
|
|
|
|
| |
an objc object in any abi mode.
llvm-svn: 148847
|
|
|
|
|
|
| |
// rdar://10731065
llvm-svn: 148823
|
|
|
|
|
|
|
|
| |
Fix some review comments.
Add a test for deduction when std::initializer_list isn't available yet.
Fix redundant error messages. This fixes and outstanding FIXME too.
llvm-svn: 148735
|
|
|
|
|
|
|
| |
in favor of usage of api's intended for.
// rdar://8290002
llvm-svn: 148404
|
|
|
|
|
|
| |
PotentiallyPotentiallyEvaluated contexts. In preparation for making sizeof() PotentiallyPotentiallyEvaluated.
llvm-svn: 148367
|
|
|
|
| |
llvm-svn: 148118
|
|
|
|
|
|
|
|
| |
expression for an Objective-C object or pointer type, so that we don't
attempt to treat the member name as a template. Fixes
<rdar://problem/10672501>.
llvm-svn: 148028
|
|
|
|
| |
llvm-svn: 147984
|
|
|
|
| |
llvm-svn: 147905
|
|
|
|
|
|
| |
new-expressions.
llvm-svn: 147900
|