In src/hotspot/cpu/aarch64/interp_masm_aarch64.hpp I see this for JDK 11 and below:
class InterpreterMacroAssembler: public MacroAssembler {
protected:
protected:
using MacroAssembler::call_VM_leaf_base;
// Interpreter specific version of call_VM_base
using MacroAssembler::call_VM_leaf_base;
This redeclaration of 'using MacroAssembler::call_VM_leaf_base' causes build failures with GCC 10. For example:
1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/os/posix/vm -I../generated '-DHOTSPOT_RELEASE_VERSION="25.242-b06"' '-DHOTSPOT_BUILD_TARGET="product"' '-DHOTSPOT_BUILD_USER="mockbuild"' '-DHOTSPOT_LIB_ARCH="aarch64"' '-DHOTSPOT_VM_DISTRO="OpenJDK"' -DTARGET_OS_FAMILY_linux -DTARGET_ARCH_aarch64 -DTARGET_ARCH_MODEL_aarch64 -DTARGET_OS_ARCH_linux_aarch64 -DTARGET_OS_ARCH_MODEL_linux_aarch64 -DTARGET_COMPILER_gcc -DCOMPILER2 -DCOMPILER1 -fPIC -fno-rtti -fno-exceptions -D_REENTRANT -fcheck-new -fstack-protector -fvisibility=hidden -pipe -fno-strict-aliasing -g -fno-omit-frame-pointer -O3 -DVM_LITTLE_ENDIAN -Werror -Wpointer-arith -Wsign-compare -Wundef -Wunused-function -Wunused-value -Wreturn-type -fstack-protector -g -pipe -Wformat -Wno-cpp -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -Wno-error -fcommon -Wa,--generate-missing-build-notes=yes -std=gnu++98 -DDTRACE_ENABLED -c -MMD -MP -MF ../generated/dependencies/precompiled.hpp.gch.d -fpch-deps -x c++-header /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/precompiled/precompiled.hpp -o precompiled.hpp.gch
In file included from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/interpreter/abstractInterpreter.hpp:38,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/interpreter/cppInterpreter.hpp:28,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/interpreter/interpreter.hpp:29,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/runtime/frame.inline.hpp:30,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/prims/methodHandles.hpp:30,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/ci/ciMethod.hpp:33,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/code/debugInfoRec.hpp:30,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/ci/ciEnv.hpp:31,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/ci/ciUtilities.hpp:28,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/ci/ciNullObject.hpp:30,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/ci/ciConstant.hpp:29,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/ci/ciArray.hpp:29,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/precompiled/precompiled.hpp:33:
/builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp:46:25: error: redeclaration of 'using MacroAssembler::call_VM_leaf_base'
46 | using MacroAssembler::call_VM_leaf_base;
| ^~~~~~~~~~~~~~~~~
/builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp:43:25: note: previous declaration 'using MacroAssembler::call_VM_leaf_base'
43 | using MacroAssembler::call_VM_leaf_base;
| ^~~~~~~~~~~~~~~~~
gmake[6]: *** [/builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/make/linux/makefiles/vm.make:313: precompiled.hpp.gch] Error 1
class InterpreterMacroAssembler: public MacroAssembler {
protected:
protected:
using MacroAssembler::call_VM_leaf_base;
// Interpreter specific version of call_VM_base
using MacroAssembler::call_VM_leaf_base;
This redeclaration of 'using MacroAssembler::call_VM_leaf_base' causes build failures with GCC 10. For example:
1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/os/posix/vm -I../generated '-DHOTSPOT_RELEASE_VERSION="25.242-b06"' '-DHOTSPOT_BUILD_TARGET="product"' '-DHOTSPOT_BUILD_USER="mockbuild"' '-DHOTSPOT_LIB_ARCH="aarch64"' '-DHOTSPOT_VM_DISTRO="OpenJDK"' -DTARGET_OS_FAMILY_linux -DTARGET_ARCH_aarch64 -DTARGET_ARCH_MODEL_aarch64 -DTARGET_OS_ARCH_linux_aarch64 -DTARGET_OS_ARCH_MODEL_linux_aarch64 -DTARGET_COMPILER_gcc -DCOMPILER2 -DCOMPILER1 -fPIC -fno-rtti -fno-exceptions -D_REENTRANT -fcheck-new -fstack-protector -fvisibility=hidden -pipe -fno-strict-aliasing -g -fno-omit-frame-pointer -O3 -DVM_LITTLE_ENDIAN -Werror -Wpointer-arith -Wsign-compare -Wundef -Wunused-function -Wunused-value -Wreturn-type -fstack-protector -g -pipe -Wformat -Wno-cpp -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -Wno-error -fcommon -Wa,--generate-missing-build-notes=yes -std=gnu++98 -DDTRACE_ENABLED -c -MMD -MP -MF ../generated/dependencies/precompiled.hpp.gch.d -fpch-deps -x c++-header /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/precompiled/precompiled.hpp -o precompiled.hpp.gch
In file included from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/interpreter/abstractInterpreter.hpp:38,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/interpreter/cppInterpreter.hpp:28,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/interpreter/interpreter.hpp:29,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/runtime/frame.inline.hpp:30,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/prims/methodHandles.hpp:30,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/ci/ciMethod.hpp:33,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/code/debugInfoRec.hpp:30,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/ci/ciEnv.hpp:31,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/ci/ciUtilities.hpp:28,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/ci/ciNullObject.hpp:30,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/ci/ciConstant.hpp:29,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/ci/ciArray.hpp:29,
from /builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/share/vm/precompiled/precompiled.hpp:33:
/builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp:46:25: error: redeclaration of 'using MacroAssembler::call_VM_leaf_base'
46 | using MacroAssembler::call_VM_leaf_base;
| ^~~~~~~~~~~~~~~~~
/builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp:43:25: note: previous declaration 'using MacroAssembler::call_VM_leaf_base'
43 | using MacroAssembler::call_VM_leaf_base;
| ^~~~~~~~~~~~~~~~~
gmake[6]: *** [/builddir/build/BUILD/java-1.8.0-openjdk-1.8.0.242.b06-0.0.ea.fc32.aarch64/openjdk/hotspot/make/linux/makefiles/vm.make:313: precompiled.hpp.gch] Error 1
- duplicates
-
JDK-8224851 AArch64: fix warnings and errors with Clang and GCC 8.3
- Resolved