summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
...
* retain/release checker:Ted Kremenek2009-04-242-21/+182
| | | | | | | | | | | - Fix summary lookup for class methods to now use the (optional) ObjCInterfaceDecl associated with a message expression. This removes a long-standing FIXME. - Partial fix for <rdar://problem/6062730> by stop tracking objects that are passed to [NSObject performSelector]. These methods are often used for delegates, which the analyzer doesn't reason about well yet. llvm-svn: 69982
* Make CXXTemporaryObjectExpr inherit from CXXConstructExpr.Anders Carlsson2009-04-242-46/+8
| | | | llvm-svn: 69981
* Avoid issuing spurious errors as side-effect of diagnosingFariborz Jahanian2009-04-242-2/+21
| | | | | | application of sizeof on an interface. llvm-svn: 69980
* Minor refactoring. No change in functionality.Fariborz Jahanian2009-04-241-2/+1
| | | | llvm-svn: 69979
* Use cast_or_null instead of ternary operator (suggested by Doug).Steve Naroff2009-04-241-3/+1
| | | | llvm-svn: 69975
* Some code clean up of objc2's bitmap layout.Fariborz Jahanian2009-04-241-30/+28
| | | | llvm-svn: 69970
* Allow the next catoregory slot to be null.Steve Naroff2009-04-241-1/+3
| | | | llvm-svn: 69969
* fix rdar://6816766 - Crash with function-like macro test at end of directive.Chris Lattner2009-04-242-0/+8
| | | | llvm-svn: 69964
* simplification and speedupChris Lattner2009-04-241-1/+1
| | | | llvm-svn: 69963
* Fix assert.Anders Carlsson2009-04-241-2/+4
| | | | llvm-svn: 69961
* CXXTempVarDecls aren't looked up. Fixes tests.Anders Carlsson2009-04-241-0/+1
| | | | llvm-svn: 69960
* Add an ASTContext parameter to CXXTemporaryObjectExpr.Anders Carlsson2009-04-243-4/+6
| | | | llvm-svn: 69959
* Add a VarDecl parameter to the CXXTemporaryObjectExpr constructor. It's ↵Anders Carlsson2009-04-243-4/+11
| | | | | | unused for now, so no functionality change yet. Also, create CXXTempVarDecls to pass to the CXXTemporaryObjectExpr ctor. llvm-svn: 69957
* Create a CXXConstructExpr instead of a CXXTemporaryObjectExpr in ↵Anders Carlsson2009-04-242-7/+4
| | | | | | InitializeVarWithConstructor. llvm-svn: 69956
* Make sure that ObjCCompatibleAlias and ObjCImplementation decls are ↵Douglas Gregor2009-04-241-4/+4
| | | | | | considered NamedDecls llvm-svn: 69955
* Make the CXXConstructExpr public and add a StmtClass to it. No functionality ↵Anders Carlsson2009-04-242-7/+9
| | | | | | change. llvm-svn: 69954
* Move the CXXConstructExpr before the CXXTemporaryObjectExpr so that the ↵Anders Carlsson2009-04-241-47/+48
| | | | | | temporary object expr can inherit from the construct expr. No functionality change. llvm-svn: 69953
* Don't run dsymutil when making a fat executable direct source.Daniel Dunbar2009-04-242-1/+11
| | | | | | | | | | | | | | - Otherwise, we will end up with stray .dSYM files which don't get lipo'ed or removed. - Ideally we would run dsymutil on the result, but we don't have the infrastructure for that yet. Note that gcc doesn't handle this case either. - <rdar://problem/6809621> [driver] clang leaves .dSYM files lying around in tmp. llvm-svn: 69951
* Eliminate Sema::ObjCAliasDecls. This is based on Steve's fix, but alsoDouglas Gregor2009-04-244-25/+29
| | | | | | | updates name lookup so that we see through @compatibility_alias declarations to their underlying interfaces. llvm-svn: 69950
* Clang part of r69947. Reverting back 69574 as it is no longer needed.Sanjiv Gupta2009-04-242-15/+6
| | | | llvm-svn: 69949
* Add a test case for a somewhat obscure scenario.Daniel Dunbar2009-04-241-1/+18
| | | | llvm-svn: 69947
* Fix Objective-C crashesDouglas Gregor2009-04-241-3/+0
| | | | llvm-svn: 69945
* We don't accept this test anymore in a non-fragile ABI.Daniel Dunbar2009-04-241-1/+1
| | | | llvm-svn: 69944
* Fix rdar://6821047 - clang crashes on subscript of interface in 64-bit modeChris Lattner2009-04-246-33/+58
| | | | | | | | | | | | | | Several changes here: 1. We change Type::isIncompleteType to realize that forward declared interfaces are incomplete. This eliminate special case code for this from the sizeof path, and starts us rejecting P[4] when P is a pointer to an incomplete interface. 2. Explicitly reject P[4] when P points to an interface in non-fragile ABI mode. 3. Switch the sizeof(interface) diagnostic back to an error instead of a warning in non-fragile abi mode. llvm-svn: 69943
* Eliminate Sema::ObjCInterfaceDeclsDouglas Gregor2009-04-243-20/+2
| | | | llvm-svn: 69942
* Eliminate Sema::ObjCImplementations, relying instead on name lookup. What's ↵Douglas Gregor2009-04-2410-42/+82
| | | | | | | | | | | good for uniformity is good for PCH (or is it the other way around?). As part of this, make ObjCImplDecl inherit from NamedDecl (since ObjCImplementationDecls now need to have names so that they can be found). This brings ObjCImplDecl very, very close to ObjCContainerDecl; we may be able to merge them soon. llvm-svn: 69941
* Update checker build.Ted Kremenek2009-04-231-1/+1
| | | | llvm-svn: 69940
* Eliminate Sema::ObjCProtocols. Instead, we place ObjCProtocolDecls inDouglas Gregor2009-04-235-21/+32
| | | | | | | | | | | | their own namespace (IDNS_Protocol) and use the normal name-lookup routines to find them. Aside from the simplification this provides (one less DenseMap!), it means that protocols will be lazily deserialized from PCH files. Make the code size of the selector table block match the code size of the type and decl blocks. llvm-svn: 69939
* Call ld, not collect2.Daniel Dunbar2009-04-232-3/+3
| | | | | | - <rdar://problem/6517382> [driver] call ld directly llvm-svn: 69938
* Refactor common logic in getMethodSummary() and getClassMethodSummary(). NoTed Kremenek2009-04-231-30/+24
| | | | | | functionality change. llvm-svn: 69936
* PCH support for categories in Objective-C interfaces.Douglas Gregor2009-04-232-3/+3
| | | | llvm-svn: 69933
* PCH support for all of the predefined Objective-C types, such as id,Douglas Gregor2009-04-2310-55/+143
| | | | | | | | SEL, Class, Protocol, CFConstantString, and __objcFastEnumerationState. With this, we can now run the Objective-C methods and properties PCH tests. llvm-svn: 69932
* Further cleanups to isTrackedObjectType().Ted Kremenek2009-04-232-6/+19
| | | | llvm-svn: 69929
* Diagnose if an implementation implements a forward classFariborz Jahanian2009-04-233-2/+11
| | | | | | declaration (and avoid issuing bogus error later on). llvm-svn: 69928
* retain/release checker: Don't call isTrackedObject() with the canonical type.Ted Kremenek2009-04-233-11/+9
| | | | | | This was preventing the checker from tracking return objects referenced by 'id'. llvm-svn: 69922
* Temporarily remove expected warnings.Ted Kremenek2009-04-232-2/+2
| | | | llvm-svn: 69917
* retain/release checker: For class methods, only treat return values that areTed Kremenek2009-04-231-5/+13
| | | | | | object references as tracked objects. llvm-svn: 69915
* accept and ignore -WconversionChris Lattner2009-04-231-0/+1
| | | | llvm-svn: 69914
* Per discussions with Ken Ferry and Paul Marks (<rdar://problem/6815234>) greatlyTed Kremenek2009-04-233-13/+33
| | | | | | | | extend the number of objects tracked by the retain/release checker by assuming that all class and instance methods should follow Cocoa object "getter" and "alloc/new" conventions. llvm-svn: 69908
* Fix handling of C99 "extern inline" semantics when dealing withDouglas Gregor2009-04-237-11/+93
| | | | | | | multiple declarations of the function. Should fix PR3989 and <rdar://problem/6818429>. llvm-svn: 69905
* Handle corner case where clang-cc is invoked directly to compile ↵Devang Patel2009-04-233-8/+35
| | | | | | | | preprocessed source file without -main-file-name. In this case, CDDebugInfo is not able identify correct main source file becase SM.isFromMainFile() returns true for locations from header files as well as locations from main source file. This patch takes conservative approach by not emitting more then one compile unit with isMain bit set. llvm-svn: 69902
* Fix PR 4033: the analyzer shouldn't crash on computed gotos involving symbolicTed Kremenek2009-04-232-3/+14
| | | | | | target addresses. llvm-svn: 69900
* Remove @compatibility_alias regression.Steve Naroff2009-04-231-1/+2
| | | | llvm-svn: 69899
* BugReporter (extensive diagnostics): Recursively adjust the referred expressionTed Kremenek2009-04-231-12/+16
| | | | | | when popping location contexts. llvm-svn: 69898
* Fix rdar://6819438 - -Wmissing-noreturn not recognised by clang,Chris Lattner2009-04-231-0/+1
| | | | | | by accepting and ignoring it for now. llvm-svn: 69897
* Removed bunch of FIXMEs no longer needed.Fariborz Jahanian2009-04-231-8/+0
| | | | llvm-svn: 69896
* BugReporter (extensive diagnostics): Ignore parentheses when added control-flowTed Kremenek2009-04-231-0/+16
| | | | | | pieces for location contexts. llvm-svn: 69895
* More PushOnScopeChain() FIXME's.Steve Naroff2009-04-234-5/+11
| | | | llvm-svn: 69894
* Sema::ActOnStartClassInterface(): Use PushOnScopeChains().Steve Naroff2009-04-234-9/+11
| | | | | | This enables class recognition to work with PCH. I believe this means we can remove Sema::ObjCInterfaceDecls and it's usage within Sema::LookupName(). Will investigate. llvm-svn: 69891
* Add PCH read/write support for Objective-C Selectors.Steve Naroff2009-04-238-15/+184
| | | | | Note: This support is non-lazy. Once we get "Cocoa.h" humming, we can optimize this. llvm-svn: 69884
OpenPOWER on IntegriCloud