Build breakage
Andrew Hughes
ahughes at redhat.com
Tue May 29 06:11:03 PDT 2012
----- Original Message -----
> Andrew,
>
> I filed 7172226
> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7172226 (not
> available yet)
> See below for the patch.
>
> On 2012-05-28 15:34, Andrew Hughes wrote:
> >
> >
> > ----- Original Message -----
> >> Hi Andrew,
> >>
> >> On 2012-05-28 14:57, Andrew Hughes wrote:
> >>> I'm trying to build a patch against the build forest
> >>> (http://hg.openjdk.java.net/jdk8/build/) and the HotSpot build
> >>> is broken in the current checkout:
> >>>
> >>> /home/andrew/projects/openjdk/upstream/build/hotspot/src/share/vm/memory/binaryTreeDictionary.cpp:
> >>> In instantiation of 'TreeList<Chunk>*
> >>> TreeList<Chunk>::remove_chunk_replace_if_needed(TreeChunk<Chunk>*)
> >>> [with Chunk = FreeChunk]':
> >>> /home/andrew/projects/openjdk/upstream/build/hotspot/src/share/vm/memory/binaryTreeDictionary.cpp:1342:16:
> >>> required from here
> >>> /home/andrew/projects/openjdk/upstream/build/hotspot/src/share/vm/memory/binaryTreeDictionary.cpp:173:7:
> >>> error: 'link_tail' was not declared in this scope, and no
> >>> declarations were found by argument-dependent lookup at the point
> >>> of instantiation [-fpermissive]
> (...)
> >>> /home/andrew/projects/openjdk/upstream/build/hotspot/src/share/vm/memory/binaryTreeDictionary.cpp:928:7:
> >>> note: declarations in dependent base
> >>> 'TreeCensusClosure<FreeChunk>' are not found by unqualified
> >>> lookup
> >>> /home/andrew/projects/openjdk/upstream/build/hotspot/src/share/vm/memory/binaryTreeDictionary.cpp:928:7:
> >>> note: use 'this->do_list' instead
> >>>
> >>> This is with GCC 4.7, exact same build as I do for 7u which works
> >>> fine.
> >>>
> >>> ALT_BOOTDIR points to:
> >>>
> >>> java version "1.7.0_03-icedtea"
> >>> OpenJDK Runtime Environment (IcedTea7 2.1) (Gentoo build
> >>> 1.7.0_03-icedtea-b147)
> >>> OpenJDK 64-Bit Server VM (build 22.0-b10, mixed mode)
> >>>
> >>> Settings:
> >>>
> >>> ANT_RESPECT_JAVA_HOME=true LANG=C make
> >>> ALT_BOOTDIR=${SYSTEM_ICEDTEA7} \
> >>> ALT_OUTPUTDIR=${WORKING_DIR}/${BUILD_DIR} \
> >>> ALT_PARALLEL_COMPILE_JOBS=$PARALLEL_JOBS \
> >>> ALT_DROPS_DIR=${DROPS_DIR} \
> >>> HOTSPOT_BUILD_JOBS=$PARALLEL_JOBS \
> >>> ANT=/usr/bin/ant \
> >>> QUIETLY="" \
> >>> DEBUG_BINARIES="true" \
> >>> DEBUG_CLASSFILES="true" \
> >>> NO_DOCS="true" \
> >>> OTHER_JAVACFLAGS="-Xmaxwarns 10000" \
> >>> ${WARNINGS} STATIC_CXX=false \
> >>> STRIP_POLICY=no_strip
> >>>
> >>> I think this may be related to:
> >>>
> >>> $ hg log -R hotspot -k 7164144
> >>> changeset: 3297:f69a5d43dc19
> >>> parent: 3295:9f059abe8cf2
> >>> user: jmasa
> >>> date: Wed Apr 25 09:55:55 2012 -0700
> >>> summary: 7164144: Fix variable naming style in
> >>> freeBlockDictionary.* and binaryTreeDictionary*
> >>>
> >>> which is in hotspot-comp, hotspot-rt& build, but not 7u.
> >>>
> >>> Any ideas?
> >>
> >> I've seen this when I tried building with GCC 4.7 as well.
> >> This problem comes from 9f059abe8cf2, "Generalize the CMS free
> >> list
> >> code" which introduced some templates.
> >> It appears that GCC 4.7 is more strict when doing argument
> >> dependent
> >> lookup than 4.6.
> >> The fix is to do just what gcc suggests and use this->* or use the
> >> qualified name of the function, for example
> >> TreeList<Chunk>::link_tail
> >> in the first failure. As you can see there are already some places
> >> in
> >> that code which use the fully qualified name.
> >>
> >> I just discovered that I had a patch that fixes most of these
> >> issues
> >> in
> >> binaryTreeDictionary so I'll go ahead and file a CR for this.
> >>
> >> Regards
> >> /mg
> >>
> >
> > Thanks Mikael. If you could post the patch, it would be much
> > appreciated.
> > I can't build OpenJDK8 at present.
>
> I've uploaded my fix (only build tested) to
> http://cr.openjdk.java.net/~mgerdin/7172226/webrev.0/
>
> /mg
>
> >
> >> --
> >> Mikael Gerdin
> >> Java SE VM SQE Stockholm
> >>
> >
>
> --
> Mikael Gerdin
> Java SE VM SQE Stockholm
>
Thanks. This patch worked and I've committed it to the IcedTea OpenJDK8 tree:
http://hg.openjdk.java.net/icedtea/jdk8/hotspot/rev/f1947ffdccd9
Can someone with JPRT access please push this through?
--
Andrew :)
Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)
PGP Key: 248BDC07 (https://keys.indymedia.org/)
Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07
More information about the hotspot-dev
mailing list