]> granicus.if.org Git - clang/commitdiff
Undo turning ExtBehavior into a bitfield.
authorDaniel Jasper <djasper@google.com>
Wed, 3 May 2017 11:27:34 +0000 (11:27 +0000)
committerDaniel Jasper <djasper@google.com>
Wed, 3 May 2017 11:27:34 +0000 (11:27 +0000)
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

include/clang/Basic/Diagnostic.h

index 610273015ca445b7246207ef140d645e15fdf356..22cded21c12df620abc619cd1e006cf1f24462db 100644 (file)
@@ -216,7 +216,7 @@ private:
     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),