Anders Carlsson
8798bd1bf9
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.
...
llvm-svn: 69292
2009-04-16 15:50:16 +00:00
Daniel Dunbar
426b5cf16a
Ensure that the most recent declaration of a tentative definition wins
...
when generating a common definition.
llvm-svn: 69287
2009-04-16 15:34:14 +00:00
Daniel Dunbar
092f0ccd9c
Pass -fdiagnostics-show-option to clang-cc by default.
...
- <rdar://problem/6796848> implement -fdiagnostics-show-option
llvm-svn: 69276
2009-04-16 06:32:38 +00:00
Chris Lattner
f9c2dbb233
other half of 69274
...
llvm-svn: 69275
2009-04-16 06:17:55 +00:00
Chris Lattner
b666a27d24
split diagnostic group definitions out into their own file.
...
llvm-svn: 69274
2009-04-16 06:17:18 +00:00
Chris Lattner
2d49eed816
optimize and comment GetDiagInfo.
...
llvm-svn: 69273
2009-04-16 06:13:46 +00:00
Chris Lattner
6c440329f1
merge several scattered tables into StaticDiagInfo.
...
llvm-svn: 69272
2009-04-16 06:07:15 +00:00
Chris Lattner
6a64cc6776
Implement Diagnostic::getWarningOptionForDiag with information from tblgen,
...
this implements -fdiagnostics-show-option in clang-cc.
llvm-svn: 69271
2009-04-16 06:00:24 +00:00
Chris Lattner
a538967177
tblgen is now passing diagnostic group information in the .inc file, ignore it everywhere.
...
llvm-svn: 69269
2009-04-16 05:52:14 +00:00
Chris Lattner
22cb818913
implement framework for -fdiagnostics-show-option, but tblgen isn't
...
passing down the right info yet.
llvm-svn: 69268
2009-04-16 05:44:38 +00:00
Anders Carlsson
805ab5a746
Disable the code I added before until I understand what's causing default2.cpp to fail.
...
llvm-svn: 69267
2009-04-16 05:35:41 +00:00
Chris Lattner
b8e73158e1
move handling of -pedantic and -pedantic-errors into Diagnostics,
...
out of Warnings.cpp. This simplifies warnings.cpp and makes it more
efficient.
llvm-svn: 69266
2009-04-16 05:04:32 +00:00
Chris Lattner
f9150bac01
arrange for -Wno-error=foo warnings to be immune to -Werror as
...
they are supposed to be.
llvm-svn: 69265
2009-04-16 04:32:54 +00:00
Chris Lattner
411c0ffe5d
change mappings to distinguish between "unset", "set by the user" and
...
"set to the default value".
llvm-svn: 69264
2009-04-16 04:12:40 +00:00
Daniel Dunbar
08e82f955a
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.
llvm-svn: 69263
2009-04-16 04:00:30 +00:00
Chris Lattner
af73cf6363
use getDiagnosticLevel instead of getDiagnosticMapping, which
...
is about to become private.
llvm-svn: 69262
2009-04-16 03:59:32 +00:00
Daniel Dunbar
b4b3709c5b
Driver: Forward -W* to clang, it can handle all these itself now.
...
Remove clang_W_Group and clang_ignored_W_Group.
llvm-svn: 69261
2009-04-16 03:44:10 +00:00
Chris Lattner
e4f753233b
switch DiagMappings *back* to 4 bits per diag.
...
llvm-svn: 69260
2009-04-16 03:41:37 +00:00
Chris Lattner
169fd70999
implement -Wno-#warnings etc.
...
llvm-svn: 69259
2009-04-16 03:27:53 +00:00
Douglas Gregor
6d955a9d25
Eliminate pch::TYPE_ATTR, which is never used
...
llvm-svn: 69256
2009-04-16 02:45:14 +00:00
Douglas Gregor
4c5cd33527
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).
llvm-svn: 69255
2009-04-16 02:33:48 +00:00
Douglas Gregor
38676d50dc
PCH support for InitListExpr, DesignatedInitExpr, and ImplicitValueInitExpr.
...
llvm-svn: 69251
2009-04-16 00:55:48 +00:00
Chris Lattner
e82c3cc848
when tblgen fills in all the subgroup info, clang is ready for it.
...
This depends on r69249 of llvm.
llvm-svn: 69250
2009-04-16 00:53:55 +00:00
Chris Lattner
de1423883a
add scafolding to represent heirarchical warnings, start with -Wall.
...
llvm-svn: 69246
2009-04-16 00:23:21 +00:00
Anders Carlsson
fe63dc52f9
Add support for the __has_trivial_constructor type trait.
...
llvm-svn: 69245
2009-04-16 00:08:20 +00:00
Douglas Gregor
a3c5590ec2
PCH support for ShuffleVectorExpr and BlockDeclRefExpr
...
llvm-svn: 69244
2009-04-16 00:01:45 +00:00
Douglas Gregor
8693ec4e58
PCH support for TypesCompatibleExpr, ChooseExpr, and GNUNullExpr.
...
llvm-svn: 69242
2009-04-15 23:33:31 +00:00
Douglas Gregor
2ebf8717a5
PCH support for ExtVectorElementExpr and VAArgExpr.
...
llvm-svn: 69240
2009-04-15 23:02:49 +00:00
Chris Lattner
3fd869cc6c
make unknown warnings a warning, not an error.
...
llvm-svn: 69239
2009-04-15 22:48:58 +00:00
Chris Lattner
eb8ec21dc9
add anonymous groups for all the warning command line flags that the clang
...
driver accepts and discards.
llvm-svn: 69238
2009-04-15 22:47:03 +00:00
Douglas Gregor
d4ed114e23
PCH support for CompoundAssignOperator and ConditionalOperator
...
llvm-svn: 69237
2009-04-15 22:40:36 +00:00
Chris Lattner
7836eefefc
add support for -Wextra and -W
...
llvm-svn: 69236
2009-04-15 22:38:06 +00:00
Chris Lattner
9ac5f22fc7
comment out IsGroup: tblgen isn't instantiating these dependent defs quite right yet.
...
llvm-svn: 69234
2009-04-15 22:32:37 +00:00
Douglas Gregor
978887b6b0
PCH support for ImaginaryLiteral and ArraySubscriptExpr
...
llvm-svn: 69233
2009-04-15 22:19:53 +00:00
Mike Stump
3b65ac2696
Fixup codegen for copy/dispose for block literals. Radar 6791245
...
llvm-svn: 69232
2009-04-15 22:11:36 +00:00
Daniel Dunbar
7dd749e6fd
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.
llvm-svn: 69231
2009-04-15 22:08:45 +00:00
Douglas Gregor
455b8f4106
PCH support for ExtQualType
...
llvm-svn: 69230
2009-04-15 22:00:08 +00:00
Fariborz Jahanian
3453f7d410
Fix decl type merges when they have
...
__string/__weak attributes.
llvm-svn: 69229
2009-04-15 21:54:48 +00:00
Devang Patel
9074ed8c6a
Set DebugInfo at the beginning of GenerateBlockFunction().
...
llvm-svn: 69228
2009-04-15 21:51:44 +00:00
Anders Carlsson
332ef55cf2
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.
llvm-svn: 69227
2009-04-15 21:48:18 +00:00
Daniel Dunbar
c7ba533378
Add warning when a tentative array definition is assumed to have one element.
...
- Also, fixed one to actually be one (instead of zero). :)
llvm-svn: 69226
2009-04-15 21:35:27 +00:00
Douglas Gregor
bc8a78d5a4
PCH support for declaration attributes
...
llvm-svn: 69225
2009-04-15 21:30:51 +00:00
Anders Carlsson
617482c666
Actually generate code for the simple constructors we know we can generate code for.
...
llvm-svn: 69222
2009-04-15 21:02:13 +00:00
Chris Lattner
680eb1b893
use tablgen-generated warning groups.
...
llvm-svn: 69221
2009-04-15 20:58:49 +00:00
Chris Lattner
ddf228dc47
generate diagnostic group tables, this requires llvm r69219 or later.
...
llvm-svn: 69220
2009-04-15 20:55:31 +00:00
Chris Lattner
ccc68f8fb1
fix a name shadowing problem in tblgen.
...
llvm-svn: 69218
2009-04-15 20:54:55 +00:00
Chris Lattner
76784d70bc
use slightly more verbose to work around a tblgen bug for now.
...
llvm-svn: 69214
2009-04-15 20:29:48 +00:00
Chris Lattner
f4192b3346
move clang specific makefile goop to clang instead of llvm. This may require
...
updating the llvm tree.
llvm-svn: 69207
2009-04-15 19:58:08 +00:00
Daniel Dunbar
4b68d26a93
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!
llvm-svn: 69205
2009-04-15 19:52:32 +00:00
Steve Naroff
439a3e4106
Fix <rdar://problem/6786597> varargs not supported for Blocks under clang.
...
Teach Sema::SemaBuiltinVAStart() about blocks.
llvm-svn: 69201
2009-04-15 19:33:47 +00:00