Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8211088

GCC 6.3.0 build fails with --with-extra-cflags=-Wno-int-conversion

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Fix
    • Icon: P4 P4
    • None
    • None
    • infrastructure
    • None

      Specially configured builds with GCC 6.3.0 on Linux x86_64 started to fail after JDK-8211029:

      This works:
      $ sh ./configure --with-boot-jdk=/pool/buildbot/deps/jdks/default-jdk11/ --with-debug-level=fastdebug
      $ make hotspot

      This fails:
      $ sh ./configure '--with-extra-cflags=-Wno-int-conversion' --with-boot-jdk=/pool/buildbot/deps/jdks/default-jdk11/ --with-debug-level=fastdebug
      $ make hotspot
      Creating hotspot/variant-server/libjvm/gtest/libjvm.so from 94 file(s)
      Creating hotspot/variant-server/libjvm/gtest/gtestLauncher from 1 file(s)
      cc1plus: warning: command line option ‘-Wno-int-conversion’ is valid for C/ObjC but not for C++
      cc1plus: error: unrecognized command line option ‘-Wno-implicit-fallthrough’ [-Werror]
      cc1plus: error: unrecognized command line option ‘-Wno-int-in-bool-context’ [-Werror]
      cc1plus: all warnings being treated as errors
      lib/CompileJvm.gmk:178: recipe for target '/home/shade/jdk-jdk/build/linux-x86_64-server-fastdebug/hotspot/variant-server/libjvm/objs/precompiled/precompiled.hpp.gch' failed
      make[3]: *** [/home/shade/jdk-jdk/build/linux-x86_64-server-fastdebug/hotspot/variant-server/libjvm/objs/precompiled/precompiled.hpp.gch] Error 1
      make[3]: *** Waiting for unfinished jobs....
      cc1plus: error: unrecognized command line option ‘-Wno-implicit-fallthrough’ [-Werror]
      cc1plus: error: unrecognized command line option ‘-Wno-int-in-bool-context’ [-Werror]
      cc1plus: all warnings being treated as errors
      make[3]: *** [/home/shade/jdk-jdk/build/linux-x86_64-server-fastdebug/hotspot/variant-server/libjvm/gtest/objs/precompiled/precompiled.hpp.gch] Error 1
      lib/CompileGtest.gmk:58: recipe for target '/home/shade/jdk-jdk/build/linux-x86_64-server-fastdebug/hotspot/variant-server/libjvm/gtest/objs/precompiled/precompiled.hpp.gch' failed
      make/Main.gmk:257: recipe for target 'hotspot-server-libs' failed
      make[2]: *** [hotspot-server-libs] Error 2

      It seems extra-cflags is passed to C++ compiler, which complains about its validity, and it also fails to recognize the warning options from the build system itself.
      It used to work fine before JDK-8211029. No extra cflags are needed to build jdk/jdk after JDK-8211029, but if we ever need it in future, e.g. for some other toolchain, this would resurface.

            shade Aleksey Shipilev
            shade Aleksey Shipilev
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: