| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 73000
|
| |
|
|
|
|
| |
change. More to follow.
llvm-svn: 72951
|
| |
|
|
|
|
|
|
|
| |
and objects of this class are derived from 'NSProxy'.
Under such conditions, which means that every method possible is
implemented in the class, we should not issue "Method definition not found"
warnings.
llvm-svn: 72267
|
| |
|
|
|
|
|
| |
DeclContext rather than in a separate list. This makes PCH
(de-)serialization trivial, so that ivars can be loaded lazily.
llvm-svn: 69857
|
| |
|
|
| |
llvm-svn: 69855
|
| |
|
|
|
|
|
|
|
|
|
| |
methods, class methods, and property implementations) and instead
place all of these entities into the DeclContext.
This eliminates more linear walks when looking for class or instance
methods and should make PCH (de-)serialization of ObjCDecls trivial
(and lazy).
llvm-svn: 69849
|
| |
|
|
|
|
| |
- This is only used by CGObjCRuntime now.
llvm-svn: 69800
|
| |
|
|
| |
llvm-svn: 69773
|
| |
|
|
| |
llvm-svn: 69772
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Superclasses are now always laid out their shadow structure at the
first field.
- Prior to this, the entire class heirarchy was flattened into a
single structure which meant that alignment, padding, and bitfields
weren't packed correctly (the ASTRecordLayout was correct however,
which meant our debug info didn't coincide with ivar offsets, for
example).
- This is still very suboptimal, but I believe the ivar layout itself
is now at least close to correct.
- <rdar://problem/6773388> error: objc[29823]: layout bitmap sliding
backwards
llvm-svn: 69771
|
| |
|
|
|
|
|
|
|
| |
@implementation that closes a @class delcaration.
- I don't know how to make a test case for this, but this strengthens
the invariants that hold internally. The functionality change here
is the edit to SemaDeclObjC.cpp.
llvm-svn: 69728
|
| |
|
|
|
|
| |
Test will be enabled with ObjCInterfaceDecl is added.
llvm-svn: 69594
|
| |
|
|
| |
llvm-svn: 69563
|
| |
|
|
|
|
| |
No functionality change (really).
llvm-svn: 68726
|
| |
|
|
|
|
| |
objc's continuation class.
llvm-svn: 68339
|
| |
|
|
|
|
|
| |
class which was exposed by implementation of
objc2's nonfragile abi code gen.
llvm-svn: 68259
|
| |
|
|
|
|
| |
class.
llvm-svn: 68234
|
| |
|
|
| |
llvm-svn: 68098
|
| |
|
|
| |
llvm-svn: 68077
|
| |
|
|
|
|
|
|
|
| |
'XCElementSpacer *', expected 'XCElement *' (not handling protocol signatures correctly?).
- Reworked ASTContext::canAssignObjCInterfaces().
- Added ObjCProtocolDecl::lookupProtocolNamed().
llvm-svn: 65773
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
/// FIXME: Like ObjCImplementationDecl, this should not be a NamedDecl!
/// FIXME: Introduce a new common base class for ObjCImplementationDecl and ObjCCategoryImplDecl
It adds an IndentifierInfo ivar to the ObjCCategoryImplDecl, so it can inherits from Decl and not NamedDecl (I'm not sure about the memory management of this ivar).
And now that both ObjCImplementationDecl and ObjCCategoryImplDecl have the same super classes, it allow creation of a common base class: ObjCImplDecl"
Patch by Jean-Daniel Dupas!
llvm-svn: 65703
|
| |
|
|
|
|
|
|
|
|
| |
in inherited protocols.
Also changed ObjCInterfaceDecl::lookupClassMethod() to look through a categories protocols.
Test/patch submitted by Jean-Daniel Dupas (thanks!).
llvm-svn: 65526
|
| |
|
|
|
|
|
|
|
|
| |
<rdar://problem/6497631> Message lookup is sometimes different than gcc's).
- Implement instance/class overloading in ObjCContainerDecl (removing a FIXME). This involved hacking NamedDecl::declarationReplaces(), which took awhile to figure out (didn't realize replace was the default).
- Changed Sema::ActOnInstanceMessage() to remove redundant warnings when dealing with protocols. For now, I've omitted the "protocol" term in the diagnostic. It simplifies the code flow and wan't always 100% accurate (e.g. "Foo<Prot>" looks in the class interface, not just the protocol).
- Changed several test cases to jive with the above changes.
llvm-svn: 65292
|
| |
|
|
|
|
|
|
|
| |
with new/delete. With disable-free, this reduces the number of 4/8 byte
mallocs from 4793/1541 to 865/456 and also drops other sizes as well.
This is a very small perf win, nothing major.
llvm-svn: 65171
|
| |
|
|
|
|
|
|
| |
ObjCList,
but don't start using it yet. Renamed some methods to be more consistent.
llvm-svn: 65168
|
| |
|
|
| |
llvm-svn: 65166
|
| |
|
|
|
|
| |
before the dtor.
llvm-svn: 65156
|
| |
|
|
|
|
| |
and other non-semantic changes.
llvm-svn: 65155
|
| |
|
|
| |
llvm-svn: 65151
|
| |
|
|
|
|
| |
it from being leaked, among other things.
llvm-svn: 65150
|
| |
|
|
| |
llvm-svn: 65132
|
| |
|
|
| |
llvm-svn: 65131
|
| |
|
|
| |
llvm-svn: 65129
|
| |
|
|
| |
llvm-svn: 65127
|
| |
|
|
|
|
| |
ObjCList.
llvm-svn: 65114
|
| |
|
|
| |
llvm-svn: 65113
|
| |
|
|
| |
llvm-svn: 65112
|
| |
|
|
| |
llvm-svn: 65111
|
| |
|
|
|
|
| |
Pass the DeclContext to ObjCIvarDecls as well.
llvm-svn: 64801
|
| |
|
|
|
|
| |
the same.
llvm-svn: 64657
|
| |
|
|
| |
llvm-svn: 64650
|
| |
|
|
|
|
|
|
| |
calls to the recently added placement new (which uses ASTContext's allocator for memory). Also added ASTContext::Deallocate().
This will simplify runtime replacement of ASTContext's allocator. Keeping the allocator private (and removing getAllocator() entirely) is also goodness.
llvm-svn: 63135
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
that every declaration lives inside a DeclContext.
Moved several things that don't have names but were ScopedDecls (and,
therefore, NamedDecls) to inherit from Decl rather than NamedDecl,
including ObjCImplementationDecl and LinkageSpecDecl. Now, we don't
store empty DeclarationNames for these things, nor do we try to insert
them into DeclContext's lookup structure.
The serialization tests are temporarily disabled. We'll re-enable them
once we've sorted out the remaining ownership/serialiazation issues
between DeclContexts and TranslationUnion, DeclGroups, etc.
llvm-svn: 62562
|
| |
|
|
|
|
| |
with @synthesize being illegal.
llvm-svn: 62515
|
| |
|
|
|
|
| |
ObjCMethodDecls, and shouldn't be released elsewhere.
llvm-svn: 62113
|
| |
|
|
|
|
|
|
| |
assigned to when it has user declared setter method
defined in the class implementation (but no declaration in
the class itself).
llvm-svn: 62098
|
| |
|
|
|
|
| |
This completes the ObjCContainerDecl AST cleanup (for now).
llvm-svn: 62037
|
| |
|
|
| |
llvm-svn: 62034
|
| |
|
|
|
|
| |
prohibition of 'readonly' properties in an assignment.
llvm-svn: 62028
|
| |
|
|
|
|
| |
in designated protocols lazily.
llvm-svn: 62007
|