Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Change uses of std::cerr/std::cout to llvm::Lcerr/llvm::cout, and remove | Ted Kremenek | 2008-01-14 | 1 | -2/+1 | |
| | | | | | | | | #include<iostream>. Patch provided by Sam Bishop. llvm-svn: 45962 | |||||
* | Revert r45951, Chris says it violates the C99 spec. | Steve Naroff | 2008-01-14 | 1 | -30/+19 | |
| | | | | llvm-svn: 45961 | |||||
* | Fix ASTContext::typesAreCompatible when analyzing a function type with | Chris Lattner | 2008-01-14 | 1 | -34/+42 | |
| | | | | | | | proto and function type without proto. It would never call 'functionTypesAreCompatible' because they have different type classes. llvm-svn: 45952 | |||||
* | Rewrite Expr::isNullPointerConstant() to deal with multiple levels of ↵ | Steve Naroff | 2008-01-14 | 1 | -19/+29 | |
| | | | | | | | | explicit casts. Now, isNullPointerConstant() will return true for the following: "(void*)(double*)0" llvm-svn: 45951 | |||||
* | Fix the type of predefined identifiers like __func__. Patch by | Chris Lattner | 2008-01-12 | 1 | -0/+4 | |
| | | | | | | Eli Friedman! llvm-svn: 45906 | |||||
* | Add first pieces of support for parsing and representing | Chris Lattner | 2008-01-12 | 2 | -1/+23 | |
| | | | | | | extern "C" in C++ mode. Patch by Mike Stump! llvm-svn: 45904 | |||||
* | Renamed ProgramEdge to ProgramPoint and changed subclasses of ProgramEdge | Ted Kremenek | 2008-01-11 | 1 | -0/+15 | |
| | | | | | | | to have a much simpler, cleaner interpretation of what is a "location" in a function (as encoded by a CFG). llvm-svn: 45846 | |||||
* | - Teach Expr::isConstantExpr() about InitListExpr's (and offsetof, since I ↵ | Steve Naroff | 2008-01-10 | 1 | -3/+14 | |
| | | | | | | | | | | noticed it was missing). - Rename CheckInitializer() to CheckInitializerTypes(). - Removed the isStatic argument to CheckInitializerTypes() and all of it's subroutines. Checking for constant expressions is now done separately. - Added CheckForConstantInitializer(). llvm-svn: 45840 | |||||
* | Allow messaging expression as foreach's collection expression. | Fariborz Jahanian | 2008-01-10 | 1 | -1/+3 | |
| | | | | llvm-svn: 45793 | |||||
* | Add a FIXME to commit r45784. Thanks mrs! | Steve Naroff | 2008-01-09 | 1 | -1/+2 | |
| | | | | llvm-svn: 45790 | |||||
* | Fix ASTContext::typesAreCompatible to allow for int/enum compatibility (C99 ↵ | Steve Naroff | 2008-01-09 | 1 | -1/+9 | |
| | | | | | | | | 6.7.2.2p4). Fix Sema::MergeFunctionDecl to allow for function type compatibility (by using the predicate on ASTContext). Function types don't have to be identical to be compatible... llvm-svn: 45784 | |||||
* | Fix isIntegerConstantExpr to compare against zero for casts to bool instead of | Chris Lattner | 2008-01-09 | 1 | -1/+12 | |
| | | | | | | | | | | | | | | truncating. This allows us to compile: void foo() { static _Bool foo = 4; } into: @foo1 = internal global i8 1 instead of: @foo1 = internal global i8 4 llvm-svn: 45779 | |||||
* | Teach Expr::isConstantExpr() about CompoundLiterals. | Steve Naroff | 2008-01-09 | 1 | -0/+4 | |
| | | | | llvm-svn: 45764 | |||||
* | Added VISIBILITY_HIDDEN to classes/structs in anonymous namespace. | Ted Kremenek | 2008-01-08 | 1 | -6/+7 | |
| | | | | llvm-svn: 45749 | |||||
* | Verify/add code to make sure types passed to interfaceTypesAreCompatible | Fariborz Jahanian | 2008-01-07 | 1 | -2/+9 | |
| | | | | | | are canonical. Asst in interfaceTypesAreCompatible if they are not. llvm-svn: 45717 | |||||
* | Substituted all instances of the string "Objc" for "ObjC". This fixes | Ted Kremenek | 2008-01-07 | 9 | -324/+324 | |
| | | | | | | | some naming inconsistencies in the names of classes pertaining to Objective-C support in clang. llvm-svn: 45715 | |||||
* | Minor tweak to serialization of ObjcForCollectionStmt: the three owned pointers | Ted Kremenek | 2008-01-07 | 1 | -6/+5 | |
| | | | | | | | are now emitted in a batch, which reduces the metadata overhead in the serialized bitcode. llvm-svn: 45710 | |||||
* | Moved serialization code for ObjcForCollectionStmt to be in alphabetical order | Ted Kremenek | 2008-01-05 | 1 | -18/+18 | |
| | | | | | | with the rest of the Objective-C serialization code. llvm-svn: 45609 | |||||
* | Minor changes as suggested by Chris L. | Fariborz Jahanian | 2008-01-04 | 1 | -3/+3 | |
| | | | | llvm-svn: 45598 | |||||
* | Couple more uninitialized before use warning elimination. | Fariborz Jahanian | 2008-01-03 | 1 | -2/+2 | |
| | | | | llvm-svn: 45547 | |||||
* | Remove cause of misc. "variable might be used uninitialized in this ↵ | Fariborz Jahanian | 2008-01-03 | 1 | -2/+2 | |
| | | | | | | function" warnings. llvm-svn: 45546 | |||||
* | New declarations/defs for Objc2's foreach-statement. This is work in progress. | Fariborz Jahanian | 2008-01-02 | 3 | -0/+45 | |
| | | | | llvm-svn: 45511 | |||||
* | Fix PR1895: a crash on an ugly gcc extension. | Chris Lattner | 2008-01-02 | 1 | -2/+8 | |
| | | | | llvm-svn: 45505 | |||||
* | Compute the proper sourcerange for an CompoundLiteralExpr. | Chris Lattner | 2008-01-02 | 1 | -1/+3 | |
| | | | | llvm-svn: 45504 | |||||
* | remove attribution from makefiles. | Chris Lattner | 2007-12-29 | 1 | -2/+2 | |
| | | | | llvm-svn: 45412 | |||||
* | Don't attribute in file headers anymore. See llvmdev for the | Chris Lattner | 2007-12-29 | 17 | -34/+34 | |
| | | | | | | discussion of this change. llvm-svn: 45410 | |||||
* | Fix OCUVector case in struct layout code. | Christopher Lamb | 2007-12-29 | 1 | -1/+2 | |
| | | | | llvm-svn: 45396 | |||||
* | Add accessors + iterator interface. | Chris Lattner | 2007-12-28 | 1 | -0/+30 | |
| | | | | llvm-svn: 45378 | |||||
* | This patch implements some of the more obscure type-checking involving | Fariborz Jahanian | 2007-12-21 | 1 | -26/+71 | |
| | | | | | | | 'id' quallified with protocols and static types which have categories and inheritance which implement these protocols. llvm-svn: 45294 | |||||
* | Fixed successor order for CFG basic blocks when handling: x && y. The bug | Ted Kremenek | 2007-12-21 | 1 | -3/+12 | |
| | | | | | | | | | | | | | | | | | | is best explained by illustration: [ B2 ] 1: x T: [B2.1] && ... Predecessors (1): B4 Successors (2): B3 B1 Block "B3" should be the block where we evaluate "y" when "x" evaluates to true. Previously we had the successor list reversed. Now this behavior matches with how we handle other conditional branches. Thanks to Nuno Lopes for reporting this problem. llvm-svn: 45288 | |||||
* | Patch to compare to objective-c static types where one or the other | Fariborz Jahanian | 2007-12-21 | 1 | -1/+16 | |
| | | | | | | (but not both) may be a protocol qualified static type. llvm-svn: 45283 | |||||
* | More objective-c type analysis. This time involving objective types | Fariborz Jahanian | 2007-12-21 | 1 | -4/+21 | |
| | | | | | | of conforming protocols (or not). llvm-svn: 45276 | |||||
* | More objective-c type checking. This time comparing objective-c known objects. | Fariborz Jahanian | 2007-12-20 | 1 | -1/+13 | |
| | | | | llvm-svn: 45269 | |||||
* | Converted uses of scoped_ptr to OwningPtr. | Ted Kremenek | 2007-12-20 | 1 | -2/+2 | |
| | | | | llvm-svn: 45265 | |||||
* | Patch to do type-checking for objctive-c's object types. | Fariborz Jahanian | 2007-12-20 | 2 | -8/+32 | |
| | | | | | | More is yet to come. llvm-svn: 45263 | |||||
* | Various tweaks to the get/lookup instance/class method API's. | Steve Naroff | 2007-12-19 | 1 | -18/+18 | |
| | | | | llvm-svn: 45224 | |||||
* | Removed "SourceFile" from TranslationUnit. This same information will (soon) | Ted Kremenek | 2007-12-19 | 1 | -11/+1 | |
| | | | | | | | be available by querying the SourceManager within the ASTContext referenced by the TranslationUnit. llvm-svn: 45223 | |||||
* | Removed storing inode and device number in TranslationUnit. | Ted Kremenek | 2007-12-19 | 1 | -6/+15 | |
| | | | | | | | | | | Added "SourceFile" string to TranslationUnit to record corresponding source file. Updated serialization of TranslationUnits and logic in the driver to correctly pass the source file information to the serializer. llvm-svn: 45211 | |||||
* | fix some crazy indentation | Chris Lattner | 2007-12-19 | 1 | -34/+35 | |
| | | | | llvm-svn: 45210 | |||||
* | This patch concludes implementation of dynamic objective-c type qualified by | Fariborz Jahanian | 2007-12-19 | 1 | -5/+93 | |
| | | | | | | protocol list. llvm-svn: 45203 | |||||
* | Moved ReadBitcodeFile and EmitBitcodeFile out of TranslationUnit and made them | Ted Kremenek | 2007-12-18 | 1 | -5/+5 | |
| | | | | | | | the standalone functions ReadASTBitcodeFile and EmitASTBitcodeFile respectively. llvm-svn: 45180 | |||||
* | Fixed broken includes introduced by recent (incomplete) patch to | Ted Kremenek | 2007-12-18 | 1 | -2/+1 | |
| | | | | | | TranslationUnit. llvm-svn: 45177 | |||||
* | Moved TranslationUnit.h to include path. | Ted Kremenek | 2007-12-18 | 1 | -82/+0 | |
| | | | | llvm-svn: 45176 | |||||
* | Moved TranslationUnit from Driver to AST library. | Ted Kremenek | 2007-12-18 | 2 | -0/+311 | |
| | | | | llvm-svn: 45175 | |||||
* | Refactoring work. ObjcQualifiedIdType is now derived from 'Type'. | Fariborz Jahanian | 2007-12-18 | 2 | -7/+18 | |
| | | | | llvm-svn: 45174 | |||||
* | remove the loc argument to Type::isConstantSizeType, which isn't useful. | Chris Lattner | 2007-12-18 | 1 | -10/+6 | |
| | | | | llvm-svn: 45155 | |||||
* | Fix the location we emit the "not a constant" error for this: | Chris Lattner | 2007-12-18 | 1 | -4/+12 | |
| | | | | | | | | | | | int foo() { typedef int x[foo()]; static int y = sizeof(x); } previously we'd emit it on the typedef, which made not sense at all. llvm-svn: 45154 | |||||
* | Fix PR1863: an assertion due to not setting a location on return from | Chris Lattner | 2007-12-18 | 1 | -2/+6 | |
| | | | | | | this method. llvm-svn: 45153 | |||||
* | Fixed a comment describing a function | Fariborz Jahanian | 2007-12-17 | 1 | -1/+1 | |
| | | | | llvm-svn: 45125 | |||||
* | Patch to implemented objective-c's dynamic object pointer qualified with | Fariborz Jahanian | 2007-12-17 | 3 | -3/+71 | |
| | | | | | | the protocol list (id<P,...> types). llvm-svn: 45121 |