summaryrefslogtreecommitdiffstats
path: root/clang/AST/ASTContext.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Make a major restructuring of the clang tree: introduce a top-levelChris Lattner2008-03-151-1853/+0
| | | | | | | | | | lib dir and move all the libraries into it. This follows the main llvm tree, and allows the libraries to be built in parallel. The top level now enforces that all the libs are built before Driver, but we don't care what order the libs are built in. This speeds up parallel builds, particularly incremental ones. llvm-svn: 48402
* move the ASTContext argument to be first in the argument list of Chris Lattner2008-03-151-2/+2
| | | | | | all Create methods. llvm-svn: 48398
* start switching decls over to using an allocator controlled by ASTContext. Chris Lattner2008-03-151-3/+3
| | | | | | | | | | Right now only some ctors are switched over. I need to switch them all over so I can change the dtor over. This lets us experiment with region allocation and other things in the future. llvm-svn: 48390
* simplify all the type info accessors in TargeTInfo to return scalars,Chris Lattner2008-03-081-20/+27
| | | | | | which is simpler to use and provide. llvm-svn: 48051
* Fix a fixme by allowing pointers in different address spaces to haveChris Lattner2008-03-081-2/+8
| | | | | | different widths. Start simplifying TargetInfo accessor methods. llvm-svn: 48050
* remove the source location arguments to various target query methods.Chris Lattner2008-03-051-34/+31
| | | | llvm-svn: 47954
* Fix a little typo... per cfe-dev, this was apparently causing test Eli Friedman2008-02-251-1/+1
| | | | | | failures on OS X in some cases. (Thank you valgrind.) llvm-svn: 47568
* Alternate address spaces work:Chris Lattner2008-02-201-7/+18
| | | | | | | | | rename QualType::getQualifiers to getCVRQualifiers. Add some fixme's and clean up some code relevant to qualifiers. Change ASQualType to contain a Type* instead of a QualType. Any CVR qualifiers should be on the outer qual type. llvm-svn: 47398
* More bitfield improvements.Anders Carlsson2008-02-181-19/+53
| | | | llvm-svn: 47260
* Better handling of the aligned attribute.Anders Carlsson2008-02-161-3/+19
| | | | llvm-svn: 47216
* Make sizeof and __alignof work correctly with packed structs.Anders Carlsson2008-02-161-2/+5
| | | | llvm-svn: 47202
* Split out incomplete arrays from VariableArrayType into Eli Friedman2008-02-151-41/+44
| | | | | | | | | | IncompleteArrayType. This should make code dealing with both incomplete and variable length arrays much more readable, plus it allows properly making the distinction between isVariableArrayType() and isVariablyModifiedType(). The patch is a little big, but it's strightforward. so I don't think there should be any issues. llvm-svn: 47165
* Partial fix for struct compatibility; there's still something messy Eli Friedman2008-02-151-12/+4
| | | | | | going on with mixing scopes, though. llvm-svn: 47152
* Make typechecking for enum+int compatibility stricter.Eli Friedman2008-02-121-4/+8
| | | | llvm-svn: 47005
* Add wchar_t type to ASTContext. Will be needed for wide strings, since Eli Friedman2008-02-121-0/+9
| | | | | | they are of type wchar_t[]. llvm-svn: 47004
* Fix type compatibility between constant and variable arrays.Eli Friedman2008-02-121-0/+4
| | | | llvm-svn: 47003
* Fix the codegen of structs with flexible array members.Eli Friedman2008-02-061-4/+16
| | | | llvm-svn: 46806
* Be a bit stricter about array type compatibility.Eli Friedman2008-02-061-6/+10
| | | | llvm-svn: 46799
* Add experimental support for address space qualified types. Address spaceChristopher Lamb2008-02-041-3/+29
| | | | | | qualifiers use the __attribute__((address_space(id))) syntax. llvm-svn: 46691
* Abolish a bunch of Xcode inserted tabs.Steve Naroff2008-01-301-5/+5
| | | | llvm-svn: 46566
* Tighten up ASTContext::typesAreCompatible()...it needs to make sure the ↵Steve Naroff2008-01-291-0/+3
| | | | | | | | qualifiers match. The comment and C99 citation for this routine were correct...the code needed to conform to the comment/spec. This fixes the test added below. Tightening up this routine forced tweaks to Sema::CheckSubtractionOperands() and Sema::CheckCompareOperands(). For example, they both need to operate on the unqualified pointee... llvm-svn: 46522
* Fix bz1950. ASTContext::functionTypesAreCompatible() needs to operate on the ↵Steve Naroff2008-01-291-1/+4
| | | | | | unqualified parameter types (per C99 6.7.5.3p15). llvm-svn: 46472
* Problem with ObjC's type-encoding of nested structs causing infinit recursion.Fariborz Jahanian2008-01-221-10/+22
| | | | llvm-svn: 46260
* Fix ASTContext::typesAreCompatible when analyzing a function type with Chris Lattner2008-01-141-34/+42
| | | | | | | proto and function type without proto. It would never call 'functionTypesAreCompatible' because they have different type classes. llvm-svn: 45952
* Add a FIXME to commit r45784. Thanks mrs!Steve Naroff2008-01-091-1/+2
| | | | llvm-svn: 45790
* Fix ASTContext::typesAreCompatible to allow for int/enum compatibility (C99 ↵Steve Naroff2008-01-091-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
* Verify/add code to make sure types passed to interfaceTypesAreCompatibleFariborz Jahanian2008-01-071-2/+9
| | | | | | are canonical. Asst in interfaceTypesAreCompatible if they are not. llvm-svn: 45717
* Substituted all instances of the string "Objc" for "ObjC". This fixesTed Kremenek2008-01-071-133/+133
| | | | | | | some naming inconsistencies in the names of classes pertaining to Objective-C support in clang. llvm-svn: 45715
* Couple more uninitialized before use warning elimination.Fariborz Jahanian2008-01-031-2/+2
| | | | llvm-svn: 45547
* Remove cause of misc. "variable might be used uninitialized in this ↵Fariborz Jahanian2008-01-031-2/+2
| | | | | | function" warnings. llvm-svn: 45546
* Don't attribute in file headers anymore. See llvmdev for theChris Lattner2007-12-291-2/+2
| | | | | | discussion of this change. llvm-svn: 45410
* Fix OCUVector case in struct layout code.Christopher Lamb2007-12-291-1/+2
| | | | llvm-svn: 45396
* This patch implements some of the more obscure type-checking involvingFariborz Jahanian2007-12-211-26/+71
| | | | | | | 'id' quallified with protocols and static types which have categories and inheritance which implement these protocols. llvm-svn: 45294
* Patch to compare to objective-c static types where one or the otherFariborz Jahanian2007-12-211-1/+16
| | | | | | (but not both) may be a protocol qualified static type. llvm-svn: 45283
* More objective-c type analysis. This time involving objective typesFariborz Jahanian2007-12-211-4/+21
| | | | | | of conforming protocols (or not). llvm-svn: 45276
* More objective-c type checking. This time comparing objective-c known objects.Fariborz Jahanian2007-12-201-1/+13
| | | | llvm-svn: 45269
* Patch to do type-checking for objctive-c's object types.Fariborz Jahanian2007-12-201-6/+30
| | | | | | More is yet to come. llvm-svn: 45263
* fix some crazy indentationChris Lattner2007-12-191-34/+35
| | | | llvm-svn: 45210
* This patch concludes implementation of dynamic objective-c type qualified byFariborz Jahanian2007-12-191-5/+93
| | | | | | protocol list. llvm-svn: 45203
* Refactoring work. ObjcQualifiedIdType is now derived from 'Type'.Fariborz Jahanian2007-12-181-6/+16
| | | | llvm-svn: 45174
* Fixed a comment describing a functionFariborz Jahanian2007-12-171-1/+1
| | | | llvm-svn: 45125
* Patch to implemented objective-c's dynamic object pointer qualified withFariborz Jahanian2007-12-171-2/+43
| | | | | | the protocol list (id<P,...> types). llvm-svn: 45121
* Patch to make ObjcQualifiedInterfaceType inherit ObjcInterfaceTypeFariborz Jahanian2007-12-131-8/+5
| | | | llvm-svn: 45014
* TargetInfo no longer includes a reference to SourceManager.Ted Kremenek2007-12-121-11/+32
| | | | | | | | | | | | | | | Moved all clients of Diagnostics to use FullSourceLoc instead of SourceLocation. Added many utility methods to FullSourceLoc to provide shorthand for: FullLoc.getManager().someMethod(FullLoc.getLocation()); instead we have: FullLoc.someMethod(); Modified TextDiagnostics (and related classes) to use this short-hand. llvm-svn: 44957
* Encode enumeral types.Steve Naroff2007-12-121-1/+3
| | | | llvm-svn: 44956
* Unbreak -stats on cocoa.hChris Lattner2007-12-121-1/+6
| | | | llvm-svn: 44919
* Implemented type checking for pointer of objects of protocol-qualified types.Fariborz Jahanian2007-12-121-0/+30
| | | | | | | | Note that incompatible-protocol-qualified-types.m is currently failing. This is unrelated to this patch and Steve is looking at the general problem of not reporting incompitible pointer types in return stetement.. llvm-svn: 44897
* Patch to implement "Protocol" as a built-in type declared asFariborz Jahanian2007-12-071-7/+2
| | | | | | "@class Protocol;" llvm-svn: 44670
* Fix for testcase that assigns a dereferenced reference to a pointer. TheBill Wendling2007-12-031-3/+10
| | | | | | | standard says that we should adjust the "reference to T" type to "T" before analysis. llvm-svn: 44530
* Reverted changed to getTagDeclType() introduced in patch 44089:Ted Kremenek2007-11-261-8/+5
| | | | | | | | http://llvm.org/viewvc/llvm-project?view=rev&revision=44089 "Decl" once again can no longer be NULL, so the NULL checks are not needed. llvm-svn: 44336
OpenPOWER on IntegriCloud