]>
granicus.if.org Git - clang/log
Daniel Dunbar [Fri, 17 Apr 2009 01:54:00 +0000 (01:54 +0000)]
Support QA_OVERRIDE_GCC3_OPTIONS
- Cover your eyes...
- This is a simple but effective way to allow developers to build a
project with clang while manipulating the command line, without
having to edit the project itself.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69342
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 17 Apr 2009 00:48:04 +0000 (00:48 +0000)]
Attributes on block functions were not being set.
- <rdar://problem/
6800351 > clang not producing correct large struct
return code for Blocks
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69337
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 17 Apr 2009 00:29:51 +0000 (00:29 +0000)]
PCH support for do-while and for loops
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69334
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 17 Apr 2009 00:16:09 +0000 (00:16 +0000)]
PCH support for while and continue statements
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69332
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Fri, 17 Apr 2009 00:09:41 +0000 (00:09 +0000)]
Fixup semantic analysis for nested blocks, and allow block literal
expressions that can be of static duration to be returned.
Radar
6786551
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69331
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Fri, 17 Apr 2009 00:06:03 +0000 (00:06 +0000)]
Implement basic code generation of constructor calls. We can now compile:
struct S {
S(int, int);
};
void f() {
S s(10, 10);
}
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69330
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 17 Apr 2009 00:04:06 +0000 (00:04 +0000)]
PCH support for the first batch of statements, including null,
compound, case, default, if, switch, and break statements.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69329
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 16 Apr 2009 23:57:24 +0000 (23:57 +0000)]
Add GetAddrOfCXXConstructor and use it.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69328
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 16 Apr 2009 23:53:22 +0000 (23:53 +0000)]
Add constructor getter to CXXTemporaryObjectExpr.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69327
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 16 Apr 2009 23:50:50 +0000 (23:50 +0000)]
If a class has a non-trivial constructor that doesn't take any arguments, we will now make an implicit CXXTemporaryObjectExpr. So
struct S {
S();
};
void f() {
S s;
}
's' here will implicitly be declared as.
S s = S();
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69326
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 16 Apr 2009 23:30:16 +0000 (23:30 +0000)]
-Wall is -Wmost -Wparentheses
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69324
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 16 Apr 2009 23:10:13 +0000 (23:10 +0000)]
Driver: Allow using clang as a precompiler, even if it is an
unsupported arch.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69322
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Thu, 16 Apr 2009 22:29:51 +0000 (22:29 +0000)]
Clean up the declaration-decoding step in the PCH reader, using the
same ueber-easy visitor scheme used for expressions/statements.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69320
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Thu, 16 Apr 2009 22:23:12 +0000 (22:23 +0000)]
Prepare PCH reader and writer for (de-)serialization of statements. No
functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69319
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Thu, 16 Apr 2009 21:49:16 +0000 (21:49 +0000)]
Removed a no longer needed FIXME comment.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69315
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Thu, 16 Apr 2009 19:02:57 +0000 (19:02 +0000)]
Fix <rdar://problem/
6765383 > clang-6: clang does not appear to support declaring a static Block 'const'.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69306
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Thu, 16 Apr 2009 18:34:20 +0000 (18:34 +0000)]
Category method synbols must be qualified by gategory name to
match gcc's.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69305
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Thu, 16 Apr 2009 17:51:27 +0000 (17:51 +0000)]
Fix a crash bug when comparing overload quality of conversion operators with conversion constructors.
Remove an atrocious amount of trailing whitespace in the overloaded operator mangler. Sorry, couldn't help myself.
Change the DeclType parameter of Sema::CheckReferenceInit to be passed by value instead of reference. It wasn't changed anywhere.
Let the parser handle C++'s irregular grammar around assignment-expression and conditional-expression.
And finally, the reason for all this stuff: implement C++ semantics for the conditional operator. The implementation is complete except for determining lvalueness.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69299
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Thu, 16 Apr 2009 17:49:48 +0000 (17:49 +0000)]
Attempt to fix a read-after-free running test/Sema/designated-initializers.c.
Douglas, can you check that this is doing the right thing?
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69298
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Thu, 16 Apr 2009 17:33:37 +0000 (17:33 +0000)]
Force target triple for test depending on __weak.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69297
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 16 Apr 2009 15:50:16 +0000 (15:50 +0000)]
When we create an implicit CXXTemporaryObjectExpr we don't need to check that it's a valid init. Instead, just set it as the VarDecl's initializer.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69292
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 16 Apr 2009 15:34:14 +0000 (15:34 +0000)]
Ensure that the most recent declaration of a tentative definition wins
when generating a common definition.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69287
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 16 Apr 2009 06:32:38 +0000 (06:32 +0000)]
Pass -fdiagnostics-show-option to clang-cc by default.
- <rdar://problem/
6796848 > implement -fdiagnostics-show-option
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69276
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 16 Apr 2009 06:17:55 +0000 (06:17 +0000)]
other half of 69274
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69275
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 16 Apr 2009 06:17:18 +0000 (06:17 +0000)]
split diagnostic group definitions out into their own file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69274
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 16 Apr 2009 06:13:46 +0000 (06:13 +0000)]
optimize and comment GetDiagInfo.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69273
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 16 Apr 2009 06:07:15 +0000 (06:07 +0000)]
merge several scattered tables into StaticDiagInfo.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69272
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 16 Apr 2009 06:00:24 +0000 (06:00 +0000)]
Implement Diagnostic::getWarningOptionForDiag with information from tblgen,
this implements -fdiagnostics-show-option in clang-cc.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69271
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 16 Apr 2009 05:52:14 +0000 (05:52 +0000)]
tblgen is now passing diagnostic group information in the .inc file, ignore it everywhere.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69269
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 16 Apr 2009 05:44:38 +0000 (05:44 +0000)]
implement framework for -fdiagnostics-show-option, but tblgen isn't
passing down the right info yet.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69268
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 16 Apr 2009 05:35:41 +0000 (05:35 +0000)]
Disable the code I added before until I understand what's causing default2.cpp to fail.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69267
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 16 Apr 2009 05:04:32 +0000 (05:04 +0000)]
move handling of -pedantic and -pedantic-errors into Diagnostics,
out of Warnings.cpp. This simplifies warnings.cpp and makes it more
efficient.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69266
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 16 Apr 2009 04:32:54 +0000 (04:32 +0000)]
arrange for -Wno-error=foo warnings to be immune to -Werror as
they are supposed to be.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69265
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 16 Apr 2009 04:12:40 +0000 (04:12 +0000)]
change mappings to distinguish between "unset", "set by the user" and
"set to the default value".
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69264
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 16 Apr 2009 04:00:30 +0000 (04:00 +0000)]
Driver: Remove the majority of -W* options, the driver doesn't
generally need to know about these now we don't have to hold
clang-cc's hand.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69263
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 16 Apr 2009 03:59:32 +0000 (03:59 +0000)]
use getDiagnosticLevel instead of getDiagnosticMapping, which
is about to become private.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69262
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 16 Apr 2009 03:44:10 +0000 (03:44 +0000)]
Driver: Forward -W* to clang, it can handle all these itself now.
Remove clang_W_Group and clang_ignored_W_Group.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69261
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 16 Apr 2009 03:41:37 +0000 (03:41 +0000)]
switch DiagMappings *back* to 4 bits per diag.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69260
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 16 Apr 2009 03:27:53 +0000 (03:27 +0000)]
implement -Wno-#warnings etc.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69259
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Thu, 16 Apr 2009 02:45:14 +0000 (02:45 +0000)]
Eliminate pch::TYPE_ATTR, which is never used
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69256
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Thu, 16 Apr 2009 02:33:48 +0000 (02:33 +0000)]
PCH support for CompoundLiteralExpr. This is the last C expression
that does not require PCH support for statements. Only AddrLabelExpr,
StmtExpr, and BlockExpr remain (for C).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69255
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Thu, 16 Apr 2009 00:55:48 +0000 (00:55 +0000)]
PCH support for InitListExpr, DesignatedInitExpr, and ImplicitValueInitExpr.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69251
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 16 Apr 2009 00:53:55 +0000 (00:53 +0000)]
when tblgen fills in all the subgroup info, clang is ready for it.
This depends on r69249 of llvm.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69250
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 16 Apr 2009 00:23:21 +0000 (00:23 +0000)]
add scafolding to represent heirarchical warnings, start with -Wall.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69246
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 16 Apr 2009 00:08:20 +0000 (00:08 +0000)]
Add support for the __has_trivial_constructor type trait.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69245
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Thu, 16 Apr 2009 00:01:45 +0000 (00:01 +0000)]
PCH support for ShuffleVectorExpr and BlockDeclRefExpr
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69244
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 15 Apr 2009 23:33:31 +0000 (23:33 +0000)]
PCH support for TypesCompatibleExpr, ChooseExpr, and GNUNullExpr.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69242
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 15 Apr 2009 23:02:49 +0000 (23:02 +0000)]
PCH support for ExtVectorElementExpr and VAArgExpr.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69240
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 22:48:58 +0000 (22:48 +0000)]
make unknown warnings a warning, not an error.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69239
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 22:47:03 +0000 (22:47 +0000)]
add anonymous groups for all the warning command line flags that the clang
driver accepts and discards.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69238
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 15 Apr 2009 22:40:36 +0000 (22:40 +0000)]
PCH support for CompoundAssignOperator and ConditionalOperator
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69237
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 22:38:06 +0000 (22:38 +0000)]
add support for -Wextra and -W
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69236
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 22:32:37 +0000 (22:32 +0000)]
comment out IsGroup: tblgen isn't instantiating these dependent defs quite right yet.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69234
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 15 Apr 2009 22:19:53 +0000 (22:19 +0000)]
PCH support for ImaginaryLiteral and ArraySubscriptExpr
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69233
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Wed, 15 Apr 2009 22:11:36 +0000 (22:11 +0000)]
Fixup codegen for copy/dispose for block literals. Radar
6791245
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69232
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 15 Apr 2009 22:08:45 +0000 (22:08 +0000)]
Defer generation of tentative definitions.
- PR3980.
- <rdar://problem/
6762287 > [irgen] crash when generating tentative
definition of incomplete structure
- This also avoids creating common definitions for things which are
later overwritten.
- XFAIL'ed external-defs.c, it isn't completing types properly yet.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69231
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 15 Apr 2009 22:00:08 +0000 (22:00 +0000)]
PCH support for ExtQualType
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69230
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 15 Apr 2009 21:54:48 +0000 (21:54 +0000)]
Fix decl type merges when they have
__string/__weak attributes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69229
91177308 -0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Wed, 15 Apr 2009 21:51:44 +0000 (21:51 +0000)]
Set DebugInfo at the beginning of GenerateBlockFunction().
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69228
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 15 Apr 2009 21:48:18 +0000 (21:48 +0000)]
When declaring a variable that has a constructor and a direct initializer, for example:
struct X {
X(int, int);
};
X x(10, 10);
we model that as
X x = X(10, 10);
inserting a temporary object expr.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69227
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 15 Apr 2009 21:35:27 +0000 (21:35 +0000)]
Add warning when a tentative array definition is assumed to have one element.
- Also, fixed one to actually be one (instead of zero). :)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69226
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 15 Apr 2009 21:30:51 +0000 (21:30 +0000)]
PCH support for declaration attributes
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69225
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 15 Apr 2009 21:02:13 +0000 (21:02 +0000)]
Actually generate code for the simple constructors we know we can generate code for.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69222
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 20:58:49 +0000 (20:58 +0000)]
use tablgen-generated warning groups.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69221
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 20:55:31 +0000 (20:55 +0000)]
generate diagnostic group tables, this requires llvm r69219 or later.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69220
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 20:54:55 +0000 (20:54 +0000)]
fix a name shadowing problem in tblgen.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69218
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 20:29:48 +0000 (20:29 +0000)]
use slightly more verbose to work around a tblgen bug for now.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69214
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 19:58:08 +0000 (19:58 +0000)]
move clang specific makefile goop to clang instead of llvm. This may require
updating the llvm tree.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69207
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 15 Apr 2009 19:52:32 +0000 (19:52 +0000)]
Don't use \01 in symbol name if unnecessary.
- This was particularly bad since I fixed one instance of this name
and not another, meaning we got an LLVM module with the same
effective name in two different globals!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69205
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Wed, 15 Apr 2009 19:33:47 +0000 (19:33 +0000)]
Fix <rdar://problem/
6786597 > varargs not supported for Blocks under clang.
Teach Sema::SemaBuiltinVAStart() about blocks.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69201
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 15 Apr 2009 19:19:03 +0000 (19:19 +0000)]
Patch to remove a bogus warning which pointed to underlying AST
gen. issue for property in continuation class declared readwrite
but which did not generate the declaration for the setter. Fix also
removed a FIXME and resulted in code cleanup.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69200
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 15 Apr 2009 19:04:46 +0000 (19:04 +0000)]
Fix alignment on obj_msgrefs to match llvm-gcc.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69199
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 15 Apr 2009 19:03:14 +0000 (19:03 +0000)]
Add test case for superrefs section (and make spacing consistent).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69198
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 18:48:23 +0000 (18:48 +0000)]
fix some out of bounds array access problems, which manifest particularly
spectacularly when built for x86-64.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69197
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 15 Apr 2009 18:43:11 +0000 (18:43 +0000)]
PCH support for the string literal of a FileScopeAsmDecl.
Some minor cleanup.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69196
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 18:13:28 +0000 (18:13 +0000)]
move some pp diags to the right .td file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69193
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 18:08:55 +0000 (18:08 +0000)]
annotate diagnostics with which groups they belong to. Each
diagnostic can belong to at most one group. Each group can
contain multiple diags, but we have nice syntax for the common
case of "1 diag to one group".
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69192
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 15 Apr 2009 18:05:10 +0000 (18:05 +0000)]
For source location entries that describe instantiations, encode the
token length in the PCH file rather than trying (and failing) to
reconstruct it be getting the spelling token's length.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69191
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 15 Apr 2009 17:43:59 +0000 (17:43 +0000)]
PCH support for MemberExpr and CallExpr.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69186
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Wed, 15 Apr 2009 17:31:31 +0000 (17:31 +0000)]
Fixup http://llvm.org/viewvc/llvm-project?rev=69165&view=rev (based on feedback from Eli).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69184
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 17:20:11 +0000 (17:20 +0000)]
now that we've decoupled diagnostic classes from default mappings,
move the remaining default mapping exceptions from C++ code into
the .td files.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69183
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 17:13:42 +0000 (17:13 +0000)]
move {'s
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69179
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Wed, 15 Apr 2009 16:58:41 +0000 (16:58 +0000)]
Revert previous patch (will commit a fix soon).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69178
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 16:56:26 +0000 (16:56 +0000)]
Make diagnostic class explicit in the diag record instead of
implicit from its parenting. Now that diag mapping is
explicit, eliminate the fatal and extwarn classes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69177
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 16:44:12 +0000 (16:44 +0000)]
Tblgen now passes the default mapping explicitly, instead of having it
be tied to the diag class. This requires an LLVM tree update.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69175
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 16:43:37 +0000 (16:43 +0000)]
add a bunch of files.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69174
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 15 Apr 2009 16:35:07 +0000 (16:35 +0000)]
PCH support for string literals
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69172
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 15 Apr 2009 16:34:29 +0000 (16:34 +0000)]
Driver: Add --help-hidden
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69171
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 15 Apr 2009 16:31:36 +0000 (16:31 +0000)]
__objc_superrefs belongs to __DATA segment.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69170
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 15 Apr 2009 15:58:59 +0000 (15:58 +0000)]
PCH support for UnaryOperator, SizeOfAlignOfExpr
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69169
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 15 Apr 2009 15:55:24 +0000 (15:55 +0000)]
Start attempting to generate code for C++ ctors.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69168
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Wed, 15 Apr 2009 15:20:03 +0000 (15:20 +0000)]
Fix <rdar://problem/
6789707 > "warning: 'extern' variable has an initializer" not correct for __private_extern__.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69167
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 14:42:02 +0000 (14:42 +0000)]
rename variable in comment, not just in code :).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69166
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Wed, 15 Apr 2009 14:38:36 +0000 (14:38 +0000)]
Fix <rdar://problem/
6791490 > [clang10 regression] [sema] invalid illegal jump diagnostic.
caused by: <rdar://problem/
6252084 > [sema] jumps into Obj-C exception blocks should be disallowed.
Sema::RecursiveCalcLabelScopes() and Sema::RecursiveCalcJumpScopes() need to pop the ScopeStack within the statement iteration loop (was outside the loop).
Eli, please review (thanks).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69165
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 07:06:34 +0000 (07:06 +0000)]
this should be private
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69158
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 07:05:12 +0000 (07:05 +0000)]
add another sanity check for -Werror=xx
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69157
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 07:03:57 +0000 (07:03 +0000)]
add a missing &&
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69156
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 07:02:57 +0000 (07:02 +0000)]
fix a broken test, that passed for the wrong reason. Two wrongs make a right! :)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69155
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 15 Apr 2009 07:01:18 +0000 (07:01 +0000)]
Rejigger how -pedantic and -pedantic-errors work and their interaction
with other diagnostic mapping. In the new scheme, -Wfoo or -Wno-foo or
-Werror=foo all override the -pedantic options, and __extension__
robustly silences all extension diagnostics in their scope.
An added bonus of this change is that MAP_DEFAULT goes away, meaning that
per-diagnostic mapping information can now be stored in 2 bits, doubling
the density of the Diagnostic::DiagMapping array. This also
substantially simplifies Diagnostic::getDiagnosticLevel.
OTOH, this temporarily introduces some "macro intensive" code in
Diagnostic.cpp. This will be addressed in a later patch.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69154
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 15 Apr 2009 06:41:24 +0000 (06:41 +0000)]
Implement support for designated initializers that refer to members of
anonymous structs or unions. Fixes PR3778.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69153
91177308 -0d34-0410-b5e6-
96231b3b80d8