cvs commit: ports/java/jdk14/files patch-interpreter_shared.hpp

Greg Lewis glewis at
Sat Oct 16 10:12:23 PDT 2004

glewis      2004-10-16 17:12:22 UTC

  FreeBSD ports repository

  Added files:
    java/jdk14/files     patch-interpreter_shared.hpp 
  . Fix the Server VM for gcc 3.4 part 1/2.
    The HotSpot code (ab)uses named enums as ints in a number of places.
    The problem with this is that according the the C++ spec, the compiler
    (essentially) only needs to use an integral type wide enough to hold
    the values defined in the enum.  Earlier versions of gcc appear to have
    just used an int whether they could have got away with a narrower type
    or not, hence the code worked as expected.  gcc 3.4 now appears to
    implement this part of the spec, so using an enum blindly as an int
    causes various problems due to overflow.
    This case is particularly bogus since the enums are merely to define
    a named integral type within a class (VMReg::Name doesn't even have
    any values enumerated in the declaration).  So, convert these two
    enums to simply be typedef'ed ints.
  Sleuth work, discussion and code suggestions:   peadar
  Revision  Changes    Path
  1.1       +38 -0     ports/java/jdk14/files/patch-interpreter_shared.hpp (new)

More information about the cvs-ports mailing list