Suppress -Wunnecessary-virtual-specifier With clang update, building code using llvm-project headers from older version triggers the following build errors: external/swiftshader/third_party/llvm-10.0/llvm/lib/Target/X86/X86InstrInfo.h:136:16: error: virtual method 'anchor' is inside a 'final' class and can never be overridden [-Werror,-Wunnecessary-virtual-specifier] external/swiftshader/third_party/llvm-16.0/llvm/include/llvm/IR/ConstantFolder.h:31:16: error: virtual method 'anchor' is inside a 'final' class and can never be overridden [-Werror,-Wunnecessary-virtual-specifier] So suppress -Wunnecessary-virtual-specifier when llvm-project headers are used. Bug: 452729455 Test: build with clang update Change-Id: Ideadeaae7bebb945bc8f87a5aed419731afc0c14 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/76828 Presubmit-Ready: Geoff Lang <geofflang@google.com> Commit-Queue: Geoff Lang <geofflang@google.com> Reviewed-by: Geoff Lang <geofflang@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by: Geoff Lang <geofflang@google.com>
diff --git a/src/Android.bp b/src/Android.bp index 51c8ca0..bd9e725 100644 --- a/src/Android.bp +++ b/src/Android.bp
@@ -48,6 +48,8 @@ "-DREACTOR_ANONYMOUS_MMAP_NAME=swiftshader_jit", "-Wno-unused-parameter", "-Wno-implicit-fallthrough", + // This warning can be re-enabled after updating to newer llvm version. + "-Wno-unnecessary-virtual-specifier", ], static_libs: [
diff --git a/third_party/llvm-10.0/Android.bp b/third_party/llvm-10.0/Android.bp index f124687..f1a8646 100644 --- a/third_party/llvm-10.0/Android.bp +++ b/third_party/llvm-10.0/Android.bp
@@ -1052,6 +1052,8 @@ "-Wno-unreachable-code-loop-increment", "-Wno-unused-parameter", "-Wno-unused-variable", + // This warning can be re-enabled after updating to newer llvm version. + "-Wno-unnecessary-virtual-specifier", ], sanitize: {
diff --git a/third_party/llvm-16.0/Android.bp b/third_party/llvm-16.0/Android.bp index c382558..06be43c 100644 --- a/third_party/llvm-16.0/Android.bp +++ b/third_party/llvm-16.0/Android.bp
@@ -1502,6 +1502,8 @@ "-Wno-unreachable-code-loop-increment", "-Wno-unused-parameter", "-Wno-unused-variable", + // This warning can be re-enabled after updating to newer llvm version. + "-Wno-unnecessary-virtual-specifier", "-DBLAKE3_NO_AVX512", "-DBLAKE3_NO_AVX2", "-DBLAKE3_NO_SSE41",