Serge Pavlov
3cb8022849
Added warning on structures/unions that are empty or contain only
...
bit fields of zero size. Warnings are generated in C++ mode and if
only such type is defined inside extern "C" block.
The patch fixed PR5065.
Differential Revision: http://llvm-reviews.chandlerc.com/D2151
llvm-svn: 194653
2013-11-14 02:13:03 +00:00
Richard Smith
b1402ae94e
Add missing diagnostic for a nested-name-specifier on a free-standing type definition. Bump some related diagnostics from warning to extension in C++, since they're errors there. Add some missing checks for function specifiers on non-function declarations.
...
llvm-svn: 177335
2013-03-18 22:52:47 +00:00
John McCall
4d55f5a893
Don't warn about the 'extern' in 'extern "C"' on a tag decl. This is
...
usually useless, but not always.
llvm-svn: 128326
2011-03-26 02:09:52 +00:00
Douglas Gregor
fceea36501
When checking whether to diagnose an initialized "extern" variable,
...
look for the const on the base type rather than on the top-level
type. Fixes PR6495 properly.
llvm-svn: 102066
2010-04-22 14:36:26 +00:00
Douglas Gregor
f4cd8f4ece
Only suppress the "extern variable has an initializer" warning when the extern entity being initialized is const.
...
llvm-svn: 101821
2010-04-19 22:34:40 +00:00
Douglas Gregor
c81ca09830
Disable the "'extern' variable has an initializer" warning in C++,
...
since it makes sense there to have const extern variables. Fixes
PR6495.
llvm-svn: 101818
2010-04-19 21:31:25 +00:00