| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
it is handled.
llvm-svn: 53665
|
| |
|
|
| |
llvm-svn: 53645
|
| |
|
|
|
|
| |
attribute that the static analyzer will use to recognize what ivars are IBOutlets.
llvm-svn: 53644
|
| |
|
|
|
|
| |
Simplify the parser by removing Parser::ParseIdentifierStatement.
llvm-svn: 53520
|
| |
|
|
|
|
|
|
|
| |
(by Preprocessor::LookNext):
-Remove ParseExpressionWithLeadingIdentifier and ParseAssignmentExprWithLeadingIdentifier.
-Separate ParseLabeledStatement from ParseIdentifierStatement.
llvm-svn: 53376
|
| |
|
|
| |
llvm-svn: 52956
|
| |
|
|
| |
llvm-svn: 52855
|
| |
|
|
|
|
| |
cases where mutation can introduce bugs. Propagate around 'const'.
llvm-svn: 52772
|
| |
|
|
|
|
| |
be an assert; suggestion by Chris.
llvm-svn: 52696
|
| |
|
|
|
|
|
| |
Note that Parser::ParseCXXMemberSpecification is temporarily disabled until the Sema support is in place.
Once ParseCXXMemberSpecification is enabled, the Parser/cxx-class.cpp test will pass.
llvm-svn: 52694
|
| |
|
|
|
|
| |
Patch by David Chisnall!
llvm-svn: 52586
|
| |
|
|
| |
llvm-svn: 52575
|
| |
|
|
|
|
| |
Remove an extra space at the end of a line.
llvm-svn: 52504
|
| |
|
|
|
|
|
| |
I choose to remove extraneous whitespace at end of lines as a semantic
nop for the test.
llvm-svn: 52503
|
| |
|
|
| |
llvm-svn: 52092
|
| |
|
|
|
|
|
|
| |
have Destroy methods of ObjcMethodDecl and ObjCInterfaceDecl which recursively
destroy their owned Decls and Stmts. There are a few cases where it is not
clear what to do (FIXMEs included in the patch).
llvm-svn: 52050
|
| |
|
|
|
|
|
|
|
|
| |
only documentation I could find on it).
/* Make "<SomeProtocol>" equivalent to "id <SomeProtocol>" - nisse@lysator.liu.se. */
This commit adds the parser magic. The type associated with <p> is still incorrect. Will discuss with Chris.
llvm-svn: 51972
|
| |
|
|
| |
llvm-svn: 51963
|
| |
|
|
|
|
| |
<rdar://problem/5980846> clang on xcode: error: declarator requires an identifier (for @catch)
llvm-svn: 51895
|
| |
|
|
|
|
| |
objc message send in an initializer expression.
llvm-svn: 51882
|
| |
|
|
| |
llvm-svn: 51622
|
| |
|
|
|
|
|
|
|
|
| |
it fixes PR2204. Not too much to say about the implementation; it works
in a similar way to the vector size attribute.
At some point, we need to modify the targets to provide information
about the appropriate types.
llvm-svn: 51577
|
| |
|
|
|
|
|
|
| |
decl spec).
Also added a FIXME related to how we represent @properties in the ObjCInterfaceDecl AST.
llvm-svn: 51450
|
| |
|
|
|
|
|
|
|
| |
extend beyond the end of the function.
I'm not completely sure this is the right way to fix this bug, so
someone familiar with the parser should double-check.
llvm-svn: 51311
|
| |
|
|
|
|
|
| |
-identifierResolver exposes an iterator interface to get all decls through the scope chain.
-The semantic staff (checking IdentifierNamespace and Doug's checking for shadowed tags were moved out of IdentifierResolver and back into Sema. IdentifierResolver just gives an iterator for all reachable decls of an identifier.
llvm-svn: 50923
|
| |
|
|
|
|
| |
crashes because objc types aren't set up right.
llvm-svn: 50884
|
| |
|
|
|
|
|
| |
properties. Couple of property tests will fail with this patch.
Will fix them next.
llvm-svn: 50818
|
| |
|
|
|
|
|
| |
(was IdentifierInfo * before). This will make method declartations whole
lot easier.
llvm-svn: 50747
|
| |
|
|
|
|
| |
properties declared in the protocol.
llvm-svn: 50662
|
| |
|
|
| |
llvm-svn: 50542
|
| |
|
|
|
|
| |
Patch by Emerson Murhpy-Hill.
llvm-svn: 50452
|
| |
|
|
|
|
| |
This is the same for functions and it's preferable to have the namespace as DeclContext during ActOnPopScope.
llvm-svn: 50322
|
| |
|
|
|
|
|
|
|
| |
-NamespaceDecl for the AST
-Checks for name clashes between namespaces and tag/normal declarations.
This commit doesn't implement proper name lookup for namespaces.
llvm-svn: 50321
|
| |
|
|
|
|
| |
comments on the ML will follow
llvm-svn: 50262
|
| |
|
|
|
|
|
| |
More property semantics checking.
First test case for ObjC2's property implementation.
llvm-svn: 50057
|
| |
|
|
|
|
|
|
| |
1. If we hit a semantic error, try harder to recover to emit
diagnostics for later initializer errors (PR2241).
2. Don't leak parsed initializers on an error.
llvm-svn: 49998
|
| |
|
|
| |
llvm-svn: 49942
|
| |
|
|
|
|
|
| |
Mostly semantic checking in this patch. This is on going
and incomplete.
llvm-svn: 49882
|
| |
|
|
| |
llvm-svn: 49699
|
| |
|
|
|
|
| |
state
llvm-svn: 49629
|
| |
|
|
|
|
|
|
|
|
|
| |
inheritance in C++. It'll parse the base-specifier list, e.g.,
class D : public B1, virtual public B2 { };
and do some of the simpler semantic checks (B1 and B2 are classes;
they aren't unions or incomplete types, etc).
llvm-svn: 49623
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
allows the parsing of "class" in addition to "struct" and "union" to
declare a record. So this patch allows:
class C { };
class C c1;
But it does not contain the lookup bits, so this won't work yet:
C c2;
Patch by Doug Gregor!
llvm-svn: 49613
|
| |
|
|
|
|
| |
Doug Gregor!
llvm-svn: 49598
|
| |
|
|
| |
llvm-svn: 49565
|
| |
|
|
| |
llvm-svn: 49539
|
| |
|
|
|
|
|
|
| |
1) objc ivar processing is split out of ActOnField into its own ActOnIvar method.
2) the new objc ivar action takes visibility info directly, eliminating
AllVisibilities in ParseObjCClassInstanceVariables.
llvm-svn: 49506
|
| |
|
|
| |
llvm-svn: 49489
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
declarators. This allows the clients (C structs, objc classes, objc
properties, [future] C++ classes) etc, to do custom processing before invoking
an action.
This has two benefits in the short term:
1) objc ivar processing should be split out of ActOnField into its own ActOn method.
2) the new objc ivar action can take visibility info directly, eliminating
AllVisibilities in ParseObjCClassInstanceVariables.
3) objc properties can pass their own special sauce down to sema as well.
llvm-svn: 49468
|
| |
|
|
| |
llvm-svn: 49467
|
| |
|
|
|
|
| |
argument handling. I'll fix up the c89 (void) thing next.
llvm-svn: 49459
|