summaryrefslogtreecommitdiffstats
path: root/clang/clang.xcodeproj
Commit message (Collapse)AuthorAgeFilesLines
...
* Added DeclSerialization.cpp to XCode project.Ted Kremenek2007-10-251-0/+4
| | | | llvm-svn: 43362
* Refactored several meta data for reusability.Fariborz Jahanian2007-10-251-0/+1
| | | | | | | Changed the entire rewrite of metadata to write to std::string object instead of stdout. llvm-svn: 43360
* Convert one type of metadata to use std::string instead ofChris Lattner2007-10-251-1/+0
| | | | | | printf as an example. llvm-svn: 43346
* Added SourceLocation.cpp to XCode project.Ted Kremenek2007-10-251-0/+5
| | | | llvm-svn: 43344
* Add a new ChooseExpr::isConditionTrue method to unifyChris Lattner2007-10-251-1/+0
| | | | | | some code. llvm-svn: 43322
* Refactord instance and class metadata emission. Refactored protocols ↵Fariborz Jahanian2007-10-241-0/+1
| | | | | | | | metadata emission. Implemented emission of category metadata, llvm-svn: 43308
* Add some plumbing to rewrite message expressions (still under construction).Steve Naroff2007-10-231-2/+1
| | | | llvm-svn: 43274
* - Add rewrite rule for @class.Steve Naroff2007-10-231-1/+1
| | | | | | | - Add setter/getter to ObjcClassDecl. - Predefined key runtime functions. llvm-svn: 43257
* This patch generates protocol metadata and all its sub-metadata.Fariborz Jahanian2007-10-221-0/+1
| | | | llvm-svn: 43233
* Fix the previous (short lived:-) FIXME.Steve Naroff2007-10-181-1/+0
| | | | | | | | | | | | | | | | | I didn't realize that GCC considers this a hard error (I thought it was built-in). Since it's not, we should simply emit an error. [dylan:~/llvm/tools/clang] admin% cc -c trivial.m trivial.m:6: error: cannot find interface declaration for 'NSConstantString' [administrators-powerbook59:~/llvm/tools/clang] admin% ../../Debug/bin/clang trivial.m trivial.m:6:16: error: cannot find interface declaration for 'NSConstantString' NSString *s = @"123"; ^ 1 diagnostic generated. llvm-svn: 43157
* Added StmtIterator.cpp and StmtIterator.h to the XCode project.Ted Kremenek2007-10-181-0/+7
| | | | llvm-svn: 43139
* Fix the following bug...Steve Naroff2007-10-181-1/+0
| | | | | | | | | | | | | | | | | unsigned char asso_values[] = { 34 }; int legal2() { return asso_values[0]; } The code that creates the new constant array type was operating on the original type. As a result, the constant type being generated was "unsigned char [1][]" (which is wrong). The fix is to operate on the element type - in this case, the correct type is "unsigned char [1]" I added this case to array-init.c, which clearly didn't catch this bogosity... llvm-svn: 43112
* Added Driver/SerializationTest.cpp to the XCode project.Ted Kremenek2007-10-161-0/+4
| | | | llvm-svn: 43054
* Fix location processing of @selector: the range should include the @ sign.Fariborz Jahanian2007-10-161-0/+1
| | | | llvm-svn: 43051
* Add a new Rewriter::getRangeSize method.Chris Lattner2007-10-161-1/+0
| | | | | | | | Rename SourceRange::Begin()/End() to getBegin()/getEnd() for consistency with other code. Start building the rewriter towards handling @encode. llvm-svn: 43047
* Patch to diagnose duplicate method implementations.Fariborz Jahanian2007-10-161-1/+1
| | | | llvm-svn: 43046
* Push the rewriter forward a bit more. Now it rewritesChris Lattner2007-10-161-1/+1
| | | | | | #import to #include's as a test. llvm-svn: 43041
* Patch to implement AST generation for objective-c's @selector expression.Fariborz Jahanian2007-10-161-0/+1
| | | | llvm-svn: 43038
* Bad cast...need to use dyn_cast_or_null. Also changed ↵Steve Naroff2007-10-161-1/+0
| | | | | | Sema::InitBuiltinVaListType (which had the same bug). llvm-svn: 43023
* Patch to parse @selector expressions.Fariborz Jahanian2007-10-151-0/+1
| | | | llvm-svn: 43022
* Move type compatibility predicates from Type to ASTContext. In addition, the ↵Steve Naroff2007-10-151-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | predicates are now instance methods (they were previously static class methods on Type). This allowed me to fix the following hack from this weekend... // FIXME: Devise a way to do this without using strcmp. // Would like to say..."return getAsStructureType() == IdStructType;", but // we don't have a pointer to ASTContext. bool Type::isObjcIdType() const { if (const RecordType *RT = getAsStructureType()) return !strcmp(RT->getDecl()->getName(), "objc_object"); return false; } ...which is now... bool isObjcIdType(QualType T) const { return T->getAsStructureType() == IdStructType; } Side notes: - I had to remove a convenience function from the TypesCompatibleExpr class. int typesAreCompatible() const {return Type::typesAreCompatible(Type1,Type2);} Which required a couple clients get a little more verbose... - Result = TCE->typesAreCompatible(); + Result = Ctx.typesAreCompatible(TCE->getArgType1(), TCE->getArgType2()); Overall, I think this change also makes sense for a couple reasons... 1) Since ASTContext vends types, it makes sense for the type compatibility API to be there. 2) This allows the type compatibility predeciates to refer to data not strictly present in the AST (which I have found problematic on several occasions). llvm-svn: 43009
* Add support for Pascal strings.Anders Carlsson2007-10-151-0/+1
| | | | llvm-svn: 42974
* Woo, tab deletion now works. Next lets see if we can Chris Lattner2007-10-131-1/+0
| | | | | | insert stuff. llvm-svn: 42941
* Check and diagnose that objective-c objects may not be statically allocated.Fariborz Jahanian2007-10-121-0/+1
| | | | llvm-svn: 42936
* Replace one FIXME with another. We handle protocols just fine now. The ObjC ↵Steve Naroff2007-10-121-1/+0
| | | | | | decl will only be 0 when we have an error on the ObjC decl. I would prefer we pass in a decl that is marked as invalid. I don't think this is critical to fix now, however I'd like us to be consistent. There are currently many places that don't mark the decl as invalid (which need to be fixed)... llvm-svn: 42923
* Fixed a bug whereby, struct tag name matches a typedef/objc-class nameFariborz Jahanian2007-10-121-0/+1
| | | | | | and hid them. llvm-svn: 42915
* add RewriterTest.cpp to xcode project.Chris Lattner2007-10-111-1/+4
| | | | llvm-svn: 42863
* Patch to create protocol conforming class types.Fariborz Jahanian2007-10-111-0/+1
| | | | llvm-svn: 42856
* Refinements to Sema::GetObjcIdType()...Steve Naroff2007-10-101-1/+0
| | | | | | | | | - Cache the typedef, not the type (avoids importing AST/Type.h). - Emit an error if "id" cannot be found. - Comment the routine and add a FIXME to reconsider how we emulate GCC's new fangled behavior. This isn't a priority for now, since almost no code depends on having "id" built-in. - Add a test. llvm-svn: 42845
* Emit a warning when the body of an if block is a NullStmt.Anders Carlsson2007-10-101-0/+1
| | | | llvm-svn: 42840
* resolve a fixme, by moving __builtin_va_list to a more logicalChris Lattner2007-10-101-1/+1
| | | | | | place and making it correctly parameterized on the target. llvm-svn: 42830
* Make sure methods with no return type default to "id".Steve Naroff2007-10-091-2/+1
| | | | | | | | | | This fixes a crasher in Sema::MatchTwoMethodDeclarations(), identified by selector-overload.m (just added). Added Action::ActOnTranslationUnitScope() and renamed Action::PopScope to ActOnPopScope. Added a Translation Unit Scope instance variable to Sema (will be very useful to ObjC-related actions, since ObjC declarations are always file-scoped). llvm-svn: 42817
* Remove addition of protocol names to declaration scopes, use a separateFariborz Jahanian2007-10-091-0/+1
| | | | | | | DenseMap to keep track of such declarations and derive ObjcProtocolDecl directyly from NamedScope. llvm-svn: 42801
* switch more code to use Token::is/isNot where possible.Chris Lattner2007-10-091-3/+3
| | | | llvm-svn: 42797
* rename some "Parse" actions to "ActOn". Move code around inChris Lattner2007-10-091-1/+0
| | | | | | | | ParseFunctionDefinition so that ActOnFunctionDefBody is always called if ActOnStartOfFunctionDef is called. This fixes a crash reported by Nuno Lopes. llvm-svn: 42793
* Added a new class for Interfaces qualified by protocol list.Fariborz Jahanian2007-10-081-0/+1
| | | | | | | Protocols are now sorted and made unique in the list. Enhanced pretty printer for @interface (So, I can see the protocol list). llvm-svn: 42776
* Removed unused instance variable from FieldDecl.Steve Naroff2007-10-081-1/+1
| | | | llvm-svn: 42773
* Move identifierTable.h to the right folder.Chris Lattner2007-10-081-2/+2
| | | | llvm-svn: 42770
* Convert Selector Maps/Sets to use stronger typing (now that we have ↵Steve Naroff2007-10-081-2/+1
| | | | | | DenseMapInfo in IdentifierTable.h). llvm-svn: 42767
* Removed unnecessary base class from some of objective-c classes:Fariborz Jahanian2007-10-081-0/+1
| | | | | | | ObjcProtocolDecl is now derived from ScopedDecl. ObjcForwardProtocolDecl from Decl. ObjcImplementationDecl fom NamedDecl. llvm-svn: 42756
* move IdentifierTable.h from liblex to libbasic.Chris Lattner2007-10-071-8/+8
| | | | llvm-svn: 42730
* Rename ASTStreamers.* -> ASTConsumers.*Chris Lattner2007-10-071-8/+8
| | | | llvm-svn: 42718
* speed up clang startup time by about 23% by avoiding lots of Chris Lattner2007-10-061-1/+0
| | | | | | stringmap operations when there are no secondary targets. llvm-svn: 42688
* Modifications to XCode project:Ted Kremenek2007-10-051-4/+6
| | | | | | | | - Added include/Analysis/ExprDeclBitVector.h - Added include/Analysis/ProgramEdge.h - Removed include/Analysis/Visitors/DataflowStmtVisitor.h llvm-svn: 42663
* This is the first patch toward supporting protocol conformingFariborz Jahanian2007-10-051-1/+2
| | | | | | | objective-c types. It also removes use of Scope* parameter in getObjCProtocolDecl. llvm-svn: 42649
* Layering refinements for selectors (suggested by Chris). Specifics...Steve Naroff2007-10-051-1/+0
| | | | | | | | | | | - Add SelectorTable, which enables us to remove MultiKeywordSelector from the public header. - Remove FoldingSet from IdentifierInfo.h and Preprocessor.h. - Remove Parser::ObjcGetUnarySelector and Parser::ObjcGetKeywordSelector, they are subsumed by SelectorTable. - Add MultiKeywordSelector to IdentifierInfo.cpp. - Move a bunch of selector related methods from ParseObjC.cpp to IdentifierInfo.cpp. - Added some comments. llvm-svn: 42643
* Patch for 1) Checking for duplicate methods decls in intterface and category.Fariborz Jahanian2007-10-051-2/+2
| | | | | | 2) Use of the new DenseSet<t> abstractions instead of DenseMap<t,char>. llvm-svn: 42641
* More tab removal activity.Fariborz Jahanian2007-10-041-0/+1
| | | | llvm-svn: 42608
* minor cleanups, make code more defensive, less branchy in Selector ctor.Chris Lattner2007-10-041-1/+0
| | | | llvm-svn: 42603
* Fixed all my recent test cases to have the RUN command andFariborz Jahanian2007-10-041-0/+1
| | | | | | fixed consequence of these changes in clang. llvm-svn: 42600
OpenPOWER on IntegriCloud