Owen Anderson
9793f0e4d7
Update for LLVM API change.
...
llvm-svn: 77514
2009-07-29 22:16:19 +00:00
Ted Kremenek
c23c7e6a51
Change uses of:
...
Type::getAsReferenceType() -> Type::getAs<ReferenceType>()
Type::getAsRecordType() -> Type::getAs<RecordType>()
Type::getAsPointerType() -> Type::getAs<PointerType>()
Type::getAsBlockPointerType() -> Type::getAs<BlockPointerType>()
Type::getAsLValueReferenceType() -> Type::getAs<LValueReferenceType>()
Type::getAsRValueReferenceType() -> Type::getAs<RValueReferenceType>()
Type::getAsMemberPointerType() -> Type::getAs<MemberPointerType>()
Type::getAsReferenceType() -> Type::getAs<ReferenceType>()
Type::getAsTagType() -> Type::getAs<TagType>()
And remove Type::getAsReferenceType(), etc.
This change is similar to one I made a couple weeks ago, but that was partly
reverted pending some additional design discussion. With Doug's pending smart
pointer changes for Types, it seemed natural to take this approach.
llvm-svn: 77510
2009-07-29 21:53:49 +00:00
Ted Kremenek
4301526e8d
Remove 'StoreManager::OldCastRegion()', TypedViewRegion (which only
...
OldCastRegion used), and the associated command line option
'-analyzer-store=old-basic-cast'.
llvm-svn: 77509
2009-07-29 21:43:22 +00:00
Fariborz Jahanian
e82da999e9
Fixed test.
...
llvm-svn: 77506
2009-07-29 21:26:28 +00:00
Fariborz Jahanian
4b12ed115a
Some refactoring of member access for
...
performace sake. Also added a test case.
llvm-svn: 77502
2009-07-29 20:41:46 +00:00
Eli Friedman
8e1433b370
Refactor base/member initializers, and construct them correctly in cases
...
with dependent types. Fixes PR4621 and PR4627.
llvm-svn: 77498
2009-07-29 19:44:27 +00:00
Fariborz Jahanian
3f15083f73
Check accessibility when converting object to the base
...
class.
llvm-svn: 77497
2009-07-29 19:40:11 +00:00
Owen Anderson
ade90fd1ba
Update for LLVM API change.
...
llvm-svn: 77492
2009-07-29 18:54:39 +00:00
Fariborz Jahanian
7be1ad814b
No longer need to keep base class offsets in the offset
...
table as it has its own place now.
llvm-svn: 77491
2009-07-29 18:50:06 +00:00
Fariborz Jahanian
bb67b827d9
Patch to provide cast of objects in member access
...
excpression, if needed, and remove some ir-gen code
now unnencessary.
llvm-svn: 77490
2009-07-29 18:40:24 +00:00
Douglas Gregor
aa87ebc0c1
[llvm up]
...
A template name can refer to a set of overloaded function
templates. Model this in TemplateName, which can now refer to an
OverloadedFunctionDecl that contains function templates. This removes
an unspeakable hack in Sema::isTemplateName.
llvm-svn: 77488
2009-07-29 18:26:50 +00:00
Ted Kremenek
3c6764cd3e
Add an XFAILed test case that currently crashes for RegionStore. This case will
...
be moved to misc-ps.m when it passes.
llvm-svn: 77486
2009-07-29 18:19:16 +00:00
Ted Kremenek
70b943f206
Add another analyzer test case involving an OSAtomic function.
...
llvm-svn: 77485
2009-07-29 18:18:25 +00:00
Ted Kremenek
87a7a451ad
Remove some uses of TypedViewRegion, and use getBaseRegion() in a context where
...
we don't care about ElementRegions layered on top of a base region.
llvm-svn: 77484
2009-07-29 18:17:40 +00:00
Ted Kremenek
bca70671e7
Make StoreManager::InvalidateRegion() virtual, move the current implementation
...
in StoreManager to RegionStoreManager, and create a special, highly reduced
version in BasicStoreManager.
These changes are in preparation for future RegionStore-specific changes to
InvalidateRegion.
llvm-svn: 77483
2009-07-29 18:16:25 +00:00
Ted Kremenek
ccf3335939
Add 'MemRegion::getBaseRegion()', a utility method to strip ElementRegions with
...
index 0. This will be used for refinements to InvalidateRegion and CastRegion.
llvm-svn: 77481
2009-07-29 18:14:27 +00:00
Ted Kremenek
bb902265af
canSymbolicate() should only return true for integer types that are scalars.
...
llvm-svn: 77479
2009-07-29 18:12:48 +00:00
Sebastian Redl
63c4da01c8
Check for identical types in C++ catch expression. Patch by Erik Verbruggen.
...
llvm-svn: 77475
2009-07-29 17:15:45 +00:00
Daniel Dunbar
a5b3351809
Don't use a formatted ostream when writing .ll either.
...
llvm-svn: 77474
2009-07-29 17:12:55 +00:00
Daniel Dunbar
d8c3178cee
Don't use a formatted ostream when writing .bc files. I don't really understand
...
this interface design, Chris please check.
llvm-svn: 77473
2009-07-29 17:10:26 +00:00
Douglas Gregor
b142c2d0a8
When lookup of an identifier preceding a '<' finds a set of overloaded
...
functions, only return those overloaded functions that are actually
function templates. Note that there is still a glaring problem with
treating an OverloadedFunctionDecl as a TemplateName.
llvm-svn: 77472
2009-07-29 16:56:42 +00:00
Daniel Dunbar
0a1fa85894
scan-build: Don't try to index plist-html output directories
...
llvm-svn: 77465
2009-07-29 16:21:23 +00:00
Douglas Gregor
ab60c7f60b
Remove an obsolete kludge based on the previous, completely broken handling of function templates
...
llvm-svn: 77464
2009-07-29 16:15:53 +00:00
Douglas Gregor
b55d8e914a
Test redefinition of class template partial specializations
...
llvm-svn: 77463
2009-07-29 16:13:25 +00:00
Douglas Gregor
0004417e81
Use the new statement/expression profiling code to unique dependent
...
template arguments, as in template specialization types. This permits
matching out-of-line definitions of members for class templates that
involve non-type template parameters.
llvm-svn: 77462
2009-07-29 16:09:57 +00:00
Fariborz Jahanian
72b1f24bd2
Use the existing API for base offset. Use suitable llvm type
...
for offset ir-gen.
llvm-svn: 77458
2009-07-29 15:54:56 +00:00
Douglas Gregor
436081940c
Make the Python TestRunner work for individual tests
...
llvm-svn: 77456
2009-07-29 15:32:08 +00:00
Steve Naroff
53fcbb89f9
Remove an ObjC-specific XFAIL (and tweak test).
...
llvm-svn: 77454
2009-07-29 15:24:47 +00:00
Steve Naroff
85d9715c24
Fix <rdar://problem/7100524> regression: "error: incompatible operand types ('void *' and 'NSString *')".
...
Remove XFAIL from 'conditional-expr-4.m' test case (which would have caught this).
Also tweaked several aspects of the test to jive with the current type checking.
llvm-svn: 77453
2009-07-29 15:09:39 +00:00
Steve Naroff
d390fd99d9
Incorporate feedback from Chris (on r76979).
...
llvm-svn: 77452
2009-07-29 14:06:03 +00:00
Sebastian Redl
955a067bdd
Make functional-style casts emit correct messages, and fix a crash-on-invalid.
...
llvm-svn: 77451
2009-07-29 13:50:23 +00:00
Zhongxing Xu
c2394f0ad9
add a fixme
...
llvm-svn: 77447
2009-07-29 08:13:37 +00:00
Zhongxing Xu
52bd6e8fee
delete an undefined method.
...
llvm-svn: 77446
2009-07-29 08:00:02 +00:00
Daniel Dunbar
1cb8d81b41
MultiTestRunner: Reenable --vg option.
...
- Simplified from before and using --error-exitcode so failures show up as
failures.
llvm-svn: 77424
2009-07-29 02:57:25 +00:00
Daniel Dunbar
13796e3b95
Destroy the ASTConsumer prior to the Context, HTMLPrinter for example wants to
...
do a significant amount of work in its destructor, which may access the
context. (PR4642).
llvm-svn: 77423
2009-07-29 02:40:09 +00:00
Daniel Dunbar
b9a68612e2
BlockScopeInfo::hasPrototype was uninitialized.
...
llvm-svn: 77421
2009-07-29 01:59:17 +00:00
Daniel Dunbar
a444cc2fa8
CharLiteralParser::IsMultiChar was sometimes uninitialized.
...
llvm-svn: 77420
2009-07-29 01:46:05 +00:00
Daniel Dunbar
841f14b609
Add missing '"'
...
llvm-svn: 77416
2009-07-29 01:10:25 +00:00
Fariborz Jahanian
82e2874270
Code refactoring to define getCXXRecordDeclForPointerType
...
and use it in several places.
llvm-svn: 77411
2009-07-29 00:44:13 +00:00
Mike Stump
d97c26921a
Be sure to turn on -fblocks.
...
llvm-svn: 77406
2009-07-29 00:17:20 +00:00
Mike Stump
93246cc475
Some minor cleanups, thanks Chris.
...
llvm-svn: 77402
2009-07-28 23:57:15 +00:00
Mike Stump
2adb4dab54
Some style fixes, thanks Chris.
...
llvm-svn: 77400
2009-07-28 23:47:15 +00:00
Mike Stump
bce7a27d22
Add support for -Wmissing-noreturn.
...
llvm-svn: 77391
2009-07-28 23:11:12 +00:00
Douglas Gregor
a8e02e7863
Refactor the code that produces a TemplateSpecializationType, so that
...
canonicalization for dependent TemplateSpecializationTypes occurs
within ASTContext::getTemplateSpecializationType. Also, move template
argument canonicalization into ASTContext::getCanonicalTemplateArgument.
llvm-svn: 77388
2009-07-28 23:00:59 +00:00
Chris Lattner
a58b3af802
remove extraneous braces
...
llvm-svn: 77386
2009-07-28 22:49:34 +00:00
Mike Stump
3bf1ab48d3
Add noreturn support for blocks.
...
llvm-svn: 77377
2009-07-28 22:04:01 +00:00
Fariborz Jahanian
f17071580f
ir-gen derived-to-base conversion in implicit casts.
...
llvm-svn: 77374
2009-07-28 22:00:58 +00:00
Owen Anderson
3cc120a51e
Update for LLVM API change.
...
llvm-svn: 77368
2009-07-28 21:22:35 +00:00
Anders Carlsson
019f414261
Remove the old RecordOrganizer.
...
llvm-svn: 77365
2009-07-28 21:03:34 +00:00
Ted Kremenek
a41d9dd1f1
Fix PR 4631. The compound initializers of unions were not being evaluated, which
...
could cause false positives if any the subexpressions had side-effects. These
initializers weren't evaluated because the StoreManager would need to handle
them, but that's an orthogonal problem of whether or not the StoreManager can
handle the binding.
llvm-svn: 77361
2009-07-28 20:46:55 +00:00