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

Hotspot build doesn't have -std=gnu++98 gcc option

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P4
    • 9
    • 9
    • infrastructure
    • None
    • b131
    • generic
    • generic

    Description

      JDK-8151841 modified FLAGS_SETUP_COMPILER_FLAGS_FOR_JDK to always define CXXSTD_CXXFLAG="-std=gnu++98" when building with gcc, in order to force recent versions of gcc to use that standard rather than defaulting to some more recent standard that our code base doesn't presently support.

      [The new build system has tweaked that to add the optional prefix taken by that function.]

      JDK-8151841 additionally modified the assignment of EXTRA_CFLAGS in hotspot-spec.gmk.in to include $(CXXSTD_CXXFLAG). That file no longer exists in the new build system, and I can't find any corresponding code that makes use of CXXSTD_CXXFLAG.

      Examining a build log on Linux, gcc invocations for (some? all? I haven't explored that question) builds outside the hotspot tree include the -std=gnu++98 option, but that option isn't present when compiling files in the hotspot tree.

      This appears to be a regression in the move from the old hotspot build system to the new one.

      Attachments

        Issue Links

          Activity

            People

              andrew Andrew Hughes
              kbarrett Kim Barrett
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: