Ted Kremenek
2aab87f393
Update checker build.
...
llvm-svn: 71846
2009-05-15 05:59:34 +00:00
Ted Kremenek
2b77677322
Update checker build.
...
llvm-svn: 71716
2009-05-13 20:49:00 +00:00
Douglas Gregor
a1f4997368
Semantic analysis for explicit instantiation of class templates. We
...
still aren't instantiating the definitions of class template members,
and core issues 275 and 259 will both affect the checking that we do
for explicit instantiations (but are not yet implemented).
llvm-svn: 71613
2009-05-13 00:25:59 +00:00
Douglas Gregor
1b57ff32a8
Implement parsing for explicit instantiations of class templates, e.g.,
...
template class X<int>;
This also cleans up the propagation of template information through
declaration parsing, which is used to improve some diagnostics.
llvm-svn: 71608
2009-05-12 23:25:50 +00:00
Ted Kremenek
14fbc56a09
Update checker build.
...
llvm-svn: 71605
2009-05-12 22:44:02 +00:00
Douglas Gregor
9e0d21a444
Align the N/A in the C++ status table, from Anders Johnsen
...
llvm-svn: 71576
2009-05-12 18:36:58 +00:00
Douglas Gregor
5a4d12afbf
Fill in more C++ status. We're now using the check mark to mean,
...
"complete, and we have tests for every paragraph".
llvm-svn: 71564
2009-05-12 17:55:28 +00:00
Ted Kremenek
df5a6b6070
Update checker build.
...
llvm-svn: 71523
2009-05-12 00:45:33 +00:00
Ted Kremenek
3a4360c728
Update checker build.
...
llvm-svn: 71463
2009-05-11 19:02:11 +00:00
Ted Kremenek
f16992866a
Update checker build.
...
llvm-svn: 71435
2009-05-11 16:31:31 +00:00
Sebastian Redl
9257b234a5
Update minor points in C++ status table.
...
llvm-svn: 71406
2009-05-10 20:06:11 +00:00
Sebastian Redl
576fd424df
Implement C++0x nullptr.
...
llvm-svn: 71405
2009-05-10 18:38:11 +00:00
Ted Kremenek
9a627e60cd
Update checker build.
...
llvm-svn: 71404
2009-05-10 17:41:29 +00:00
Ted Kremenek
9dc1bed4a6
Update checker build.
...
llvm-svn: 71387
2009-05-10 05:54:23 +00:00
Ted Kremenek
1e0d6a5957
Update checker build.
...
llvm-svn: 71375
2009-05-10 02:22:16 +00:00
Ted Kremenek
6631d7c4be
Roll back to checker build 0.195.
...
llvm-svn: 71348
2009-05-09 07:05:44 +00:00
Douglas Gregor
1bbffbceae
Big update to the C++ status table to reflect "recent"
...
development. Still much more to write!
llvm-svn: 71167
2009-05-07 17:50:16 +00:00
Ted Kremenek
83ffab06ef
Update checker build.
...
llvm-svn: 71112
2009-05-06 20:13:50 +00:00
Ted Kremenek
82f7cfa156
Update checker build.
...
llvm-svn: 71046
2009-05-06 00:14:14 +00:00
Ted Kremenek
09356a83c4
Update checker build.
...
llvm-svn: 70961
2009-05-05 03:56:29 +00:00
Ted Kremenek
66f8fe18ef
Update checker build.
...
llvm-svn: 70858
2009-05-04 14:24:29 +00:00
Daniel Dunbar
032dc63cd4
Nightly test coverage reporting is back online.
...
llvm-svn: 70814
2009-05-03 23:46:18 +00:00
Ted Kremenek
f520136939
Update checker build.
...
llvm-svn: 70615
2009-05-02 00:42:33 +00:00
Chris Lattner
2ab6983e41
C/ObjC work well enough with clang for them not to be a gcc strength anymore.
...
llvm-svn: 70528
2009-05-01 01:42:13 +00:00
Chris Lattner
0936387c46
add word
...
llvm-svn: 70527
2009-05-01 01:40:42 +00:00
Chris Lattner
0cfae87d80
C/ObjC work well enough to claim support for them now.
...
llvm-svn: 70526
2009-05-01 01:40:17 +00:00
Ted Kremenek
10e21109d7
Update checker build.
...
llvm-svn: 70489
2009-04-30 15:15:37 +00:00
Sebastian Redl
2b9cacbffa
Have the parser communicate the exception specification to the action.
...
llvm-svn: 70389
2009-04-29 17:30:04 +00:00
Ted Kremenek
ed70968484
Update analyzer build.
...
llvm-svn: 70295
2009-04-28 14:32:50 +00:00
Sebastian Redl
4c018663b2
Track down return statements in the handlers of a function-try-block of constructors. Meh ...
...
llvm-svn: 70256
2009-04-27 21:33:24 +00:00
Sebastian Redl
4de47b445b
Improve validation of C++ exception handling: diagnose throwing incomplete types and jumps into protected try-catch scopes.
...
llvm-svn: 70242
2009-04-27 20:27:31 +00:00
Sebastian Redl
21b349d5ea
Fill in the C++ status table for exceptions
...
llvm-svn: 70217
2009-04-27 18:25:15 +00:00
Ted Kremenek
b62db80c83
Updated checker build.
...
llvm-svn: 70065
2009-04-25 19:12:36 +00:00
Ted Kremenek
9099126795
Update checker build.
...
llvm-svn: 69940
2009-04-23 23:42:21 +00:00
Ted Kremenek
9dae596dc1
Update checker build.
...
llvm-svn: 69776
2009-04-22 05:13:56 +00:00
Sebastian Redl
8ce189f9ce
Conditional operator C++ checking complete. What issues remain are in more general code.
...
llvm-svn: 69555
2009-04-19 21:53:20 +00:00
Sebastian Redl
d1309a3c4d
Add deleted functions and rvalue references to C++ status.
...
llvm-svn: 68903
2009-04-12 17:41:24 +00:00
Ted Kremenek
be4fe9e239
Update analyzer build.
...
llvm-svn: 68860
2009-04-11 04:57:08 +00:00
Ted Kremenek
7318290ab9
Fix typo.
...
llvm-svn: 68782
2009-04-10 14:30:24 +00:00
Ted Kremenek
cda32a1e0c
Update analyzer build.
...
llvm-svn: 68781
2009-04-10 14:29:25 +00:00
Ted Kremenek
8cdc351ed3
Update analyzer build.
...
llvm-svn: 68707
2009-04-09 14:06:37 +00:00
Ted Kremenek
c4631b2809
Update checker build.
...
llvm-svn: 68516
2009-04-07 14:26:58 +00:00
Ted Kremenek
b594fa1289
Fix grammar.
...
llvm-svn: 68331
2009-04-02 18:20:13 +00:00
Ted Kremenek
01cccbfb03
Update checker build.
...
llvm-svn: 68302
2009-04-02 06:33:06 +00:00
Douglas Gregor
60f3c95926
Add some examples of Fix-it hints to our documentation
...
llvm-svn: 68210
2009-04-01 16:24:40 +00:00
Douglas Gregor
2e0757f319
Give Type::getDesugaredType a "for-display" mode that can apply more
...
heuristics to determine when it's useful to desugar a type for display
to the user. Introduce two C++-specific heuristics:
- For a qualified type (like "foo::bar"), only produce a new
desugred type if desugaring the qualified type ("bar", in this
case) produces something interesting. For example, if "foo::bar"
refers to a class named "bar", don't desugar. However, if
"foo::bar" refers to a typedef of something else, desugar to that
something else. This gives some useful desugaring such as
"foo::bar (aka 'int')".
- Don't desugar class template specialization types like
"basic_string<char>" down to their underlying "class
basic_string<char, char_traits<char>, allocator<char>>, etc.";
it's better just to leave such types alone.
Update diagnostics.html with some discussion and examples of type
preservation in C++, showing qualified names and class template
specialization types.
llvm-svn: 68207
2009-04-01 15:47:24 +00:00
Anders Carlsson
452e1c8a6a
We fully support namespace aliases now.
...
llvm-svn: 68116
2009-03-31 17:17:14 +00:00
Ted Kremenek
42361b3eb5
Update checker build.
...
llvm-svn: 67976
2009-03-29 00:43:39 +00:00
Ted Kremenek
b3e8f6531d
Update "Getting Started" with more current information about 'clang-cc' and 'clang'.
...
llvm-svn: 67850
2009-03-27 16:32:57 +00:00
Douglas Gregor
0caea8cca7
Add another C++ open project
...
llvm-svn: 67620
2009-03-24 16:16:53 +00:00
Anders Carlsson
b0ab31b7f6
Remove a task that's completed now.
...
llvm-svn: 67596
2009-03-24 01:25:56 +00:00
Anders Carlsson
b6da73f2e0
class.abstract is complete. Anything that doesn't work is a bug.
...
llvm-svn: 67595
2009-03-24 01:24:06 +00:00
Ted Kremenek
74250d1d68
Update checker build.
...
llvm-svn: 67584
2009-03-24 00:35:59 +00:00
Ted Kremenek
673a4eef07
Update checker build.
...
llvm-svn: 67553
2009-03-23 19:53:30 +00:00
Ted Kremenek
43e2deee22
Update checker build.
...
llvm-svn: 67498
2009-03-23 02:00:36 +00:00
Douglas Gregor
2460c0c37c
Link from the C++ status page to the open projects page
...
llvm-svn: 67399
2009-03-20 20:39:57 +00:00
Douglas Gregor
7262d1c003
Document some small- to mid-size open C++ projects
...
llvm-svn: 67398
2009-03-20 20:37:36 +00:00
Chris Lattner
308fdf6ee9
wording.
...
llvm-svn: 67337
2009-03-19 22:03:42 +00:00
Chris Lattner
8fda6749aa
add link to new page
...
llvm-svn: 67324
2009-03-19 18:58:22 +00:00
Chris Lattner
3d26bc8fdf
link to diags page.
...
llvm-svn: 67323
2009-03-19 18:57:33 +00:00
Chris Lattner
2302ee59e1
move most of the diags info out to its own file.
...
llvm-svn: 67321
2009-03-19 18:56:04 +00:00
Chris Lattner
136d84dbeb
split diagnostics examples out to its own file.
...
llvm-svn: 67318
2009-03-19 18:52:17 +00:00
Chris Lattner
480bb91b18
add a note
...
llvm-svn: 67290
2009-03-19 07:06:44 +00:00
Chris Lattner
2b7dbf4d0a
update our bragging about diagnostics. :)
...
llvm-svn: 67289
2009-03-19 06:52:51 +00:00
Ted Kremenek
bb93b788b7
Update checker build
...
llvm-svn: 67279
2009-03-19 01:51:49 +00:00
Ted Kremenek
b7e6aea63e
Update checker build.
...
llvm-svn: 67266
2009-03-19 00:20:07 +00:00
Anders Carlsson
bd1a1d2fa6
We support static_assert.
...
llvm-svn: 67043
2009-03-16 17:28:26 +00:00
Ted Kremenek
fcf7348f80
Update checker build.
...
llvm-svn: 66999
2009-03-14 00:46:46 +00:00
Ted Kremenek
80caa92255
Update checker build.
...
llvm-svn: 66926
2009-03-13 18:48:36 +00:00
Douglas Gregor
201217324a
Split get_involved into Get Involved and Open Projects pages
...
llvm-svn: 66891
2009-03-13 15:06:27 +00:00
Ted Kremenek
4d4d2277a9
Update checker build.
...
llvm-svn: 66855
2009-03-13 00:43:31 +00:00
Douglas Gregor
83e9e91479
Note some advances in our C++ support
...
llvm-svn: 66742
2009-03-12 00:09:31 +00:00
Ted Kremenek
4bb994a319
Update checker build.
...
llvm-svn: 66643
2009-03-11 06:11:39 +00:00
Chris Lattner
5013d3a893
update this, C headers don't need hacks anymore.
...
llvm-svn: 66544
2009-03-10 16:01:44 +00:00
Ted Kremenek
07393e0546
Update analyzer build.
...
llvm-svn: 66538
2009-03-10 07:03:32 +00:00
Ted Kremenek
623d2a3ce4
Update checker build.
...
llvm-svn: 66507
2009-03-09 23:45:57 +00:00
Ted Kremenek
62d9de7cae
Update checker build.
...
llvm-svn: 66226
2009-03-06 00:53:59 +00:00
Ted Kremenek
1d09f6a221
Update checker build.
...
llvm-svn: 66152
2009-03-05 07:55:15 +00:00
Daniel Dunbar
817b7692fb
Add new performance numbers; no discussion yet. Obvious two
...
conclusions are our PCH generation is way faster than gcc, and the
Python based driver kills compile times.
llvm-svn: 65980
2009-03-04 00:04:28 +00:00
Ted Kremenek
d62491a808
Update checker build.
...
llvm-svn: 65916
2009-03-03 01:44:57 +00:00
Ted Kremenek
8a56e5c29b
Update checker build.
...
llvm-svn: 65676
2009-02-28 02:04:49 +00:00
Ted Kremenek
918ae24edd
Update checker build.
...
llvm-svn: 65625
2009-02-27 07:16:04 +00:00
Gabor Greif
dd4ddf13a6
fix (hopefully) some validation errors
...
llvm-svn: 65455
2009-02-25 15:22:45 +00:00
Gabor Greif
267e01cb28
minor tweaks to readability
...
llvm-svn: 65440
2009-02-25 09:45:40 +00:00
Chris Lattner
d79eb11e22
update
...
llvm-svn: 65433
2009-02-25 05:43:33 +00:00
Chris Lattner
014d2ad55f
Headers are basically done, debug info is just about done (and
...
will improve a lot this week hopefully), and a libgcc replacement
is ready once I wrangle lawyers.
llvm-svn: 65432
2009-02-25 05:39:01 +00:00
Chris Lattner
a004a1846b
clang seems "generally useful" for c and objc by now, though obviously bugs
...
still remain.
llvm-svn: 65431
2009-02-25 05:35:47 +00:00
Ted Kremenek
7a164114f6
Update checker build.
...
llvm-svn: 65421
2009-02-25 00:54:41 +00:00
Ted Kremenek
80049e0b6f
Updated checker build.
...
llvm-svn: 65350
2009-02-23 23:37:29 +00:00
Ted Kremenek
cd25abed46
Update to checker-0.162 (fixed header issue in tar.bz2 package).
...
llvm-svn: 65283
2009-02-22 08:50:06 +00:00
Ted Kremenek
589aa282dd
Reverted back to checker-0.161 because of a header issue.
...
llvm-svn: 65281
2009-02-22 08:42:49 +00:00
Ted Kremenek
1f19573c84
Updated checker build.
...
llvm-svn: 65280
2009-02-22 08:38:12 +00:00
Ted Kremenek
bc7d915c4c
Update checker build.
...
llvm-svn: 65227
2009-02-21 06:58:08 +00:00
Ted Kremenek
193cbdcbe3
Update checker build.
...
llvm-svn: 65054
2009-02-19 19:08:21 +00:00
Ted Kremenek
1d1d39757a
Update checker build.
...
llvm-svn: 65033
2009-02-19 07:22:21 +00:00
Ted Kremenek
aa61951171
Fix comment: analyzer builds are universal binaries.
...
llvm-svn: 64950
2009-02-18 21:24:14 +00:00
Ted Kremenek
a16c98b97d
Update checker build.
...
llvm-svn: 64879
2009-02-18 03:09:29 +00:00
Ted Kremenek
386e590239
Update checker build.
...
llvm-svn: 64753
2009-02-17 07:47:57 +00:00
Cedric Venet
08438133da
Add svn:eol-style=native to some files
...
Correct two files with inconsistent lines endings.
llvm-svn: 64564
2009-02-14 20:20:19 +00:00
Ted Kremenek
10251c91a8
Update checker build.
...
llvm-svn: 64507
2009-02-13 23:41:12 +00:00
Ted Kremenek
0ae9df8377
Update checker build.
...
llvm-svn: 64365
2009-02-12 07:09:27 +00:00
Ted Kremenek
345749aff4
Update checker build.
...
llvm-svn: 64297
2009-02-11 07:50:23 +00:00
Ted Kremenek
f83882987e
Updated checker build.
...
llvm-svn: 64208
2009-02-10 07:38:50 +00:00
Ted Kremenek
a446e95891
Update checker build.
...
llvm-svn: 64190
2009-02-10 00:53:39 +00:00
Chris Lattner
10c16ca0b9
spell out explicitly
...
llvm-svn: 64129
2009-02-09 08:47:44 +00:00
Chris Lattner
f5e9242dd4
add doc
...
llvm-svn: 64128
2009-02-09 08:47:17 +00:00
Chris Lattner
cd2b504d5f
add another crazy idea :)
...
llvm-svn: 64092
2009-02-08 20:41:34 +00:00
Ted Kremenek
beb1ce6504
Updated checker build.
...
llvm-svn: 64071
2009-02-08 05:05:02 +00:00
Sebastian Redl
f3b5e27fee
Make const-initialized const integral variables I-C-Es in C++.
...
llvm-svn: 64015
2009-02-07 13:06:23 +00:00
Sebastian Redl
779dd9382d
Fill in C++ status table for section 7 (declarations).
...
llvm-svn: 64013
2009-02-07 12:42:13 +00:00
Sebastian Redl
112a976616
Implement dereferencing of pointers-to-member.
...
llvm-svn: 63983
2009-02-07 00:15:38 +00:00
Ted Kremenek
686a09d7b8
Updated checker build.
...
llvm-svn: 63897
2009-02-05 23:19:12 +00:00
Ted Kremenek
cc41c07227
Update checker build.
...
llvm-svn: 63869
2009-02-05 15:48:51 +00:00
Sebastian Redl
18f8ff62a3
Implement taking address of member functions, including overloaded ones.
...
llvm-svn: 63779
2009-02-04 21:23:32 +00:00
Ted Kremenek
77de9885f8
Update checker build.
...
llvm-svn: 63753
2009-02-04 19:09:38 +00:00
Douglas Gregor
7bad6d1d32
Argument Dependent Lookup is done (for now). Also, update the status
...
for a few other name-lookup sections.
llvm-svn: 63734
2009-02-04 15:07:16 +00:00
Chris Lattner
a4e0d1d177
codegen is much farther along than when this was first written.
...
llvm-svn: 63668
2009-02-03 21:54:08 +00:00
Chris Lattner
ab5d0ca71a
update a couple entries, add a new idea
...
llvm-svn: 63665
2009-02-03 21:51:37 +00:00
Ted Kremenek
a377abfe26
Update checker build.
...
llvm-svn: 63464
2009-01-31 01:32:23 +00:00
Douglas Gregor
d14247a9e5
Implement and test aggregate initialization in C++. Major changes:
...
- Support initialization of reference members; complain if any
reference members are left uninitialized.
- Use C++ copy-initialization for initializing each element (falls
back to constraint checking in C)
- Make sure we diagnose when one tries to provide an initializer
list for a non-aggregate.
- Don't complain about empty initializers in C++ (they are permitted)
- Unrelated but necessary: don't bother trying to convert the
decl-specifier-seq to a type when we're dealing with a C++
constructor, destructor, or conversion operator; it results in
spurious warnings.
llvm-svn: 63431
2009-01-30 22:09:00 +00:00
Sebastian Redl
ed8f200318
Implement pointer to member handling in static_cast.
...
Fix a stupid mistake in UnwrapSimilarPointers that made any two member pointers compatible as long as the pointee was the same.
Make a few style corrections as suggested by Chris.
llvm-svn: 63215
2009-01-28 18:33:18 +00:00
Douglas Gregor
fb03466388
Complete semantic checking for typedef redeclarations in C++. The
...
rules are slightly different than in C, and now we handle both
dialects properly.
llvm-svn: 63211
2009-01-28 17:15:10 +00:00
Ted Kremenek
cdca288cf8
Updated checker build.
...
llvm-svn: 63200
2009-01-28 15:05:42 +00:00
Sebastian Redl
a5a77a6dc6
Add handling of member pointers to reinterpret_cast.
...
llvm-svn: 63150
2009-01-27 23:18:31 +00:00
Ted Kremenek
3efd355b9d
Updated checker build.
...
llvm-svn: 63140
2009-01-27 22:24:33 +00:00
Sebastian Redl
b44ab5f25d
Add support for member pointers to const_cast.
...
llvm-svn: 63055
2009-01-26 22:19:12 +00:00
Sebastian Redl
cf8e1fa58e
Update C++ status table with new member pointer conversion capabilities.
...
llvm-svn: 62977
2009-01-26 00:11:25 +00:00
Ted Kremenek
b239341ec4
Updated checker build.
...
llvm-svn: 62914
2009-01-24 08:11:59 +00:00
Ted Kremenek
94e826df0b
Updated checker build.
...
llvm-svn: 62818
2009-01-23 00:11:54 +00:00
Ted Kremenek
b46aead702
Updated checker build.
...
llvm-svn: 62655
2009-01-21 01:41:30 +00:00
Eli Friedman
75a495b495
Pixel font sizes are evil.
...
llvm-svn: 62586
2009-01-20 17:56:18 +00:00
Ted Kremenek
1da5987cb9
Update checker build.
...
llvm-svn: 62409
2009-01-17 06:41:35 +00:00
Ted Kremenek
f5359ea9d0
Updated checker build.
...
llvm-svn: 62379
2009-01-16 23:26:38 +00:00
Douglas Gregor
5fb5397238
Introduce support for C++0x explicit conversion operators (N2437)
...
Small cleanup in the handling of user-defined conversions.
Also, implement an optimization when constructing a call. We avoid
recomputing implicit conversion sequences and instead use those
conversion sequences that we computed as part of overload resolution.
llvm-svn: 62231
2009-01-14 15:45:31 +00:00
Ted Kremenek
f9d3f0711a
Updated checker build.
...
llvm-svn: 62137
2009-01-13 01:41:37 +00:00
Douglas Gregor
c5e61070f6
Add the proper restrictions on the left-hand argument of a built-in
...
assignment operator candidate (C++ [over.match.oper]p4).
llvm-svn: 62128
2009-01-13 00:52:54 +00:00
Douglas Gregor
ae5e28578c
Update C++ status and add a few more tests of overloading for member function calls
...
llvm-svn: 62121
2009-01-12 23:20:38 +00:00
Douglas Gregor
f4d332797b
Finished semantic analysis of anonymous unions in C++.
...
Duplicate-member checking within classes is still a little messy, and
anonymous unions are still completely broken in C. We'll need to unify
the handling of fields in C and C++ to make this code applicable in
both languages.
llvm-svn: 61878
2009-01-07 19:46:03 +00:00
Ted Kremenek
4cfd63b5a4
Update checker build.
...
llvm-svn: 61843
2009-01-07 01:10:24 +00:00
Douglas Gregor
d7c4d984d0
Parser support for C++ using directives, from Piotr Rak
...
llvm-svn: 61486
2008-12-30 03:27:21 +00:00
Sebastian Redl
58097c79c2
Fill in C++ status table for statements.
...
llvm-svn: 61457
2008-12-28 17:18:13 +00:00
Sebastian Redl
e10c2c32af
Implement checks for bool in increment and decrement.
...
llvm-svn: 61275
2008-12-20 09:35:34 +00:00
Ted Kremenek
ab66b87f7f
Updated checker build.
...
llvm-svn: 61273
2008-12-20 02:16:48 +00:00
Ted Kremenek
dde7df9de2
Updated checker build.
...
llvm-svn: 61233
2008-12-19 00:19:19 +00:00
Ted Kremenek
a1fd586dca
Updated checker build.
...
llvm-svn: 61173
2008-12-17 23:55:41 +00:00
Ted Kremenek
be3864ae6f
Updated checker build.
...
llvm-svn: 61151
2008-12-17 21:02:35 +00:00
Douglas Gregor
dd12c786a0
Added a test for default arguments added to out-of-line member
...
functions. They work except that name lookup within the default
arguments needs to be deferred until the class definition is complete
(see FIXME in the test).
llvm-svn: 61059
2008-12-16 00:08:34 +00:00
Ted Kremenek
d2f9cd1cbd
Updated checker build.
...
llvm-svn: 61002
2008-12-14 01:25:59 +00:00
Ted Kremenek
0bc1320d95
Updated checker build.
...
llvm-svn: 60864
2008-12-11 00:20:13 +00:00
Ted Kremenek
a30391c31f
Updated checker build.
...
llvm-svn: 60819
2008-12-10 00:50:24 +00:00
Sebastian Redl
e0c2affc5e
Fill in C++ status table for expressions.
...
llvm-svn: 60763
2008-12-09 14:40:01 +00:00
Sebastian Redl
82639aff7b
Fill in some parts of cxx_status.html
...
llvm-svn: 60699
2008-12-08 16:24:08 +00:00
Sebastian Redl
5c6ebcc198
Parsing new and delete is now complete.
...
llvm-svn: 60425
2008-12-02 17:22:40 +00:00
Sebastian Redl
351bb78a10
Handle new by passing the Declaration to the Action, not a processed type.
...
llvm-svn: 60413
2008-12-02 14:43:59 +00:00
Nuno Lopes
6cdcbd1f95
add note about running the test suite with valgrind
...
llvm-svn: 60029
2008-11-25 15:46:06 +00:00
Douglas Gregor
8e3e16ed2e
Update C++ status
...
llvm-svn: 59735
2008-11-20 16:46:32 +00:00
Douglas Gregor
ab7897ac44
Implement the rest of C++ [over.call.object], which permits the object
...
being called to be converted to a reference-to-function,
pointer-to-function, or reference-to-pointer-to-function. This is done
through "surrogate" candidate functions that model the conversions
from the object to the function (reference/pointer) and the
conversions in the arguments.
llvm-svn: 59674
2008-11-19 22:57:39 +00:00
Douglas Gregor
91cea0ad1e
Support for calling overloaded function call operators (operator())
...
with function call syntax, e.g.,
Functor f;
f(x, y);
This is the easy part of handling calls to objects of class type
(C++ [over.call.object]). The hard part (coping with conversions from
f to function pointer or reference types) will come later. Nobody uses
that stuff anyway, right? :)
llvm-svn: 59663
2008-11-19 21:05:33 +00:00
Douglas Gregor
40412acc02
Support overloading of the subscript operator[], including support for
...
built-in operator candidates. Test overloading of '&' and ','.
In C++, a comma expression is an lvalue if its right-hand
subexpression is an lvalue. Update Expr::isLvalue accordingly.
llvm-svn: 59643
2008-11-19 17:17:41 +00:00
Douglas Gregor
d08452f60a
Added operator overloading for unary operators, post-increment, and
...
post-decrement, including support for generating all of the built-in
operator candidates for these operators.
C++ and C have different rules for the arguments to the builtin unary
'+' and '-'. Implemented both variants in Sema::ActOnUnaryOp.
In C++, pre-increment and pre-decrement return lvalues. Update
Expr::isLvalue accordingly.
llvm-svn: 59638
2008-11-19 15:42:04 +00:00
Ted Kremenek
29704928b7
Updated checker build.
...
llvm-svn: 59591
2008-11-19 05:46:43 +00:00
Daniel Dunbar
bf45c9a4e4
Add some quick notes on the clang tests and running the LLVM test
...
suite with clang.
llvm-svn: 59536
2008-11-18 17:56:21 +00:00
Ted Kremenek
ee4fa9cfbb
Updated checker build.
...
llvm-svn: 59503
2008-11-18 07:27:02 +00:00
Ted Kremenek
f9f58f085d
Updated checker build.
...
llvm-svn: 59457
2008-11-17 19:26:13 +00:00
Ted Kremenek
9f748e23e3
Updated checker build.
...
llvm-svn: 59353
2008-11-15 04:57:19 +00:00
Sebastian Redl
ccdfabab35
Implement parsing and semantic checking of the 'mutable' keyword.
...
Thanks to Doug for the review. Actual effects of mutable to follow.
llvm-svn: 59331
2008-11-14 23:42:31 +00:00
Daniel Dunbar
62efa23518
Fix some validation errors.
...
llvm-svn: 59272
2008-11-13 23:01:34 +00:00
Daniel Dunbar
ed40bc19c9
Start a "hacking" page with some simple notes on getting started
...
developing clang.
llvm-svn: 59270
2008-11-13 22:49:41 +00:00
Ted Kremenek
83844100fb
Revert to older checker build.
...
llvm-svn: 59209
2008-11-13 01:30:19 +00:00
Ted Kremenek
d0e32791d5
Update checker build.
...
llvm-svn: 59206
2008-11-13 01:23:50 +00:00
Ted Kremenek
e9c16a6a79
Updated checker build.
...
llvm-svn: 59195
2008-11-12 23:26:57 +00:00
Sebastian Redl
c470476420
Implement C++ 'typeid' parsing and sema.
...
llvm-svn: 59042
2008-11-11 11:37:55 +00:00
Douglas Gregor
cd695e500d
Basic support for taking the address of an overloaded function
...
llvm-svn: 59000
2008-11-10 20:40:00 +00:00
Sebastian Redl
e0b2b1bf8c
Update C++ status: class support improved due to nested name parsing.
...
llvm-svn: 58932
2008-11-09 11:32:32 +00:00
Sebastian Redl
f4485de48a
Update C++ status to reflect parser capabilities for chapter 9 (classes). Slightly extend the class parser test.
...
llvm-svn: 58909
2008-11-08 15:40:37 +00:00
Sebastian Redl
2e133e47aa
Update C++ status: dynamic_cast is sema-complete.
...
llvm-svn: 58907
2008-11-08 14:43:13 +00:00
Cedric Venet
571c662350
Use css style instead of hard coded color in cxx_status. No visible change.
...
llvm-svn: 58867
2008-11-07 22:24:44 +00:00
Ted Kremenek
47a6235491
Updated checker build.
...
llvm-svn: 58864
2008-11-07 20:55:59 +00:00
Douglas Gregor
60e64cfc43
Update C++ status
...
llvm-svn: 58862
2008-11-07 20:16:04 +00:00
Douglas Gregor
7d5fc7e28b
Initial, rudimentary implementation of operator overloading for binary
...
operators. For example, one can now write "x + y" where x or y is a
class or enumeration type, and Clang will perform overload resolution
for "+" based on the overloaded operators it finds.
The other kinds of overloadable operators in C++ will follow this same
approach.
Three major issues remain:
1) We don't find member operators
2) Since we don't have user-defined conversion operators, we can't
call any of the built-in overloaded operators in C++ [over.built].
3) Once we've done the semantic checks, we drop the overloaded
operator on the floor; it doesn't get into the AST at all.
llvm-svn: 58821
2008-11-06 23:29:22 +00:00
Douglas Gregor
11d0c4c098
Parsing, ASTs, and semantic analysis for the declaration of overloaded
...
operators in C++. Overloaded operators can be called directly via
their operator-function-ids, e.g., "operator+(foo, bar)", but we don't
yet implement the semantics of operator overloading to handle, e.g.,
"foo + bar".
llvm-svn: 58817
2008-11-06 22:13:31 +00:00
Ted Kremenek
efc44cbf1f
Updated checker build.
...
llvm-svn: 58776
2008-11-05 22:47:25 +00:00
Douglas Gregor
831c93f6c0
Parsing, representation, and preliminary semantic analysis of destructors.
...
Implicit declaration of destructors (when necessary).
Extended Declarator to store information about parsed constructors
and destructors; this will be extended to deal with declarators that
name overloaded operators (e.g., "operator +") and user-defined
conversion operators (e.g., "operator int").
llvm-svn: 58767
2008-11-05 20:51:48 +00:00
Douglas Gregor
e8381c00eb
Initial implementation of parsing, semantic analysis, and AST-building
...
for constructor initializations, e.g.,
class A { };
class B : public A {
int m;
public:
B() : A(), m(17) { };
};
llvm-svn: 58749
2008-11-05 04:29:56 +00:00
Daniel Dunbar
40346506f1
Remove stray character.
...
llvm-svn: 58713
2008-11-04 18:44:31 +00:00
Douglas Gregor
242ee9dfae
Fine-grained C++ status page
...
llvm-svn: 58699
2008-11-04 15:52:45 +00:00
Ted Kremenek
307b2c4078
Updated checker build.
...
llvm-svn: 58672
2008-11-04 01:24:32 +00:00
Ted Kremenek
a3199323fe
Updated checker build.
...
llvm-svn: 58658
2008-11-04 00:03:24 +00:00
Daniel Dunbar
925dc26d51
Clarify performance experiments description based on feedback from
...
Eric C, thanks!
llvm-svn: 58634
2008-11-03 20:03:58 +00:00
Chris Lattner
ce149def9d
minor tweaks.
...
llvm-svn: 58545
2008-11-01 01:46:51 +00:00
Daniel Dunbar
05f13bcc2c
Grammar tweaks.
...
llvm-svn: 58544
2008-11-01 01:24:31 +00:00
Daniel Dunbar
13569f8dd6
Add recent timing results to web page.
...
llvm-svn: 58542
2008-11-01 01:14:36 +00:00
Ted Kremenek
883af75f01
Updated checker build.
...
llvm-svn: 58473
2008-10-30 23:41:37 +00:00
Daniel Dunbar
def9076430
Fix specification references link.
...
llvm-svn: 58412
2008-10-30 00:53:12 +00:00
Ted Kremenek
f521e4a90b
Update checker build.
...
llvm-svn: 58369
2008-10-29 06:19:03 +00:00
Ted Kremenek
02f9fd4a6c
Update checker build.
...
llvm-svn: 58289
2008-10-27 22:42:11 +00:00
Ted Kremenek
bb913f2369
Updated checker build.
...
llvm-svn: 58125
2008-10-24 22:34:49 +00:00
Daniel Dunbar
c157586598
Add ViewVC link from web page.
...
llvm-svn: 58119
2008-10-24 21:31:50 +00:00
Ted Kremenek
dfaeaed0f6
Updated checker build.
...
llvm-svn: 58027
2008-10-23 02:50:14 +00:00
Ted Kremenek
a08a05e541
Updated checker build.
...
llvm-svn: 58005
2008-10-22 21:53:52 +00:00
Ted Kremenek
7c3a364355
Update server URL for checker build.
...
llvm-svn: 57981
2008-10-22 15:33:19 +00:00
Ted Kremenek
518b17e8f3
Updated checker build.
...
llvm-svn: 57931
2008-10-21 21:56:56 +00:00
Ted Kremenek
9667b7c9c0
Updated checker build
...
llvm-svn: 57890
2008-10-21 04:32:44 +00:00
Ted Kremenek
e76edcfc65
Updated checker build
...
llvm-svn: 57808
2008-10-20 06:58:23 +00:00
Ted Kremenek
cfb049c832
Updated checker build
...
llvm-svn: 57775
2008-10-18 21:03:40 +00:00
Ted Kremenek
43a9d7f3f0
Updated checker build.
...
llvm-svn: 57764
2008-10-18 05:12:17 +00:00
Ted Kremenek
944375abae
Update checker build.
...
llvm-svn: 57303
2008-10-08 18:32:06 +00:00
Ted Kremenek
3b670d1a0c
Updated checker build.
...
llvm-svn: 57176
2008-10-06 15:46:11 +00:00
Ted Kremenek
d1036be0ef
Updated checker build.
...
llvm-svn: 57045
2008-10-04 06:53:56 +00:00
Ted Kremenek
e8ce52e44b
Updated checker build.
...
llvm-svn: 56916
2008-10-01 05:27:13 +00:00
Ted Kremenek
f56afd7cdd
Update checker build.
...
llvm-svn: 56909
2008-10-01 02:03:02 +00:00
Ted Kremenek
b6c459ea13
Updated checker build.
...
llvm-svn: 56863
2008-09-30 17:53:26 +00:00
Ted Kremenek
7273d01dd4
Updated checker build.
...
llvm-svn: 56819
2008-09-29 23:33:12 +00:00
Ted Kremenek
01c61b9b2a
Update checker build.
...
llvm-svn: 56804
2008-09-29 21:24:37 +00:00
Ted Kremenek
c1048153fe
Updated checker build.
...
llvm-svn: 56774
2008-09-28 17:25:56 +00:00
Ted Kremenek
928f484c2d
Updated checker build.
...
llvm-svn: 56701
2008-09-26 22:00:01 +00:00
Ted Kremenek
a69637ba6d
Updated checker build.
...
llvm-svn: 56666
2008-09-26 17:04:34 +00:00
Ted Kremenek
894036d2cd
Updated checker build.
...
llvm-svn: 56633
2008-09-26 00:50:00 +00:00
Ted Kremenek
26971ffcc5
Update checker build.
...
llvm-svn: 56562
2008-09-24 17:45:52 +00:00
Ted Kremenek
90b91de03b
Updated checker build.
...
llvm-svn: 56484
2008-09-23 00:30:34 +00:00
Ted Kremenek
dd186c638e
Updated checker build
...
llvm-svn: 56430
2008-09-22 06:11:08 +00:00
Ted Kremenek
37202acdff
Update checker build
...
llvm-svn: 56367
2008-09-19 20:20:09 +00:00
Ted Kremenek
9a7e2efec0
Updated checker build.
...
llvm-svn: 56333
2008-09-19 05:14:13 +00:00
Ted Kremenek
45a928b956
Updated checker build.
...
llvm-svn: 56274
2008-09-17 04:22:09 +00:00
Ted Kremenek
5f09b1dece
Updated checker build.
...
llvm-svn: 56177
2008-09-13 00:23:41 +00:00
Daniel Dunbar
229121df87
Add website links to testing coverage & specification references.
...
llvm-svn: 56167
2008-09-12 18:33:44 +00:00
Ted Kremenek
d3f0d9b07c
Updated checker build.
...
llvm-svn: 56142
2008-09-12 04:56:58 +00:00
Ted Kremenek
f82dab1a7a
Updated checker build.
...
llvm-svn: 55810
2008-09-04 23:13:30 +00:00
Ted Kremenek
82aa5aba93
Updated checker build.
...
llvm-svn: 55757
2008-09-04 02:36:37 +00:00
Ted Kremenek
fd8ede33db
Updated checker build.
...
llvm-svn: 55618
2008-09-01 22:51:34 +00:00
Ted Kremenek
8af7e8b650
Updated checker build.
...
llvm-svn: 55613
2008-09-01 20:13:28 +00:00
Ted Kremenek
c400511a55
Updated analyzer build.
...
llvm-svn: 55505
2008-08-28 22:15:34 +00:00
Ted Kremenek
c1cf430051
Update checker build.
...
llvm-svn: 55455
2008-08-28 01:42:51 +00:00
Ted Kremenek
5bc033b934
Update checker build.
...
llvm-svn: 55447
2008-08-27 22:49:55 +00:00
Nico Weber
9f0f805bf9
make www less outdated
...
llvm-svn: 55388
2008-08-26 21:36:37 +00:00
Nico Weber
677a021665
update documentation
...
llvm-svn: 55386
2008-08-26 21:23:32 +00:00
Ted Kremenek
92adb8d605
Update checker build.
...
llvm-svn: 55337
2008-08-25 21:27:06 +00:00
Chris Lattner
ab18099c98
other updates
...
llvm-svn: 55278
2008-08-24 05:56:54 +00:00
Chris Lattner
8659651a12
link to c++ status page
...
llvm-svn: 55277
2008-08-24 05:44:37 +00:00
Chris Lattner
d0449107d6
codegen is still not 'finished', but in a better state than before.
...
llvm-svn: 55276
2008-08-24 05:42:07 +00:00
Daniel Dunbar
9f92361f80
Add some QA related example clang projects.
...
llvm-svn: 55196
2008-08-22 20:18:22 +00:00
Ted Kremenek
834c57db34
Updated checker build.
...
llvm-svn: 55169
2008-08-22 05:14:28 +00:00
Ted Kremenek
8af2d655ab
Updated latest checker build.
...
llvm-svn: 55162
2008-08-22 03:06:47 +00:00
Ted Kremenek
d0cb5056b0
Fix URL typo.
...
llvm-svn: 55066
2008-08-20 17:20:54 +00:00
Ted Kremenek
ec2875d715
Updated checker build.
...
llvm-svn: 55065
2008-08-20 17:19:58 +00:00
Ted Kremenek
55a3c78835
Update checker-78.
...
llvm-svn: 54970
2008-08-19 01:17:30 +00:00
Ted Kremenek
093045b011
Updated latest checker build.
...
llvm-svn: 54808
2008-08-14 23:35:31 +00:00
Ted Kremenek
88f001c4e3
Updated latest checker build.
...
llvm-svn: 54720
2008-08-13 04:12:49 +00:00
Argyrios Kyrtzidis
379d2edc29
Mention 'wchar_t' at the C++ status page.
...
llvm-svn: 54595
2008-08-09 22:12:36 +00:00
Ted Kremenek
8f50b64eef
Updated checker build.
...
llvm-svn: 54566
2008-08-09 00:22:35 +00:00