| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
Migrated CFRefCount.cpp to use getBindings and BindingsAsString instead of
making assumptions about the Store (removed dependence on GRState::vb_iterator).
llvm-svn: 55522
|
| |
|
|
|
|
| |
Store.h)
llvm-svn: 55519
|
| |
|
|
|
|
| |
abstract representation of "memory regions" in the static analyzer.
llvm-svn: 55515
|
| |
|
|
|
|
|
|
| |
Their precise semantics will be implemented by a specific StoreManager.
Use function pointer to create the StoreManager in GRStateManager. This matches how we create ConstraintsManager.
llvm-svn: 55514
|
| |
|
|
|
|
| |
Parser support for blocks is almost complete...just need to add support for the __block() storage class qualifier.
llvm-svn: 55495
|
| |
|
|
| |
llvm-svn: 55494
|
| |
|
|
|
|
|
|
|
| |
with correct width.
- PR2728.
Also, fix PR2727 test case.
llvm-svn: 55493
|
| |
|
|
| |
llvm-svn: 55487
|
| |
|
|
|
|
|
|
| |
- PR2727.
Also, fix warning in CodeGenTypes for new BlockPointer type.
llvm-svn: 55479
|
| |
|
|
|
|
| |
blocks.
llvm-svn: 55468
|
| |
|
|
|
|
| |
- Added ASTContext::getObjCEncodingForPropertyDecl.
llvm-svn: 55461
|
| |
|
|
| |
llvm-svn: 55448
|
| |
|
|
|
|
| |
This commit adds the declaration syntax (and associated type).
llvm-svn: 55417
|
| |
|
|
| |
llvm-svn: 55412
|
| |
|
|
| |
llvm-svn: 55410
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- It is not clear that this is the right approach, but this is at
least consistent with how interfaces are handled.
- This means NeXT now emits the correct metadata for properties in
protocols.
- This currently introduces a spurious warning involving inherited
properties in protocols or categories; however, it also fixes some
situations where we were failing to emit a warning. I will scrub
this code tomorrow and fix this issue as well as number of other
missed warnings / error situations that appear to exist.
llvm-svn: 55407
|
| |
|
|
| |
llvm-svn: 55406
|
| |
|
|
|
|
| |
Also, fix category protocol list metadata.
llvm-svn: 55405
|
| |
|
|
|
|
|
| |
ObjC{Category,Protocol}Decl.
- No functionality change.
llvm-svn: 55404
|
| |
|
|
| |
llvm-svn: 55403
|
| |
|
|
| |
llvm-svn: 55402
|
| |
|
|
|
|
|
| |
- Was emitting duplicates of class properties instead of the category
properties.
llvm-svn: 55395
|
| |
|
|
| |
llvm-svn: 55392
|
| |
|
|
|
|
| |
Also, fix method lookup to not use LLVM module symbol table.
llvm-svn: 55390
|
| |
|
|
|
|
|
|
|
|
|
| |
- Only supports simple assignment and atomic semantics are ignored.
- Not quite usable yet because the methods do not actually get added
to the class metadata.
- Added ObjCPropertyDecl::getSetterKind (one of Assign, Copy, Retain).
- Rearrange CodeGenFunction so synthesis can reuse function prolog /
epilog code.
llvm-svn: 55365
|
| |
|
|
|
|
| |
Respect isReadOnly when generating synthesized method decls.
llvm-svn: 55364
|
| |
|
|
|
|
| |
No (intended) functionality change.
llvm-svn: 55362
|
| |
|
|
|
|
|
|
|
|
|
| |
Move implicit Obj-C param creation into ObjCMethodDecl.
- Add ObjCMethodDecl::createImplicitParams.
- Remove ObjCMethodDecl::set{Self,Cmd}Decl
- Remove Sema::CreateImplicitParameter
No (intended) functionality change.
llvm-svn: 55357
|
| |
|
|
|
|
|
|
|
|
| |
- Add ObjCMethodDecl::createImplicitParams.
- Remove ObjCMethodDecl::set{Self,Cmd}Decl
- Remove Sema::CreateImplicitParameter
No (intended) functionality change.
llvm-svn: 55356
|
| |
|
|
|
|
|
|
|
| |
- Change enum name to Kind.
- Change enum constants to English strings.
Also, fix getPropertyImplementation (which probably should be renamed)
llvm-svn: 55354
|
| |
|
|
| |
llvm-svn: 55353
|
| |
|
|
|
|
|
| |
- Also, fix Parser to construct proper SetterName selector (should be
lifted out of parser though).
llvm-svn: 55352
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
of RHSs to id type instead of void* if either has Objective-C object
type.
- This ensures the result can still be used in normal places an
object can be used, like a message send.
Add implicit conversions for ?: applied to qualified id types to
ensure that the RHSs are compatible.
- This prevents a codegen crash (creating invalid PHI nodes).
- Again, this relates to the fact that qualified id types have no
canonical types.
- Note that the implicit type casted to is incorrect, however this
doesn't currently cause problems because of the flexibility of the
id type.
Test cases for above.
llvm-svn: 55346
|
| |
|
|
|
|
|
| |
correctly. Not a regression, but made more obvious by my recent fix
which made function type compatibility checking a bit more strict.
llvm-svn: 55339
|
| |
|
|
|
|
|
|
|
|
| |
casting pointers to integers.
Eventually, we should check whether we can evaluate an expression
using Expr::tryEvaluate, and this codepath should be tightened to only
handle standard-compliant cases.
llvm-svn: 55331
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Add CodeGenFunction::EmitUnsupportedLValue
- Gives error and returns undef value.
Swap some asserts() over to using EmitUnsupportedLValue
- Rumor has it users (and even some developers) prefer carat
diagnostics to backtraces.
- Works better in Release-Asserts to boot.
llvm-svn: 55328
|
| |
|
|
|
|
|
| |
Added 'getExtent()' to StoreManager.
Implemented 'getExtent()' for BasicStoreManager.
llvm-svn: 55321
|
| |
|
|
| |
llvm-svn: 55316
|
| |
|
|
| |
llvm-svn: 55312
|
| |
|
|
|
|
|
|
|
| |
EmitScalarConversion().
- Important for allowing Obj-C void * to id<X> casts and so on.
- Not sure about this fix however, perhaps Type should understand
that id is effectively a pointer type.
llvm-svn: 55311
|
| |
|
|
|
|
| |
- Sema gives a perfectively nice error message on invalid constraints.
llvm-svn: 55310
|
| |
|
|
|
|
|
| |
- NeXT loads the super class at runtime; this required changing the
runtime interface to pass more information down.
llvm-svn: 55307
|
| |
|
|
| |
llvm-svn: 55304
|
| |
|
|
| |
llvm-svn: 55303
|
| |
|
|
|
|
|
|
|
|
|
| |
- This ensures that references to undefined classes cause link
errors.
- NOTE: This relies on platform specific asm directives currently,
this should be factored out.
Also, don't emit a SYMBOLS metadata entry if there are no symbols.
llvm-svn: 55302
|
| |
|
|
| |
llvm-svn: 55299
|
| |
|
|
| |
llvm-svn: 55298
|
| |
|
|
| |
llvm-svn: 55297
|
| |
|
|
| |
llvm-svn: 55287
|
| |
|
|
| |
llvm-svn: 55286
|