Java Solaris Communities Sun Store Join SDN My Profile Why Join?
 
Bug Database
Bug Detail
Quick Lists
Top 25 Bugs
Top 25 RFE's
Recently Closed Bugs
Printable Page Printable Page


Bug Database
Bug ID: 6469784
Votes 0
Synopsis Hotspot doesn't build with gcc without precompiled headers
Category hotspot:other
Reported Against
Release Fixed
State 3-Accepted, bug
Priority: 4-Low
Related Bugs
Submit Date 12-SEP-2006
Description
GCC emits a warning (treated as an error) if an inline method is declared and used without the body being present, even if the calling function is in a header file and is not being used.  This occurs in a couple place in hotspot:

Compiling src/share/vm/gc_implementation/shared/adaptiveSizePolicy.cpp
/home/km88527/ws/rt_baseline/src/share/vm/oops/markOop.hpp:208: warning: inline
function `bool markOopDesc::must_be_preserved_with_bias(oopDesc*) const' used bu
t never defined
/home/km88527/ws/rt_baseline/src/share/vm/oops/markOop.hpp:232: warning: inline
function `bool markOopDesc::must_be_preserved_with_bias_for_promotion_failure(oo
pDesc*) const' used but never defined
/home/km88527/ws/rt_baseline/src/share/vm/oops/markOop.hpp:243: warning: inline
function `bool markOopDesc::must_be_preserved_with_bias_for_cms_scavenge(klassOo
pDesc*) const' used but never defined
gmake[2]: *** [adaptiveSizePolicy.o] Error 1

Sun's CC doesn't complain about this, and since the linux builds build with precompiled headers, we don't see this in the current builds.
Posted Date : 2006-09-12 15:37:15.0
Work Around
N/A
Evaluation
The few places where this occurs can be corrected by moving the calling method either into the inline file or cpp file as appropriate.
Posted Date : 2006-09-12 15:38:48.0
Comments
  
  Include a link with my name & email   

Submitted On 17-JAN-2007
Passe
Hello,

What do we have to do in order to build JDK with precompiled headers on linux ?

I want to test a fix I've done for this bug : http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6509038


Submitted On 04-MAR-2007
A work around is to comment the line :

WARNINGS_ARE_ERRORS = -Werror

in the file   build/linux/makefiles/gcc.make



PLEASE NOTE: JDK6 is formerly known as Project Mustang