]>
granicus.if.org Git - clang/log
Daniel Dunbar [Tue, 21 Apr 2009 01:18:01 +0000 (01:18 +0000)]
Kill ASTContext::[gs]etFieldForDecl, instead we just lookup things
when we need them -- which is exactly what some code was already
doing!
- No intended functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69646
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Tue, 21 Apr 2009 00:51:43 +0000 (00:51 +0000)]
Fixup codegen for write barriers for block variables. Radar
6786715
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69642
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 21 Apr 2009 00:49:20 +0000 (00:49 +0000)]
Remove LateBoundIVars() runtime interface, it is unused.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69641
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 21 Apr 2009 00:41:40 +0000 (00:41 +0000)]
Assert on a few conditions that (I believe) should hold
w.r.t. ASTContext::[gs]etFieldDecl, and the Field argument to
EmitObjCValueForIvar).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69639
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 21 Apr 2009 00:25:10 +0000 (00:25 +0000)]
Look at the TMP environment variable as well.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69638
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 20 Apr 2009 23:53:56 +0000 (23:53 +0000)]
Update this (non-default) test case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69636
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Mon, 20 Apr 2009 22:03:45 +0000 (22:03 +0000)]
ObjC2's Ivar bitmap layout work. No change in functionality.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69629
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 20 Apr 2009 21:52:34 +0000 (21:52 +0000)]
Mark TypeForDecl mutable.
- Let the const propogation begin.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69628
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 20 Apr 2009 21:08:10 +0000 (21:08 +0000)]
fix the second half of PR4006 and rdar://
6807000 by treating
() as being either zero arguments or one empty argument depending
on situation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69627
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 20 Apr 2009 20:36:09 +0000 (20:36 +0000)]
Write the identifier table into the PCH file as an on-disk hash table
that also includes the contents of the IdentifierInfo itself (the
various fields and flags, along with the chain of identifiers visible
at the top level that have that name).
We don't make any use of the hash table yet, except that our
identifier ID -> string mapping points into the hash table now.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69625
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Mon, 20 Apr 2009 20:31:10 +0000 (20:31 +0000)]
Fix tyop in SSSE3 header (
6808876 ).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69623
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 20 Apr 2009 20:28:21 +0000 (20:28 +0000)]
Also look at the TEMP environment variable as a place to put temporary
files.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69622
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 20 Apr 2009 20:18:54 +0000 (20:18 +0000)]
Move countInheritedIvars to within striking distance of
GetClassSizeInfo
Reduce nesting in GetInterfaceDeclStructLayout.
Tweak some comments.
No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69621
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Mon, 20 Apr 2009 20:16:02 +0000 (20:16 +0000)]
Fix spelling error.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69620
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Mon, 20 Apr 2009 20:09:33 +0000 (20:09 +0000)]
Add pch reader/writer support for ObjCContainerDecl, ObjCInterfaceDecl, & ObjCIvarDecl.
Next step: Add selector support to PCHWriter::AddDeclarationName().
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69619
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 20 Apr 2009 19:12:28 +0000 (19:12 +0000)]
the __gnuc_inline__ attribute is actually named __gnu_inline__,
PR4023
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69618
91177308 -0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Mon, 20 Apr 2009 19:07:55 +0000 (19:07 +0000)]
Add test case to check line number in debug info.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69617
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 20 Apr 2009 19:03:54 +0000 (19:03 +0000)]
Allow the Info type used in the on-disk hash table generator to have state
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69616
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 20 Apr 2009 17:32:49 +0000 (17:32 +0000)]
If defined, use TMPDIR environment variable as location for temporary files.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69609
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 20 Apr 2009 17:29:38 +0000 (17:29 +0000)]
clean up anonymous bitfield diagnostics, PR4017
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69608
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 20 Apr 2009 15:53:59 +0000 (15:53 +0000)]
Introduce the notion of a SemaConsumer, which is an ASTConsumer that
also gets access to the Sema object performing semantic analysis. This
will be used by the PCH writer to serialize Sema state.
No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69595
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Mon, 20 Apr 2009 15:06:07 +0000 (15:06 +0000)]
Add pch reader/writer support for ObjCMethodDecl.
Test will be enabled with ObjCInterfaceDecl is added.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69594
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Mon, 20 Apr 2009 10:09:10 +0000 (10:09 +0000)]
update the doc.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69587
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Mon, 20 Apr 2009 08:23:18 +0000 (08:23 +0000)]
Some cleanup and bug-fixing for address-of checking. This causes a couple of
minor accepts-invalid regressions, but we weren't really rejecting them for
the right reason. We really need a more general solution to detect all the
cases of the promotion of arrays with a register storage class.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69586
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 20 Apr 2009 07:36:26 +0000 (07:36 +0000)]
Make the on-disk hash table usable with non-file
raw_ostreams. Requires LLVM r69583.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69584
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 20 Apr 2009 07:18:49 +0000 (07:18 +0000)]
Inline GetFirstIvarInRecord into sole caller.
- No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69582
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 20 Apr 2009 07:11:47 +0000 (07:11 +0000)]
Set a bit in IMAGE_INFO to indicate that we don't contain any
@synthesized ivars for superclasses.
- <rdar://problem/
6806371 > [clang] Mark code without miscompiled
@synthesized properties
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69581
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 20 Apr 2009 07:08:21 +0000 (07:08 +0000)]
Move the on-disk hash table code into its own header. No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69580
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 20 Apr 2009 06:54:31 +0000 (06:54 +0000)]
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...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69579
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 20 Apr 2009 06:37:24 +0000 (06:37 +0000)]
Make FieldDecl parameter to getObjCEncodingForType... const.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69578
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Mon, 20 Apr 2009 06:35:22 +0000 (06:35 +0000)]
Remove loc::FuncVal.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69577
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 20 Apr 2009 06:26:18 +0000 (06:26 +0000)]
more stuff.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69576
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 20 Apr 2009 06:13:16 +0000 (06:13 +0000)]
Don't crash in the diagnostic printer if we happen to get passed a
null string / identifier.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69575
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 20 Apr 2009 06:00:23 +0000 (06:00 +0000)]
add a bunch of diagnostics options, add one example warning group.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69573
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 20 Apr 2009 05:53:40 +0000 (05:53 +0000)]
Don't emit ivar offsets for unnamed bit fields.
Also, added assertion that the field matches what would be looked up.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69572
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 20 Apr 2009 05:45:34 +0000 (05:45 +0000)]
Add option groups for -Wimplicit-int and -Wimplicit.
remove special case hack for -Werror-implicit-function-declaration
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69571
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Mon, 20 Apr 2009 05:24:46 +0000 (05:24 +0000)]
get a CodeTextRegion when visiting FunctionDecl reference.
get FunctionDecl with more general utility method.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69570
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 20 Apr 2009 04:37:38 +0000 (04:37 +0000)]
slurp some content from the PTH doc into the user's doc.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69569
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 20 Apr 2009 04:23:09 +0000 (04:23 +0000)]
initial skeleton of a user's manual.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69568
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Mon, 20 Apr 2009 03:54:15 +0000 (03:54 +0000)]
PR3247: Handle a couple of cases where we weren't emitting VLA sizes (and
subsequently crashed).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69567
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Mon, 20 Apr 2009 03:21:44 +0000 (03:21 +0000)]
PR3248: Make sure the evaluate the operand of a sizeof when it has a VLA type.
Adapted from patch by Tim Northover.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69566
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Mon, 20 Apr 2009 02:27:09 +0000 (02:27 +0000)]
As we now have ValueManager as the new value factory, we do not need factory
methods of SVal.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69565
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Mon, 20 Apr 2009 01:56:54 +0000 (01:56 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69564
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 20 Apr 2009 00:37:55 +0000 (00:37 +0000)]
Remove non-const form of lookupFieldDeclForIvar.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69563
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 20 Apr 2009 00:33:43 +0000 (00:33 +0000)]
Comment fixes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69562
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 19 Apr 2009 23:41:48 +0000 (23:41 +0000)]
Lift GetClassSizeInfo out of GenerateClass, add a FIXME.
- No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69561
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 23:16:58 +0000 (23:16 +0000)]
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 :)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69560
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 22:34:23 +0000 (22:34 +0000)]
move group twiddling options into Diagnostic.cpp instead of
Warnings.cpp. Warnings.cpp now doesn't need to #include
tblgen produced output directly.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69559
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 22:24:10 +0000 (22:24 +0000)]
don't crash on invalid ranges in -fprint-source-range-info
mode, just ignore them as usual.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69558
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 22:07:21 +0000 (22:07 +0000)]
Fix PR4007: clang doesn't know -Werror-foo is the same as -Werror=foo
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69557
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 21:55:32 +0000 (21:55 +0000)]
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 :)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69556
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Sun, 19 Apr 2009 21:53:20 +0000 (21:53 +0000)]
Conditional operator C++ checking complete. What issues remain are in more general code.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69555
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 21:50:08 +0000 (21:50 +0000)]
diagnose invalid syntax of STDC pragmas.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69554
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Sun, 19 Apr 2009 21:48:33 +0000 (21:48 +0000)]
Print an error for uses of __thread on targets which don't support it.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69553
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Sun, 19 Apr 2009 21:38:35 +0000 (21:38 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69552
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 21:25:37 +0000 (21:25 +0000)]
reject invalid stuff in the STDC namespace.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69551
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 21:20:35 +0000 (21:20 +0000)]
stub out STDC #pragmas.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69550
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 19 Apr 2009 21:20:32 +0000 (21:20 +0000)]
Forward f[no-]dollars-in-identifiers to clang, when specified.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69549
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Sun, 19 Apr 2009 21:15:26 +0000 (21:15 +0000)]
Bring member pointer operands of the conditional operator to a common type. We're getting there ...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69548
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 21:10:26 +0000 (21:10 +0000)]
basic support for -Wunknown-pragmas, more coming.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69547
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 19 Apr 2009 21:09:34 +0000 (21:09 +0000)]
Forward -fno-diagnostics-fixit-info to clang-cc.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69546
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Sun, 19 Apr 2009 21:05:03 +0000 (21:05 +0000)]
PR3853: Add CodeGen support for __thread.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69545
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 20:29:42 +0000 (20:29 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69544
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Sun, 19 Apr 2009 20:29:08 +0000 (20:29 +0000)]
Tests for __thread specifier.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69543
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Sun, 19 Apr 2009 20:27:55 +0000 (20:27 +0000)]
Add more thorough/correct checking for invalid __thread specifiers.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69542
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Sun, 19 Apr 2009 20:21:56 +0000 (20:21 +0000)]
Silence gcc warning.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69541
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 20:18:57 +0000 (20:18 +0000)]
pick a smaller header, one that we control to test this.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69540
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 20:16:27 +0000 (20:16 +0000)]
rename test for consistency with other pragma test.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69539
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 20:15:59 +0000 (20:15 +0000)]
merge pragma poison tests into one file with -verify mode.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69538
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 20:10:12 +0000 (20:10 +0000)]
merge two tests
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69537
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 20:06:32 +0000 (20:06 +0000)]
Fix PR3918: Invalid use of __VA_ARGS__ not diagnosed,
by rejecting invalid poisoned tokens in the token
pasting path.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69536
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Sun, 19 Apr 2009 19:26:31 +0000 (19:26 +0000)]
Another piece of the conditional operator puzzle. We'll want to use FindCompositePointerType in some other places, too.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69534
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 18:54:13 +0000 (18:54 +0000)]
convert to -verify mode.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69532
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 18:26:34 +0000 (18:26 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69530
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 17:32:33 +0000 (17:32 +0000)]
actually just do this on all x86 targets, it won't hurt
non-glibc ones.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69528
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 17:29:50 +0000 (17:29 +0000)]
Define __NO_MATH_INLINES on linux/x86 so that we don't get inline
functions in glibc header files that use FP Stack inline asm which the
backend can't deal with (PR879).
This "fixes" PR3970 for linux. Other affected systems should do similar
things. Maybe this should just go to the general i386/x86-64 sections?
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69527
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 07:44:08 +0000 (07:44 +0000)]
implement compiler support for -fno-diagnostics-fixit-info,
rdar://
6805442
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69525
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 07:32:03 +0000 (07:32 +0000)]
invalid directives can occur in #if 0 code, just pass them
through like other directives PTH doesn't care about. This
should fix rdar://
6804029
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69524
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 07:25:40 +0000 (07:25 +0000)]
make PTH not crash on a null directive (# on its own line)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69523
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 07:15:51 +0000 (07:15 +0000)]
use isNot instead of !is
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69522
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 07:06:52 +0000 (07:06 +0000)]
fix -fdollars-in-identifiers to have a default that is overriden
by the command line option if present.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69521
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 07:00:02 +0000 (07:00 +0000)]
fix rdar://
6804322 by wiring up -fdollars-in-identifiers
with assembler-with-cpp mode.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69520
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 06:59:18 +0000 (06:59 +0000)]
silence a warning, it isn't clear what the right answer is here,
will talk to steve.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69519
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 06:56:11 +0000 (06:56 +0000)]
convert to -verify mode.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69518
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 06:50:29 +0000 (06:50 +0000)]
silence a warning, I need to talk to Devang about this code.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69517
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 06:02:28 +0000 (06:02 +0000)]
Fix rdar://
6804402 - crash on objc implementations declared with
@class but no implementation. This was broken in all 3 runtime
impls.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69512
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 05:30:08 +0000 (05:30 +0000)]
rearrange #include order.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69511
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 05:28:12 +0000 (05:28 +0000)]
run the jump checker on blocks, even though they don't have gotos,
they do allow switches.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69510
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 05:21:20 +0000 (05:21 +0000)]
add a new Sema::CurFunctionNeedsScopeChecking bool that is used to avoid
calling into the jump checker when a function or method is known to contain
no VLAs or @try blocks.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69509
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 05:20:37 +0000 (05:20 +0000)]
test that vlas are checked in an objc method context.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69508
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 04:51:27 +0000 (04:51 +0000)]
apparently gotos aren't allowed at all in blocks. Stub out a testcase for when/if they are.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69507
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 04:48:07 +0000 (04:48 +0000)]
more testcases of variably modified types.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69506
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 04:46:21 +0000 (04:46 +0000)]
move jump scope checking and related code out into its own file, SemaDecl.cpp is
already too large.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69505
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 19 Apr 2009 02:33:12 +0000 (02:33 +0000)]
Some more tweaks to driver documentation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69504
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 19 Apr 2009 02:03:42 +0000 (02:03 +0000)]
Fix bug in computation of ivar offsets for (adjacent) bitfields.
- The confusing IRgen bitfield interface is partly to blame here;
fixing the functional error for now, cleanups to the interface to
follow.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69503
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 02:02:45 +0000 (02:02 +0000)]
minor typographical fixes
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69502
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 01:33:30 +0000 (01:33 +0000)]
revert david's patch, which causes a testsuite failure.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69501
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 01:32:00 +0000 (01:32 +0000)]
rewrite an O(N^2) algorithm to be O(n).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69500
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 01:16:06 +0000 (01:16 +0000)]
second half of indirect jump checking: make sure that any
address taken labels are in function scope
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69499
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 19 Apr 2009 01:05:26 +0000 (01:05 +0000)]
First half of jump scope checking for indirect goto.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69498
91177308 -0d34-0410-b5e6-
96231b3b80d8