- Aug 22, 2008
-
-
Anders Carlsson authored
llvm-svn: 55166
-
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
-
- Aug 20, 2008
-
-
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 17, 2008
-
-
Chris Lattner authored
llvm-svn: 54874
-
- Aug 11, 2008
-
-
Daniel Dunbar authored
- Kill unnecessary #includes in .cpp files. This is an automatic sweep so some things removed are actually used, but happen to be included by a previous header. I tried to get rid of the obvious examples and this was the easiest way to trim the #includes in one fell swoop. - We now return to regularly scheduled development. llvm-svn: 54632
-
Daniel Dunbar authored
- Drop {Decl.h,DeclObjC.h,IdentifierTable.h} from Expr.h - Moved Sema::getCurMethodDecl() out of line (dependent on ObjCMethodDecl via dyn_cast). llvm-svn: 54629
-
Daniel Dunbar authored
- Drop Diagnostic.h from DeclSpec.h, move utility Diag methods into implementation .cpp llvm-svn: 54626
-
- Aug 10, 2008
-
-
Steve Naroff authored
Cleanup from yesterday...make isTentativeDefinition() a static helper function (no need for it to be part of the Sema API). llvm-svn: 54613
-
Steve Naroff authored
Sema::CheckForFileScopedRedefinitions(): Make sure tentative decls of incomplete array types are completed (and diagnosed properly). llvm-svn: 54612
-
Chris Lattner authored
llvm-svn: 54605
-
- Aug 09, 2008
-
-
Steve Naroff authored
Fix Sema::MergeVarDecl() to better handle type compatibility. The previous code was trying to handle arrays specially (which didn't work for pointers to array). Removed local helper function areEquivalentArrayTypes(), replacing it's use with the more general ASTContext::typesAreCompatible() predicate. Even though the test case this fixes is in "tentative-decls.c", this bug didn't have anything to do with our handling of tentative definitions (which is what I first expected). In any event, this is a tricky area of the spec. llvm-svn: 54583
-
Argyrios Kyrtzidis authored
at which point the C++ struct/class/union is fully parsed. llvm-svn: 54569
-
- Aug 08, 2008
-
-
Steve Naroff authored
- Move checking from MergeVarDecl->FinializeDeclaratorGroup. Since MergeVarDecl is called before the initializer is attacted, it can't be done there (this removes a long standing FIXME). - Add Sema::isTentativeDefinition() and Sema::CheckForFileScopedRedefinitions(). - Remove FIXME's and touch-up test case. Still some more work to do (forthcoming)... llvm-svn: 54533
-
- Aug 07, 2008
-
-
Steve Naroff authored
Fixes <rdar://problem/6093889> Nested enum redefinition crashes sema. llvm-svn: 54463
-
- Aug 06, 2008
-
-
Daniel Dunbar authored
scimark2 on Darwin. - Added Sema support for asm-label on variables, which I forgot before. - Update CodeGen to use GlobalDeclMap to determine if static Decls require emission (instead of LLVM module name lookup). Important since the Decl name and the LLVM module name can differ. - <rdar://problem/6116729> llvm-svn: 54388
-
- Aug 05, 2008
-
-
Daniel Dunbar authored
ActOnDeclarator. llvm-svn: 54353
-
Daniel Dunbar authored
- ActOnDeclarator now takes an additional parameter which is the AsmLabel if used. Its unfortunate that this bubbles up this high, but we cannot just lump it in as an attribute without mistakenly *accepting* it as an attribute. - The actual asm-label itself is, however, encoded as an AsmLabelAttr on the FunctionDecl. - Slightly improved parser error recovery on malformed asm-labels. - CodeGen support still missing... llvm-svn: 54339
-
- Aug 04, 2008
-
-
Chris Lattner authored
Finally fix PR2189. This makes a fairly invasive but important change to move getAsArrayType into ASTContext instead of being a method on type. This is required because getAsArrayType(const AT), where AT is a typedef for "int[10]" needs to return ArrayType(const int, 10). Fixing this greatly simplifies getArrayDecayedType, which is a good sign. llvm-svn: 54317
-
- Aug 01, 2008
-
-
Argyrios Kyrtzidis authored
No functionality change. llvm-svn: 54265
-
- Jul 27, 2008
-
-
Chris Lattner authored
ASTContext::getCanonicalType instead (PR2189) llvm-svn: 54105
-
- Jul 25, 2008
-
-
Chris Lattner authored
even if in a system header etc. rdar://6079937 llvm-svn: 54038
-
Steve Naroff authored
llvm-svn: 54032
-
- Jul 23, 2008
-
-
Ted Kremenek authored
When constructing an ObjCIvarDecl object in Sema, provide its visibility up front instead of setting it afterwards. This change also fixes a subtle bug where the access control of an ivar would be initialized to garbage if we didn't have an explicit visibility specifier (e.g., @private). llvm-svn: 53955
-
- Jul 22, 2008
-
-
Chris Lattner authored
of a specific smallvector size. Fix protocol lists to pass down proper location info, so we get diagnostics like this: t.m:3:35: error: cannot find protocol definition for 'NSCopying', referenced by 'NSWhatever' @interface NSWhatever : NSObject <NSCopying> ^ instead of this: t.m:3:44: error: cannot find protocol definition for 'NSCopying', referenced by 'NSWhatever' @interface NSWhatever : NSObject <NSCopying> ^ Add a new IdentifierLocPair typedef which is just a pair<IdentifierInfo*, SourceLocation> llvm-svn: 53883
-
- Jul 17, 2008
-
-
Argyrios Kyrtzidis authored
Unify ctx_iterator/ctx_begin()/ctx_end() and iterator/begin()/end() so that a single iterator type is used for both traversing decls of the same declaration context *and* of the parent declaration contexts, depending on the value of the bool parameter 'LookInParentCtx' that is passed to IdentifierResolver::begin(). llvm-svn: 53724
-
- Jul 16, 2008
-
-
Argyrios Kyrtzidis authored
When in C++, make EnumConstant names hide tag names in the same scope, instead of colliding with them. llvm-svn: 53702
-
Steve Naroff authored
- Make sure ObjCIvarDecl propagates the bitfield width. - RewriteObjC::SynthesizeIvarOffsetComputation(): Avoid using the __OFFSETOF__ mumbo jumbo for bitfields (since it isn't legal C). This fixes <rdar://problem/5986079> clang ObjC rewriter: bitfields and ivar access don't mix. llvm-svn: 53694
-
Argyrios Kyrtzidis authored
When checking for name collision between a tag and a previously defined namespace, the collision occured even when the tag was in a different nested scope. Fix it by taking into account the scope when checking for namespace-tag name collisions. llvm-svn: 53667
-
- Jul 11, 2008
-
-
Chris Lattner authored
llvm-svn: 53467
-
- Jul 09, 2008
-
-
Chris Lattner authored
llvm-svn: 53328
-
- Jul 07, 2008
-
-
Nuno Lopes authored
also fix the correspondent test (it was expecting more errors than it should. please confirm my fix is correct (at least gcc agrees with me) llvm-svn: 53174
-
- Jul 03, 2008
-
-
Anders Carlsson authored
llvm-svn: 53074
-
Chris Lattner authored
by filling in the body of a union with enum constants. llvm-svn: 53069
-
- Jul 01, 2008
-
-
Argyrios Kyrtzidis authored
llvm-svn: 52956
-
- Jun 29, 2008
-
-
Chris Lattner authored
the implementation of ProcessDeclAttributes. llvm-svn: 52875
-
Chris Lattner authored
llvm-svn: 52874
-
- Jun 28, 2008
-
-
Argyrios Kyrtzidis authored
Replace CurFunctionDecl and CurMethodDecl with methods getCurFunctionDecl() and getCurMethodDecl() that return the appropriate Decl through CurContext. llvm-svn: 52852
-
- Jun 26, 2008
-
-
Chris Lattner authored
llvm-svn: 52792
-
Chris Lattner authored
cases where mutation can introduce bugs. Propagate around 'const'. llvm-svn: 52772
-