RFR: 8338236: Compile error in cgroup code on Linux when using clang
Matthias Baesken
mbaesken at openjdk.org
Wed Aug 14 09:54:52 UTC 2024
On Tue, 13 Aug 2024 07:59:11 GMT, Matthias Baesken <mbaesken at openjdk.org> wrote:
> When building with
> Ubuntu clang version 14.0.0-1ubuntu1.1
>
> we run into the following compile error (seen on Linux ppc64le, probably also an error on x86_64) :
>
> /jdk/src/hotspot/os/linux/cgroupV1Subsystem_linux.hpp:65:10: error: 'is_read_only' overrides a member function but is not marked 'override' [-Werror,-Winconsistent-missing-override]
> bool is_read_only() { return _read_only; }
> ^
> /jdk/src/hotspot/os/linux/cgroupSubsystem_linux.hpp:108:18: note: overridden virtual function is here
> virtual bool is_read_only() = 0;
> ^
> In file included from /jdk/src/hotspot/os/linux/cgroupSubsystem_linux.cpp:30:
> /jdk/src/hotspot/os/linux/cgroupV2Subsystem_linux.hpp:131:54: error: 'memory_controller' overrides a member function but is not marked 'override' [-Werror,-Winconsistent-missing-override]
> CachingCgroupController<CgroupMemoryController>* memory_controller() { return _memory; }
> ^
> /jdk/src/hotspot/os/linux/cgroupSubsystem_linux.hpp:235:62: note: overridden virtual function is here
> virtual CachingCgroupController<CgroupMemoryController>* memory_controller() = 0;
I tested with clang 14 on Linux, and clang 15 on macOS.
Both show the "overrides a member function but is not marked 'override'" warning even without setting -Wall or any special warning flags.
So it is just what we get from using current clang on some platforms.
Switching off this warning, if this is desired, could be handled in another PR.
Enabling the warning for more consistency on gcc, MSVC etc. is also another issue.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/20562#issuecomment-2288323957
More information about the hotspot-runtime-dev
mailing list