RFR: 8257420: Zero VM build broken with clang after JDK-8256726 due to strlen() is not a constexpr [v2]
Aleksey Shipilev
shade at openjdk.java.net
Mon Nov 30 15:13:57 UTC 2020
On Mon, 30 Nov 2020 15:04:10 GMT, Jie Fu <jiefu at openjdk.org> wrote:
>> Hi all,
>>
>> The newly added STATIC_ASSERT [1] breaks the build of Zero VM with clang.
>> It complains that 'non-type template argument is not a constant expression' since strlen() [2] is not a constexpr.
>>
>> Any comments?
>>
>> Thanks.
>> Best regards,
>> Jie
>>
>> [1] https://github.com/openjdk/jdk/blob/master/src/hotspot/share/interpreter/zero/bytecodeInterpreter.cpp#L1374
>> [2] https://github.com/openjdk/jdk/blob/master/src/hotspot/share/runtime/flags/jvmFlagLookup.hpp#L42
>
> Jie Fu has updated the pull request incrementally with two additional commits since the last revision:
>
> - Remove STATIC_ASSERT
> - Revert changes
src/hotspot/share/interpreter/zero/bytecodeInterpreter.cpp line 1375:
> 1373: const int add_len = 32; \
> 1374: /* Two integers, the additional message, and the null-terminator */ \
> 1375: char message[2 * jintAsStringSize + add_len + 1]; \
Sorry for another nit. Since `STATIC_ASSERT` is gone, we can inline `add_len`, and make the whole thing `+ 33`.
-------------
PR: https://git.openjdk.java.net/jdk/pull/1518
More information about the hotspot-runtime-dev
mailing list