Daniel Dunbar
f5c18461e3
Lift out GetNamedIvarList.
...
Drop uses of GetFirstInvarInRecord, instead we lookup the ivars we
know are in the record.
- This is somewhat less efficient, but I need to detangle this code
first...
llvm-svn: 69579
2009-04-20 06:54:31 +00:00
Daniel Dunbar
c040ce459c
Make FieldDecl parameter to getObjCEncodingForType... const.
...
llvm-svn: 69578
2009-04-20 06:37:24 +00:00
Zhongxing Xu
3070210377
Remove loc::FuncVal.
...
llvm-svn: 69577
2009-04-20 06:35:22 +00:00
Chris Lattner
396b9c380a
more stuff.
...
llvm-svn: 69576
2009-04-20 06:26:18 +00:00
Daniel Dunbar
69a79b1a60
Don't crash in the diagnostic printer if we happen to get passed a
...
null string / identifier.
llvm-svn: 69575
2009-04-20 06:13:16 +00:00
Sanjiv Gupta
428d490332
Before trying to introduce/eliminate cast/ext/trunc to make indices type as
...
pointer type, make sure that the pointer size is a valid sequential index type.
llvm-svn: 69574
2009-04-20 06:05:54 +00:00
Chris Lattner
5ed5e9a612
add a bunch of diagnostics options, add one example warning group.
...
llvm-svn: 69573
2009-04-20 06:00:23 +00:00
Daniel Dunbar
caec0238bc
Don't emit ivar offsets for unnamed bit fields.
...
Also, added assertion that the field matches what would be looked up.
llvm-svn: 69572
2009-04-20 05:53:40 +00:00
Chris Lattner
bc002ebd03
Add option groups for -Wimplicit-int and -Wimplicit.
...
remove special case hack for -Werror-implicit-function-declaration
llvm-svn: 69571
2009-04-20 05:45:34 +00:00
Zhongxing Xu
ac1294318d
get a CodeTextRegion when visiting FunctionDecl reference.
...
get FunctionDecl with more general utility method.
llvm-svn: 69570
2009-04-20 05:24:46 +00:00
Chris Lattner
6840825137
slurp some content from the PTH doc into the user's doc.
...
llvm-svn: 69569
2009-04-20 04:37:38 +00:00
Chris Lattner
f9d8913b80
initial skeleton of a user's manual.
...
llvm-svn: 69568
2009-04-20 04:23:09 +00:00
Eli Friedman
bc633beda4
PR3247: Handle a couple of cases where we weren't emitting VLA sizes (and
...
subsequently crashed).
llvm-svn: 69567
2009-04-20 03:54:15 +00:00
Eli Friedman
3253e189c6
PR3248: Make sure the evaluate the operand of a sizeof when it has a VLA type.
...
Adapted from patch by Tim Northover.
llvm-svn: 69566
2009-04-20 03:21:44 +00:00
Zhongxing Xu
23e1f45664
As we now have ValueManager as the new value factory, we do not need factory
...
methods of SVal.
llvm-svn: 69565
2009-04-20 02:27:09 +00:00
Eli Friedman
7de03e1950
Hook up -Wunused-value to the unused expression warning. This is
...
useful for macro-heavy codebases that tend to trigger this warning a
lot.
Note that a make clean is required to get the option working; the
dependencies for DiagnosticGroups.inc appear to be broken.
llvm-svn: 69564
2009-04-20 01:56:54 +00:00
Daniel Dunbar
5d5dbb1754
Remove non-const form of lookupFieldDeclForIvar.
...
llvm-svn: 69563
2009-04-20 00:37:55 +00:00
Daniel Dunbar
ae03226bc6
Comment fixes.
...
llvm-svn: 69562
2009-04-20 00:33:43 +00:00
Daniel Dunbar
554fd79b38
Lift GetClassSizeInfo out of GenerateClass, add a FIXME.
...
- No functionality change.
llvm-svn: 69561
2009-04-19 23:41:48 +00:00
Chris Lattner
504af1177d
implement "#pragma GCC diagnostic". Besides being a nice feature, this
...
will let us test for multiple different warning modes in the same
file in regression tests.
This implements rdar://2362963, a 10-year old feature request :)
llvm-svn: 69560
2009-04-19 23:16:58 +00:00
Chris Lattner
c6fafed04c
move group twiddling options into Diagnostic.cpp instead of
...
Warnings.cpp. Warnings.cpp now doesn't need to #include
tblgen produced output directly.
llvm-svn: 69559
2009-04-19 22:34:23 +00:00
Chris Lattner
3251e3cfaa
don't crash on invalid ranges in -fprint-source-range-info
...
mode, just ignore them as usual.
llvm-svn: 69558
2009-04-19 22:24:10 +00:00
Chris Lattner
ddddff4f41
Fix PR4007: clang doesn't know -Werror-foo is the same as -Werror=foo
...
llvm-svn: 69557
2009-04-19 22:07:21 +00:00
Chris Lattner
df2226839f
Warn about uses of #pragma STDC FENV_ACCESS ON, since we don't
...
support it. I don't know what evaluation method we use for complex
arithmetic, so I don't know whether/if we should warn about use of
CX_LIMITED_RANGE.
This concludes my planned hacking on STDC pragmas, flame away :)
llvm-svn: 69556
2009-04-19 21:55:32 +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
Chris Lattner
02ef4e3dba
diagnose invalid syntax of STDC pragmas.
...
llvm-svn: 69554
2009-04-19 21:50:08 +00:00
Eli Friedman
daea3f62b5
Print an error for uses of __thread on targets which don't support it.
...
llvm-svn: 69553
2009-04-19 21:48:33 +00:00
Eli Friedman
d88c8a104f
Add target property for whether thread-local storage is supported.
...
Let me know if I messed up for some target. Note that for Windows, we
should be able to support it (MSVC supports "__declspec(thread)"), but
I'm pretty sure LLVM doesn't know how to generate the correct code.
llvm-svn: 69552
2009-04-19 21:38:35 +00:00
Chris Lattner
a0b1f76d10
reject invalid stuff in the STDC namespace.
...
llvm-svn: 69551
2009-04-19 21:25:37 +00:00
Chris Lattner
958ee04368
stub out STDC #pragmas.
...
llvm-svn: 69550
2009-04-19 21:20:35 +00:00
Daniel Dunbar
f5e9b1f5d0
Forward f[no-]dollars-in-identifiers to clang, when specified.
...
llvm-svn: 69549
2009-04-19 21:20:32 +00:00
Sebastian Redl
0753c6f591
Bring member pointer operands of the conditional operator to a common type. We're getting there ...
...
llvm-svn: 69548
2009-04-19 21:15:26 +00:00
Chris Lattner
21656f22db
basic support for -Wunknown-pragmas, more coming.
...
llvm-svn: 69547
2009-04-19 21:10:26 +00:00
Daniel Dunbar
8281bdeb4d
Forward -fno-diagnostics-fixit-info to clang-cc.
...
llvm-svn: 69546
2009-04-19 21:09:34 +00:00
Eli Friedman
4f856744e5
PR3853: Add CodeGen support for __thread.
...
llvm-svn: 69545
2009-04-19 21:05:03 +00:00
Chris Lattner
1c1a00cf51
move token paste poisoning diagnostics to after the instantiation loc
...
for a token is set, this makes the diagnostic "expanded from stack" work
for this diagnostic. Add a testcase for PR3918.
llvm-svn: 69544
2009-04-19 20:29:42 +00:00
Eli Friedman
08a375b954
Tests for __thread specifier.
...
llvm-svn: 69543
2009-04-19 20:29:08 +00:00
Eli Friedman
d5c0eeda72
Add more thorough/correct checking for invalid __thread specifiers.
...
llvm-svn: 69542
2009-04-19 20:27:55 +00:00
Eli Friedman
fe92e701aa
Silence gcc warning.
...
llvm-svn: 69541
2009-04-19 20:21:56 +00:00
Chris Lattner
db41ddf756
pick a smaller header, one that we control to test this.
...
llvm-svn: 69540
2009-04-19 20:18:57 +00:00
Chris Lattner
1dc5219a0a
rename test for consistency with other pragma test.
...
llvm-svn: 69539
2009-04-19 20:16:27 +00:00
Chris Lattner
0e71dbf9f0
merge pragma poison tests into one file with -verify mode.
...
llvm-svn: 69538
2009-04-19 20:15:59 +00:00
Chris Lattner
ab9d51cfc4
merge two tests
...
llvm-svn: 69537
2009-04-19 20:10:12 +00:00
Chris Lattner
da4ebb8921
Fix PR3918: Invalid use of __VA_ARGS__ not diagnosed,
...
by rejecting invalid poisoned tokens in the token
pasting path.
llvm-svn: 69536
2009-04-19 20:06:32 +00:00
Sebastian Redl
3b7ef5e374
Another piece of the conditional operator puzzle. We'll want to use FindCompositePointerType in some other places, too.
...
llvm-svn: 69534
2009-04-19 19:26:31 +00:00
Chris Lattner
1377dc4c79
convert to -verify mode.
...
llvm-svn: 69532
2009-04-19 18:54:13 +00:00
Nick Lewycky
0575dbb692
Use an AssertingVH to detect the case where the Function was deleted but
...
freeMachineCodeForFunction was never called.
llvm-svn: 69531
2009-04-19 18:32:03 +00:00
Chris Lattner
249c38bb02
Fix PR4006, incorrect handling of __VA_ARGS__ when it was the first token
...
in a function-like macro body. This has the added bonus of moving some
function-like macro specific code out of the object-like macro codepath.
llvm-svn: 69530
2009-04-19 18:26:34 +00:00
Nick Lewycky
fc5571337e
Fix missing text in doxygen documentation.
...
llvm-svn: 69529
2009-04-19 18:20:21 +00:00
Chris Lattner
6df41af7fb
actually just do this on all x86 targets, it won't hurt
...
non-glibc ones.
llvm-svn: 69528
2009-04-19 17:32:33 +00:00