- Mar 01, 2009
-
-
rdar://problem/6248764Steve Naroff authored
Downgrade an error to a warning (for GCC compatibility). llvm-svn: 65779
-
Douglas Gregor authored
llvm-svn: 65777
-
rdar://problem/6619539Steve Naroff authored
Fix <rdar://problem/6619539> incompatible pointer types sending 'XCElementSpacer *', expected 'XCElement *' (not handling protocol signatures correctly?). - Reworked ASTContext::canAssignObjCInterfaces(). - Added ObjCProtocolDecl::lookupProtocolNamed(). llvm-svn: 65773
-
Ted Kremenek authored
llvm-svn: 65764
-
Ted Kremenek authored
llvm-svn: 65763
-
Daniel Dunbar authored
llvm-svn: 65762
-
Daniel Dunbar authored
exception typeinfo metadata, and a few other EH related types/functions. - No functionality change. llvm-svn: 65761
-
Daniel Dunbar authored
- No functionality change. llvm-svn: 65760
-
Daniel Dunbar authored
llvm-svn: 65759
-
Anders Carlsson authored
llvm-svn: 65753
-
Anders Carlsson authored
llvm-svn: 65751
-
Anders Carlsson authored
llvm-svn: 65749
-
Anders Carlsson authored
llvm-svn: 65746
-
Chris Lattner authored
"This patch uses the new ObjCImplDecl class to merge Sema::ImplMethodsVsClassMethods and Sema::ImplCategoryMethodsVsIntfMethods methods. And now, when clang check a class implementation to find unimplemented methods, it also checks all methods from the class extensions (unnamed categories). There is also a test case to check this warning. This patch contains also a minor update for ObjCImplDecl . getNameAsCString and getNameAsString now returns an empty string instead of crashing for unnamed categories." Patch by Jean-Daniel Dupas! llvm-svn: 65744
-
Anders Carlsson authored
llvm-svn: 65737
-
- Feb 28, 2009
-
-
Anders Carlsson authored
Fix invalid VLAs/VMs in Sema::ActOnVariableDeclarator, so that the variable will have the right type by the time the initializer is checked. This ensures that code like int a[(int)(1.0 / 1.0) = { 1 } will work. Eli, please review. llvm-svn: 65725
-
Steve Naroff authored
llvm-svn: 65718
-
Ted Kremenek authored
llvm-svn: 65717
-
Fariborz Jahanian authored
message to 'super' in a class method declared in cateogy (darwin specific). llvm-svn: 65709
-
Chris Lattner authored
notice because it was a negative test with a fix suggested by Jean-Daniel Dupas. Convert the test from a negative to a positive test to catch stuff like this. llvm-svn: 65708
-
Chris Lattner authored
llvm-svn: 65707
-
Chris Lattner authored
Niklas Larsson! llvm-svn: 65706
-
-
Chris Lattner authored
/// 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
-
Chris Lattner authored
llvm-svn: 65701
-
Chris Lattner authored
copies with memcpy instead of memmove. This matches what GCC does and if it causes a problem with a particular libc we can always fix it with a target hook. llvm-svn: 65699
-
Anders Carlsson authored
TargetInfo::validateAsmConstraint now takes a reference to the full constraints string. This will make it possible to support multi-character constraints. No functionality change (for now). llvm-svn: 65696
-
Steve Naroff authored
llvm-svn: 65695
-
rdar://problem/6451399Steve Naroff authored
- Move the 'LabelMap' from Sema to Scope. To avoid layering problems, the second element is now a 'StmtTy *', which makes the LabelMap a bit more verbose to deal with. - Add 'ActiveScope' to Sema. Managed by ActOnStartOfFunctionDef(), ObjCActOnStartOfMethodDef(), ActOnBlockStmtExpr(). - Changed ActOnLabelStmt(), ActOnGotoStmt(), ActOnAddrLabel(), and ActOnFinishFunctionBody() to use the new ActiveScope. - Added FIXME to workaround in ActOnFinishFunctionBody() (for dealing with C++ nested functions). llvm-svn: 65694
-
Mike Stump authored
llvm-svn: 65688
-
Eli Friedman authored
llvm-svn: 65680
-
Eli Friedman authored
As far as I know, this catches all cases of jumping into the scope of a variable with a variably modified type (excluding statement expressions) in C. This is missing some stuff we probably want to check (other kinds of variably modified declarations, statement expressions, indirect gotos/addresses of labels in a scope, ObjC @try/@finally, cleanup attribute), the diagnostics aren't very good, and it's not particularly efficient, but it's a decent start. This patch is a slightly modified version of the patch I attached to PR3259, and it fixes that bug. I was sort of planning on improving it, but I think it's okay as-is, especially since it looks like CodeGen doesn't have any use for this sort of data structure. The only significant change I can think of from the version I attached to PR3259 is that this version skips running the checking code when a function doesn't contain any labels. This patch doesn't cover case statements, which also need similar checking; I'm not sure how we should deal with that. Extending the goto checking to also check case statements wouldn't be too hard; it's just a matter of keeping track of the scope of the closest switch and checking that the scope of every case is the same as the scope of the switch. That said, it would likely be a performance hit to run this check on every function (it's an extra pass over the entire function), so we probably want some other solution. llvm-svn: 65678
-
Eli Friedman authored
integer __real__ and __imag__. Not sure how I missed this. llvm-svn: 65677
-
Douglas Gregor authored
llvm-svn: 65671
-
Douglas Gregor authored
llvm-svn: 65669
-
Douglas Gregor authored
llvm-svn: 65668
-
Fariborz Jahanian authored
natural alignment. Otherwise, the excess hole confuses the objc2 runtime (this is darwin specific). llvm-svn: 65666
-
Douglas Gregor authored
array types. Semantic checking for the construction of these types has been factored out of GetTypeForDeclarator and into separate subroutines (BuildPointerType, BuildReferenceType, BuildArrayType). We'll be doing the same thing for all other types (and declarations and expressions). As part of this, moved the type-instantiation functions into a class in an anonymous namespace. llvm-svn: 65663
-
Eli Friedman authored
llvm-svn: 65659
-
Eli Friedman authored
behavior change. llvm-svn: 65658
-