Chris Lattner
c58e5699be
cgobjcgnu was making invalid common globals.
...
llvm-svn: 78161
2009-08-05 05:25:18 +00:00
Chris Lattner
f49573d1ee
weak globals that are const should get weak_odr linkage.
...
add a fixme about C++ const.
llvm-svn: 78159
2009-08-05 05:20:29 +00:00
Chris Lattner
c0693bc2ea
rdar://7119244 - globals with an explicit section specified don't get
...
common linkage.
llvm-svn: 78158
2009-08-05 04:56:58 +00:00
Zhongxing Xu
fe97165587
If the UnaryOperator has non-location type, use its type to create the
...
constant value. If the UnaryOperator has location type, create the
constant with int type and pointer width.
This fixes the bug that all pointer increments 'p++' evaluated to Unknown.
llvm-svn: 78147
2009-08-05 02:51:59 +00:00
Mike Stump
1a90e38471
Remove an unused header.
...
llvm-svn: 78140
2009-08-05 01:22:47 +00:00
Fariborz Jahanian
800f37262c
Support for use of default argument in constructors.
...
work in progress.
llvm-svn: 78132
2009-08-05 00:26:10 +00:00
Douglas Gregor
e922c77ddd
Move the template instantiation logic for template arguments into the
...
general tree transformation. Also, implement template instantiation
for parameter packs.
In addition, introduce logic to enter the appropriate context for
subexpressions that are not potentially evaluated.
llvm-svn: 78114
2009-08-04 22:27:00 +00:00
Mike Stump
9beac787c1
vtable building for simple inheritance. Still in progress.
...
llvm-svn: 78110
2009-08-04 21:58:42 +00:00
Mike Stump
12b8ce168d
Canonicalize else.
...
llvm-svn: 78102
2009-08-04 21:02:39 +00:00
Mike Stump
7551d05358
Will I ever get used to CamelCase? Will I ever like capitols for
...
random variables?
--This line, and those below, will be ignored--
M lib/CodeGen/CGCXX.cpp
llvm-svn: 78094
2009-08-04 20:06:48 +00:00
Mike Stump
b0dd95d6d3
Add armv7 support.
...
llvm-svn: 78092
2009-08-04 19:48:52 +00:00
Anders Carlsson
5638895b2a
Revert the fix for PR3800, it broke things.
...
llvm-svn: 78084
2009-08-04 18:18:36 +00:00
Fariborz Jahanian
b61af4c566
Some code refactoring. Be more generous in issuance of warning
...
on method type mismatches per Chris's comment.
llvm-svn: 78075
2009-08-04 17:01:09 +00:00
Douglas Gregor
d6ff33294a
Refactor template instantiation for types into a generic tree
...
transformation template (TreeTransform) that handles the
transformation and reconstruction of AST nodes. Template instantiation
for types is a (relatively small) customization of the generic tree
transformation.
llvm-svn: 78071
2009-08-04 16:50:30 +00:00
Anders Carlsson
19702bb054
Simplify alignment handling in the record builder.
...
llvm-svn: 78069
2009-08-04 16:29:15 +00:00
Daniel Dunbar
4a2cdc3302
Update for LLVM API change
...
llvm-svn: 78044
2009-08-04 04:02:57 +00:00
Fariborz Jahanian
10ff786e1e
Compare matching selectors in current and
...
super class(s) and warn on any parameter
type mismatch if potentially unsafe.
llvm-svn: 78029
2009-08-04 01:07:16 +00:00
Ted Kremenek
3724cdef3f
Emit a special 'BUGMETAEND' comment to aid in the postprocessing of HTML bug reports.
...
llvm-svn: 78021
2009-08-03 23:44:55 +00:00
Ted Kremenek
fb50bf5a6f
Per advice that Doug Gregor gave me several months ago, clean up the
...
implementation of '#pragma unused' by not constructing intermediate
DeclRefExprs, but instead do the name lookup directly. The
implementation is greatly simplified.
Along the way, degrade '#pragma unused(undeclaredvariable)' to a
warning instead of being a hard error. This implements:
<rdar://problem/6761874> [sema] allow #pragma unused to reference undefined variable (with warning)
llvm-svn: 78019
2009-08-03 23:24:57 +00:00
Daniel Dunbar
4d93a4f9d4
Make sure UTF-16 strings end with a 16-bit null (as opposed to 8-bit).
...
llvm-svn: 78001
2009-08-03 21:47:08 +00:00
Ted Kremenek
0bb32e3e5d
Handle disgusting corner case where a byte is loaded from the address of a function.
...
llvm-svn: 78000
2009-08-03 21:41:46 +00:00
Daniel Dunbar
a1d8bcd33e
When generating cleanup blocks for Obj-C @finally , mark them as catch all blocks
...
from the perspective of LLVM exception handling. Otherwise the C++ personality
function may decide not to run them, if it only detects cleanup handlers.
- Test case for this is exceptions.m in llvm-test.
llvm-svn: 77999
2009-08-03 21:20:07 +00:00
Fariborz Jahanian
d44bdb2926
assert(nyi) on attempt to destruct an array of objects.
...
llvm-svn: 77993
2009-08-03 20:51:29 +00:00
Fariborz Jahanian
18c062361d
ir-gen for destructor calls.
...
llvm-svn: 77991
2009-08-03 20:20:07 +00:00
John McCall
49bfce4227
Refactor methods on DeclSpec to take a diagnostic& parameter, and reflect this
...
elsewhere. Very slightly decouples DeclSpec users from knowing the exact
diagnostics to report, and makes it easier to provide different diagnostics in
some places.
llvm-svn: 77990
2009-08-03 20:12:06 +00:00
Fariborz Jahanian
6782844874
Minor renaming/refactoring. No change in functionality.
...
llvm-svn: 77985
2009-08-03 19:13:25 +00:00
John McCall
898cd0fced
Templatize BadSpecifier and introduce DeclSpec::getSpecifier(T) for the
...
remaining specifier enums T.
llvm-svn: 77981
2009-08-03 18:47:27 +00:00
Daniel Dunbar
59e476b1b9
Formatting fixes (trailing whitespace, 80-cols, indentation).
...
llvm-svn: 77972
2009-08-03 17:06:42 +00:00
Eli Friedman
76df43c08b
Fix assertion crash. I don't have a testcase, but the fix is pretty
...
obviously correct.
llvm-svn: 77969
2009-08-03 09:07:06 +00:00
Zhongxing Xu
9ad0b46a80
add a bunch of routine methods to AnalysisContext.
...
llvm-svn: 77961
2009-08-03 07:23:22 +00:00
Daniel Dunbar
07360b2099
Update for LLVM API change.
...
llvm-svn: 77952
2009-08-03 04:21:41 +00:00
Daniel Dunbar
7779bd1726
Update for LLVM API change.
...
llvm-svn: 77947
2009-08-03 04:04:27 +00:00
Zhongxing Xu
b9a45a46f1
now we can let AnalysisManager to own the PathDiagnosticClient.
...
llvm-svn: 77945
2009-08-03 03:27:37 +00:00
Zhongxing Xu
bcbe44fa90
Create only one AnalysisManager for each translation unit. In HandleCode(),
...
reset the current analysis context of the AnalysisManager.
llvm-svn: 77943
2009-08-03 03:13:46 +00:00
Daniel Dunbar
a8888ac1cb
Driver/OpenBSD: Improve ld options.
...
- Patch by Jonathan Gray!
llvm-svn: 77935
2009-08-03 01:28:59 +00:00
Douglas Gregor
55137cbc85
Produce a warning that partial ordering of function templates is not yet supported
...
llvm-svn: 77928
2009-08-02 23:46:29 +00:00
Douglas Gregor
9dc8bd327f
Keep track of the template arguments deduced when matching a class
...
template partial specialization. Then, use those template arguments
when instantiating members of that class template partial
specialization. Fixes PR4607.
llvm-svn: 77925
2009-08-02 23:24:31 +00:00
Anders Carlsson
59a9468b22
Whoops, meant to delete this.
...
llvm-svn: 77916
2009-08-02 21:34:52 +00:00
Anders Carlsson
f18318cf4e
use CodeGenModule::EmitNullConstant in a couple of places.
...
llvm-svn: 77915
2009-08-02 21:18:22 +00:00
Anders Carlsson
4ab4f7f416
Use the correct cast kind for dynamic_cast.
...
llvm-svn: 77905
2009-08-02 19:07:59 +00:00
Ted Kremenek
6ddbb4c963
Fix regression caused by recent refactoring where HTML and plist files would not get flushed out when using '-disable-free'.
...
llvm-svn: 77882
2009-08-02 05:43:14 +00:00
Ted Kremenek
ca7935d347
Remove RegionViews and RegionCasts. These are no longer used.
...
llvm-svn: 77876
2009-08-02 05:15:23 +00:00
Ted Kremenek
f106ab91ff
RegionStoreManager::RemoveDeadBindings() now removes dead 'default' bindings as well.
...
llvm-svn: 77875
2009-08-02 05:00:15 +00:00
Ted Kremenek
cee28a4c4d
Generalize the interface of 'StoreManager::RemoveDeadBindings()' to manipulate the entire GRState, not just the Store.
...
llvm-svn: 77870
2009-08-02 04:45:08 +00:00
Anders Carlsson
44616ce317
Remove old code that was causing the new test to fail.
...
llvm-svn: 77862
2009-08-02 04:17:43 +00:00
Ted Kremenek
9419876e59
Fix regression in StoreManager::CastRegion() to always treat casts to
...
'void*' (or 'const void*') as an identity transformation.
llvm-svn: 77860
2009-08-02 04:12:53 +00:00
Anders Carlsson
7df966e040
Don't evaluate inout constraints twice. Fixes PR3800.
...
llvm-svn: 77854
2009-08-02 03:40:19 +00:00
Daniel Dunbar
a4a341b9b0
Compute end_overridden_methods in a way that keeps ENABLE_EXPENSIVE_CHECKS
...
happy.
llvm-svn: 77850
2009-08-02 01:48:29 +00:00
Daniel Dunbar
4074b93184
Use Twine instead of utostr
...
llvm-svn: 77848
2009-08-02 01:43:57 +00:00
Daniel Dunbar
36741c8a29
Avoid accessing invalid std::vector element; this makes clang
...
ENABLE_EXPENSIVE_CHECKS clean on x86_64-.*-darwin10.
llvm-svn: 77831
2009-08-01 23:40:20 +00:00