This produces warnings that I can't explain in a GCC build:
In file included from ../tools/clang/include/clang/Lex/LexDiagnostic.h:13:0,
from /usr/local/google/home/djasper/llvm/tools/clang/lib/Lex/PTHLexer.cpp:19:
../tools/clang/include/clang/Basic/Diagnostic.h:219:34: warning: ‘clang::DiagnosticsEngine::DiagState::ExtBehavior’ is too small to hold all values of ‘enum class clang::diag::Severity’ [enabled by default]
diag::Severity ExtBehavior : 4; // Map extensions to warnings or errors?
^
While I don't think this warning makes sense, I'd like to get this back to being
warning-free. This only seems to trigger for "enum class".
Reproducer:
https://godbolt.org/g/P2ekVd
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@302012
91177308-0d34-0410-b5e6-
96231b3b80d8
unsigned WarningsAsErrors : 1; // Treat warnings like errors.
unsigned ErrorsAsFatal : 1; // Treat errors like fatal errors.
unsigned SuppressSystemWarnings : 1; // Suppress warnings in system headers.
- diag::Severity ExtBehavior : 4; // Map extensions to warnings or errors?
+ diag::Severity ExtBehavior; // Map extensions to warnings or errors?
DiagState()
: IgnoreAllWarnings(false), EnableAllWarnings(false),