- Sep 05, 2008
-
-
Ted Kremenek authored
Remove "NextDecl" from RecordDecl. This change touches many files that where RecordDecl or CXXRecordDecl was constructed, always with an argument of 'NULL' for the previous declaration. The motivation behind this change is that chaining the RecordDecls is simply unnecessary. Once we create multiple RecordDecls for the same struct/union/class, clients that care about all the declarations of the same struct can build a back map by seeing which Decls refer to the same RecordType. llvm-svn: 55821
-
- Sep 04, 2008
-
-
Ted Kremenek authored
- Within for loops, 'continue' should jump to a basic block containing the increment code llvm-svn: 55800
-
Steve Naroff authored
llvm-svn: 55768
-
Steve Naroff authored
llvm-svn: 55767
-
- Sep 03, 2008
-
-
Steve Naroff authored
Highlights... - 4 new AST nodes, BlockExpr, BlockStmtExpr, BlockExprExpr, BlockDeclRefExpr. - Sema::ActOnBlockStart(), ActOnBlockError(), ActOnBlockStmtExpr(), ActOnBlockExprExpr(), ActOnBlockReturnStmt(). Next steps... - hack Sema::ActOnIdentifierExpr() to deal with block decl refs. - add attribute handler for byref decls. - add test cases. llvm-svn: 55710
-
Daniel Dunbar authored
uses which refer to methods not properties. - Not yet wired in Sema. llvm-svn: 55681
-
- Sep 02, 2008
-
-
Ted Kremenek authored
- Remove method 'isForwardDecl'; this functionality is already provided by 'isDefinition()' - Move method definitions to be co-located with other RecordDecl methods. llvm-svn: 55649
-
Ted Kremenek authored
- Don't serialize out the NextDeclarator field. It is unused and deprecated. - Serialize out the NextDecl pointer. llvm-svn: 55644
-
Ted Kremenek authored
- Added method 'isForwardDeclaration', a predicate method that returns true if a RecordDecl represents a forward declaration. - Added method 'getDefinitionDecl', a query method that returns a pointer to the RecordDecl that provides the actual definition of a struct/union. llvm-svn: 55642
-
Ted Kremenek authored
- Change constructor and create methods to accept a CXXRecordDecl* (RecordDecl*) instead of a ScopedDecl* for PrevDecl. This causes the type checking to be more tight and doesn't break any code. RecordDecl: - Don't use the NextDeclarator field in ScopedDecl to represent the previous declaration. This is a conflated use of the NextDeclarator field, which will be removed anyway when DeclGroups are fully implemented. - Instead, represent (a soon to be implemented) chain of RecordDecls using a NextDecl field. The last RecordDecl in the chain is always the 'defining' RecordDecl that owns the FieldDecls. The other RecordDecls in the chain are forward declarations. llvm-svn: 55640
-
- Sep 01, 2008
-
-
Nuno Lopes authored
llvm-svn: 55603
-
- Aug 30, 2008
-
-
Anders Carlsson authored
llvm-svn: 55572
-
Daniel Dunbar authored
- Change Obj-C runtime message API, drop the ObjCMessageExpr arg in favor of just result type and selector. Necessary so it can be reused in situations where we don't want to cons up an ObjCMessageExpr. - Update aggregate binary assignment to know about special property ref lvalues. - Add CodeGenFunction::EmitCallArg overload which takes an already emitted rvalue. Add CodeGenFunction::StoreComplexIntoAddr. Disabled logic in Sema for parsing Objective-C dot-syntax that accesses methods. This code does not search in the correct order and the AST node has no way of properly representing its results. Updated StmtDumper to print a bit more information about ObjCPropertyRefExprs. llvm-svn: 55561
-
- Aug 28, 2008
-
-
Steve Naroff authored
Parser support for blocks is almost complete...just need to add support for the __block() storage class qualifier. llvm-svn: 55495
-
Daniel Dunbar authored
with correct width. - PR2728. Also, fix PR2727 test case. llvm-svn: 55493
-
Daniel Dunbar authored
- PR2727. Also, fix warning in CodeGenTypes for new BlockPointer type. llvm-svn: 55479
-
Daniel Dunbar authored
- Added ASTContext::getObjCEncodingForPropertyDecl. llvm-svn: 55461
-
- Aug 27, 2008
-
-
Steve Naroff authored
This commit adds the declaration syntax (and associated type). llvm-svn: 55417
-
Daniel Dunbar authored
llvm-svn: 55406
-
Daniel Dunbar authored
ObjC{Category,Protocol}Decl. - No functionality change. llvm-svn: 55404
-
- Aug 26, 2008
-
-
Daniel Dunbar authored
Respect isReadOnly when generating synthesized method decls. llvm-svn: 55364
-
Daniel Dunbar authored
No (intended) functionality change. llvm-svn: 55362
-
Daniel Dunbar authored
Move implicit Obj-C param creation into ObjCMethodDecl. - Add ObjCMethodDecl::createImplicitParams. - Remove ObjCMethodDecl::set{Self,Cmd}Decl - Remove Sema::CreateImplicitParameter No (intended) functionality change. llvm-svn: 55357
-
Daniel Dunbar authored
- Change enum name to Kind. - Change enum constants to English strings. Also, fix getPropertyImplementation (which probably should be renamed) llvm-svn: 55354
-
Daniel Dunbar authored
llvm-svn: 55353
-
Daniel Dunbar authored
- Also, fix Parser to construct proper SetterName selector (should be lifted out of parser though). llvm-svn: 55352
-
- Aug 25, 2008
-
-
Anders Carlsson authored
llvm-svn: 55299
-
- Aug 23, 2008
-
-
Anders Carlsson authored
llvm-svn: 55255
-
Argyrios Kyrtzidis authored
llvm-svn: 55249
-
Anders Carlsson authored
llvm-svn: 55245
-
- Aug 22, 2008
-
-
Argyrios Kyrtzidis authored
-The Parser calls a new "ActOnCXXTypeConstructExpr" action. -Sema, depending on the type and expressions number: -If the type is a class, it will treat it as a class constructor. [TODO] -If there's only one expression (i.e. "int(0.5)" ), creates a new "CXXFunctionalCastExpr" Expr node -If there are no expressions (i.e "int()" ), creates a new "CXXZeroInitValueExpr" Expr node. llvm-svn: 55177
-
Eli Friedman authored
because nothing uses the merged types yet.) llvm-svn: 55161
-
Eli Friedman authored
llvm-svn: 55160
-
Eli Friedman authored
testing compatibility. This is necessary for some constructs, like merging redeclarations. Also, there are some ObjC changes to make sure that typesAreCompatible(a,b) == typesAreCompatible(b,a). I don't have any ObjC code beyond the testsuite, so please tell me if there are any cases where this doesn't behave as expected. llvm-svn: 55158
-
Eli Friedman authored
implement some things, like unary operators and casts, but it's enough to fix PR2703 as filed. llvm-svn: 55155
-
- Aug 20, 2008
-
-
Daniel Dunbar authored
- Drop MethodAttrs parameter to ObjCMethodDecl - Call ProcessDeclAttributeList for interface & method decls. llvm-svn: 55068
-
Ted Kremenek authored
This fixes an ownership issue where FieldDecls could be owned both by an ObjCInterfaceDecl and a RecordDecl. llvm-svn: 55037
-
- Aug 19, 2008
-
-
Argyrios Kyrtzidis authored
Add ExplicitCastExpr to replace the current CastExpr, and have ImplicitCastExpr and ExplicitCastExpr derive from a common base class (CastExpr): Expr -> CastExpr -> ExplicitCastExpr -> ImplicitCastExpr llvm-svn: 54955
-
- Aug 14, 2008
-
-
Steve Naroff authored
Fix ASTContext::getObjCEncodingForType() to limit the type info for structure bodies (mimics gcc's adhoc rules). This fixes <rdar://problem/6140902> clang ObjC rewriter: If a class contains a struct ivar with a lot of members, ... llvm-svn: 54777
-
Daniel Dunbar authored
getIntegerConstantExprValue where appropriate. llvm-svn: 54771
-