On Fri, 15 Dec 2023 08:48:59 GMT, Kim Barrett <kbarr...@openjdk.org> wrote:
>> Hi all, >> >> This patch fixes the building failure introduced by >> [JDK-8319577](https://bugs.openjdk.org/browse/JDK-8319577) in old GCC >> version (linux & GCC 7.5.0 locally). >> >> Thanks for the review. >> >> Best Regards, >> -- Guoxiong > > The files being proposed for change are cloned copies of a 3rd-party library. > We may want to take updates from that library in the future. Having local > modifications makes that more difficult. > > Also, this library uses C++17. GCC support for C++17 was experimental until > GCC 9. As such, it shouldn't be entirely surprising if an earlier version of > GCC might run into problems with it. > > We've been discussing switching to using C++17 JDK-wide for some time, and I > think that may happen soon. At that point the minimum supported version of > GCC will be changed to at least GCC 9. > > So I think the answer here is that building this lbrary with GCC 7.5 is not > supported and a newer version should be used. So the change should be here: > https://github.com/openjdk/jdk/blob/b31454e36234091c3827c3b4d07f62345cb0cee4/src/java.base/linux/native/libsimdsort/simdsort-support.hpp#L34-L37 > to require a later GCC version. That way, if building with an older version of > GCC then the code in the library won't be built and the library won't be used > by the JDK (because the relevant symbols won't be found). > > But GCC 7.5 will probably not be supported for building the JDK for much > longer. @kimbarrett Thanks for the guide. I updated the code just now. All the `release`, `fastdebug` and `slowdebug` builds succeeded locally with GCC7.5. ------------- PR Comment: https://git.openjdk.org/jdk/pull/17047#issuecomment-1859172217