]>
granicus.if.org Git - clang/log
Daniel Dunbar [Sat, 30 Aug 2008 02:06:22 +0000 (02:06 +0000)]
Add newline at end of file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55559
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 29 Aug 2008 21:03:27 +0000 (21:03 +0000)]
Improve ccc:
- Support environment variable CCC_LANGUAGES to control which
languages clang is invoked on. If unset clang is invoked for all
languages, otherwise CCC_LANGUAGES should be a comma separated list
of the languages (as accepted by -x) for which clang should be
invoked. Useful for only building C and Objective-C parts of a
project with clang, for example.
- Add environment variable CCC_FALLBACK. If set and non-empty then
ccc will try and compile using the regular compiler if compilation
with clang fails.
- A few other tweaks to add options, flush stdout, recognize .mm as
objective-c++, and infer languages for compile+link style
invocations.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55547
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 29 Aug 2008 17:28:43 +0000 (17:28 +0000)]
Downgrade a number of FIXME asserts to ErrorUnsupported.
- Notably VLAs
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55544
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nico Weber [Fri, 29 Aug 2008 17:24:46 +0000 (17:24 +0000)]
fix a comment that was forgotten in r54071
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55543
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nico Weber [Fri, 29 Aug 2008 17:02:23 +0000 (17:02 +0000)]
minor cleanup
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55538
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Fri, 29 Aug 2008 15:09:12 +0000 (15:09 +0000)]
Added LLVM comment header.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55537
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Fri, 29 Aug 2008 14:52:36 +0000 (14:52 +0000)]
Migrate the rest symbolic analysis stuff to BasicConstraintManager.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55536
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 29 Aug 2008 08:11:39 +0000 (08:11 +0000)]
Add special "property reference" CodeGen::LValue type for emitting
Objective-C property references.
- This handles property references "more correctly" but setters still
don't work.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55534
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 29 Aug 2008 03:55:31 +0000 (03:55 +0000)]
Remove dead method.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55526
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 29 Aug 2008 03:45:59 +0000 (03:45 +0000)]
Add newline to end of file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55525
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 29 Aug 2008 01:07:08 +0000 (01:07 +0000)]
Add utils/FindSpecRefs, Python script for generating specification
references HTML page.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55524
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 29 Aug 2008 00:47:32 +0000 (00:47 +0000)]
Added "getBindings" and "BindingAsString" to GRStateManager and StoreManager.
Migrated CFRefCount.cpp to use getBindings and BindingsAsString instead of
making assumptions about the Store (removed dependence on GRState::vb_iterator).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55522
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 28 Aug 2008 23:40:08 +0000 (23:40 +0000)]
Remove BasicStore.h from Xcode project.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55520
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 28 Aug 2008 23:39:42 +0000 (23:39 +0000)]
Remove BasicStore.h (migrated function prototype for CreateBasicStore() to Store.h)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55519
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 28 Aug 2008 23:34:54 +0000 (23:34 +0000)]
Remove Regions.cpp from VS project file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55517
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 28 Aug 2008 23:33:36 +0000 (23:33 +0000)]
Removed Regions.[h,cpp] from the Xcode project.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55516
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 28 Aug 2008 23:32:43 +0000 (23:32 +0000)]
Remove Regions.h and Regions.cpp, since we are now using an even more abstract representation of "memory regions" in the static analyzer.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55515
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 28 Aug 2008 23:31:31 +0000 (23:31 +0000)]
Make store "Regions" and "Bindings" more abstract instead of concrete variants.
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.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55514
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 28 Aug 2008 23:28:16 +0000 (23:28 +0000)]
Allow 'make TESTDIRS=Sema' in test/ directory for only running a
subset of tests.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55513
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 28 Aug 2008 22:15:34 +0000 (22:15 +0000)]
Updated analyzer build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55505
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 28 Aug 2008 21:28:55 +0000 (21:28 +0000)]
Use explicit variable instead of $?
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55501
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Thu, 28 Aug 2008 19:20:44 +0000 (19:20 +0000)]
Add parser/action support for block literal expressions.
Parser support for blocks is almost complete...just need to add support for the __block() storage class qualifier.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55495
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 28 Aug 2008 18:43:46 +0000 (18:43 +0000)]
Fixed analyzer caching bug involving the transfer function for loads.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55494
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 28 Aug 2008 18:42:20 +0000 (18:42 +0000)]
Fix isIntegerConstantExpr eval of __builtin_offsetof to return result
with correct width.
- PR2728.
Also, fix PR2727 test case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55493
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 28 Aug 2008 18:34:41 +0000 (18:34 +0000)]
Always print out the function we're analyzing.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55488
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 28 Aug 2008 18:34:26 +0000 (18:34 +0000)]
Fixed analyzer caching bug in DeclStmt.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55487
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 28 Aug 2008 18:02:04 +0000 (18:02 +0000)]
Fix double-free error with sizeof applied to VLA types.
- PR2727.
Also, fix warning in CodeGenTypes for new BlockPointer type.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55479
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Thu, 28 Aug 2008 10:07:06 +0000 (10:07 +0000)]
Fix Parser::ParseDeclaratorInternal(): add langopts test when recognizing blocks.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55468
91177308 -0d34-0410-b5e6-
96231b3b80d8
Argyrios Kyrtzidis [Thu, 28 Aug 2008 07:45:57 +0000 (07:45 +0000)]
Fix compilation error on MSVC.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55465
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 28 Aug 2008 05:02:09 +0000 (05:02 +0000)]
Ubigraph visualization: represent cached nodes with a different style.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55463
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 28 Aug 2008 05:01:37 +0000 (05:01 +0000)]
Enhance ubiviz to support vertex styles.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55462
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 28 Aug 2008 04:38:10 +0000 (04:38 +0000)]
NeXT: Emit mostly-correct property type encoding.
- Added ASTContext::getObjCEncodingForPropertyDecl.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55461
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 28 Aug 2008 03:54:51 +0000 (03:54 +0000)]
Automatically execute ubiviz.
Cleanup ubigraph files when don't drawing the graphs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55459
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 28 Aug 2008 01:42:51 +0000 (01:42 +0000)]
Update checker build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55455
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 28 Aug 2008 01:18:44 +0000 (01:18 +0000)]
Fix regression: immediately terminate ccc-analyzer when gcc reports an error.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55452
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 27 Aug 2008 23:13:22 +0000 (23:13 +0000)]
Update Xcode project.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55449
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 27 Aug 2008 23:13:01 +0000 (23:13 +0000)]
Make the destructor of ConstraintManager virtual.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55448
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 27 Aug 2008 22:49:55 +0000 (22:49 +0000)]
Update checker build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55447
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 27 Aug 2008 22:46:55 +0000 (22:46 +0000)]
Ubigraph-rendered ExplodedGraphs now have arrows and are oriented downward.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55446
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 27 Aug 2008 22:31:43 +0000 (22:31 +0000)]
Added Ubigraph visualization for the static analyzer (this is pretty alpha quality).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55442
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 27 Aug 2008 22:31:20 +0000 (22:31 +0000)]
Update Xcode project.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55441
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 27 Aug 2008 22:30:34 +0000 (22:30 +0000)]
Remove regression where the analyzer was not called.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55440
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Wed, 27 Aug 2008 16:04:49 +0000 (16:04 +0000)]
First wave of changes to support "blocks" (an extension to C).
This commit adds the declaration syntax (and associated type).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55417
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Wed, 27 Aug 2008 14:03:33 +0000 (14:03 +0000)]
Refactor Assume logic into a separate class ConstraintManager.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55412
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 27 Aug 2008 06:57:25 +0000 (06:57 +0000)]
Initial support for Obj-C dot-syntax for getters.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55410
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 27 Aug 2008 05:41:04 +0000 (05:41 +0000)]
Update test case (we were missing a warning here)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55408
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 27 Aug 2008 05:40:03 +0000 (05:40 +0000)]
Add synthesized property methods to protocols and categories in Sema.
- 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.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55407
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 27 Aug 2008 05:13:46 +0000 (05:13 +0000)]
Fix "possibly uninitialized" warning.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55406
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 27 Aug 2008 02:31:56 +0000 (02:31 +0000)]
NeXT: Refactor protocol method metadata emission.
Also, fix category protocol list metadata.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55405
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 27 Aug 2008 02:09:39 +0000 (02:09 +0000)]
Add addPropertyMethods implementations for
ObjC{Category,Protocol}Decl.
- No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55404
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 27 Aug 2008 01:56:11 +0000 (01:56 +0000)]
Added "Auditor" interface for auditing the construction of ExplodedGraphs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55403
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 27 Aug 2008 01:27:52 +0000 (01:27 +0000)]
Make implementation of ExplodedNodeImpl::addPredecessor out-of-line.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55402
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 26 Aug 2008 23:03:11 +0000 (23:03 +0000)]
NeXT: Emit correct properties for category.
- Was emitting duplicates of class properties instead of the category
properties.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55395
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 26 Aug 2008 22:34:23 +0000 (22:34 +0000)]
Remove default value for 'Pred' argument to GRCoreEngineImpl::GenerateNode().
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55392
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 26 Aug 2008 21:51:14 +0000 (21:51 +0000)]
NeXT: Emit metadata for synthetsized properties.
Also, fix method lookup to not use LLVM module symbol table.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55390
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nico Weber [Tue, 26 Aug 2008 21:36:37 +0000 (21:36 +0000)]
make www less outdated
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55388
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nico Weber [Tue, 26 Aug 2008 21:23:32 +0000 (21:23 +0000)]
update documentation
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55386
91177308 -0d34-0410-b5e6-
96231b3b80d8
Cedric Venet [Tue, 26 Aug 2008 19:46:30 +0000 (19:46 +0000)]
Update VS project.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55379
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 26 Aug 2008 08:29:31 +0000 (08:29 +0000)]
Objective-C @synthesize support.
- 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.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55365
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 26 Aug 2008 07:16:44 +0000 (07:16 +0000)]
Add ObjCPropertyDecl::isReadOnly.
Respect isReadOnly when generating synthesized method decls.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55364
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 26 Aug 2008 06:53:45 +0000 (06:53 +0000)]
constify ObjC*::getClassMethod,getInstanceMethod
No (intended) functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55362
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 26 Aug 2008 06:08:30 +0000 (06:08 +0000)]
Missed a file; part of:
Move implicit Obj-C param creation into ObjCMethodDecl.
- Add ObjCMethodDecl::createImplicitParams.
- Remove ObjCMethodDecl::set{Self,Cmd}Decl
- Remove Sema::CreateImplicitParameter
No (intended) functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55357
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 26 Aug 2008 06:07:48 +0000 (06:07 +0000)]
Move implicit Obj-C param creation into ObjCMethodDecl.
- Add ObjCMethodDecl::createImplicitParams.
- Remove ObjCMethodDecl::set{Self,Cmd}Decl
- Remove Sema::CreateImplicitParameter
No (intended) functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55356
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 26 Aug 2008 04:47:31 +0000 (04:47 +0000)]
Rename ObjCPropertyImplDecl::PropertyImplKind (consistency)
- Change enum name to Kind.
- Change enum constants to English strings.
Also, fix getPropertyImplementation (which probably should be renamed)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55354
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 26 Aug 2008 02:53:23 +0000 (02:53 +0000)]
Fix return type for setter method.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55353
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 26 Aug 2008 02:32:45 +0000 (02:32 +0000)]
Synthesize property setter method as we do for getter.
- Also, fix Parser to construct proper SetterName selector (should be
lifted out of parser though).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55352
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 26 Aug 2008 00:41:39 +0000 (00:41 +0000)]
In incompatible pointer-typed ?: expressions, add implicit conversion
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.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55346
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Mon, 25 Aug 2008 21:31:01 +0000 (21:31 +0000)]
Do typechecking and codegen for K&R-style function declarations
correctly. Not a regression, but made more obvious by my recent fix
which made function type compatibility checking a bit more strict.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55339
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 25 Aug 2008 21:27:06 +0000 (21:27 +0000)]
Update checker build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55337
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Mon, 25 Aug 2008 20:46:57 +0000 (20:46 +0000)]
Fix for PR2720; be a little bit more permissive in initializers for
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.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55331
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 25 Aug 2008 20:45:57 +0000 (20:45 +0000)]
Support __PRETTY_FUNCTION__ and friends in Obj-C methods.
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.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55328
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 25 Aug 2008 20:45:07 +0000 (20:45 +0000)]
Use path information from .info files when computing common prefix information.
This partially implements PR 2705: http://llvm.org/bugs/show_bug.cgi?id=2705
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55327
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 25 Aug 2008 20:44:31 +0000 (20:44 +0000)]
Use the same 'cc' for generated preprocessed crash files as we do for compilation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55326
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 25 Aug 2008 20:10:45 +0000 (20:10 +0000)]
ccc-analyzer now correctly reports the exit code from 'cc'.
scan-build now correctly reports the exit code from the build command.
Fixes: <rdar://problem/6172224>
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55324
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 25 Aug 2008 20:08:27 +0000 (20:08 +0000)]
Add test case for function-pointer-cast-of-global as constant
expression.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55323
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 25 Aug 2008 19:33:19 +0000 (19:33 +0000)]
Update Xcode project.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55322
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 25 Aug 2008 19:33:03 +0000 (19:33 +0000)]
Added 'extents' for Regions.
Added 'getExtent()' to StoreManager.
Implemented 'getExtent()' for BasicStoreManager.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55321
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Mon, 25 Aug 2008 18:16:36 +0000 (18:16 +0000)]
Objective-C foreach selector elements must be lvalues.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55316
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 25 Aug 2008 10:38:11 +0000 (10:38 +0000)]
Change another is-a-pointer check to check in terms of LLVM type.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55312
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 25 Aug 2008 09:51:32 +0000 (09:51 +0000)]
Do is-a-pointer checks in terms of LLVM types in
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.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55311
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 25 Aug 2008 09:46:27 +0000 (09:46 +0000)]
Stop asserting in TargetInfo::validateInputConstraint
- Sema gives a perfectively nice error message on invalid constraints.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55310
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 25 Aug 2008 08:19:24 +0000 (08:19 +0000)]
Fix Obj-C super sends inside class methods.
- NeXT loads the super class at runtime; this required changing the
runtime interface to pass more information down.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55307
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 25 Aug 2008 06:28:15 +0000 (06:28 +0000)]
Name struct types generated for Obj-C classes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55304
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 25 Aug 2008 06:18:57 +0000 (06:18 +0000)]
Use DenseMap on IdentifierInfo instead of StringMap.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55303
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 25 Aug 2008 06:02:07 +0000 (06:02 +0000)]
NeXT: Emit symbols used to manage linking of Obj-C classes.
- 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.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55302
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Mon, 25 Aug 2008 03:27:15 +0000 (03:27 +0000)]
Handle emitting __builtin_huge_valf as a constant expr.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55299
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Mon, 25 Aug 2008 01:53:23 +0000 (01:53 +0000)]
Make code generation of ivar ref exprs more like member exprs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55298
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Mon, 25 Aug 2008 01:38:19 +0000 (01:38 +0000)]
Handle static variables inside obj-c methods.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55297
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Sun, 24 Aug 2008 18:05:19 +0000 (18:05 +0000)]
Convert qualified interface types correctly.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55287
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Sun, 24 Aug 2008 16:33:25 +0000 (16:33 +0000)]
Fix silly bug in objc_gc attribute parsing and add test case
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55286
91177308 -0d34-0410-b5e6-
96231b3b80d8
Argyrios Kyrtzidis [Sun, 24 Aug 2008 13:14:02 +0000 (13:14 +0000)]
Pass SourceRanges by reference to the various Diag methods.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55284
91177308 -0d34-0410-b5e6-
96231b3b80d8
Argyrios Kyrtzidis [Sun, 24 Aug 2008 12:51:04 +0000 (12:51 +0000)]
Add a Parser::Diag overload that can receive a custom string along with a SourceRange.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55283
91177308 -0d34-0410-b5e6-
96231b3b80d8
Argyrios Kyrtzidis [Sun, 24 Aug 2008 12:29:43 +0000 (12:29 +0000)]
Rename Preprocessor::DisableBacktrack -> Preprocessor::CommitBacktrackedTokens.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55281
91177308 -0d34-0410-b5e6-
96231b3b80d8
Cedric Venet [Sun, 24 Aug 2008 11:59:26 +0000 (11:59 +0000)]
Update VS projects.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55280
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Aug 2008 05:56:54 +0000 (05:56 +0000)]
other updates
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55278
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Aug 2008 05:44:37 +0000 (05:44 +0000)]
link to c++ status page
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55277
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Aug 2008 05:42:07 +0000 (05:42 +0000)]
codegen is still not 'finished', but in a better state than before.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55276
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Sun, 24 Aug 2008 02:33:36 +0000 (02:33 +0000)]
Moved HTMLDiagnostics to lib/Driver.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55274
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 24 Aug 2008 00:24:17 +0000 (00:24 +0000)]
Add svn:ignore for docs/{doxygen,doxygen.tar.gz}
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55273
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 24 Aug 2008 00:12:08 +0000 (00:12 +0000)]
Comment tweak.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55272
91177308 -0d34-0410-b5e6-
96231b3b80d8