RFR: JDK-8142333: Build failure in debugInfoRec.cpp with SS12u4

David Holmes david.holmes at oracle.com
Fri Nov 27 09:41:00 UTC 2015


On 27/11/2015 7:31 PM, Erik Joelsson wrote:
> I'm guessing the "friend" status of DebugInformationRecorder is somehow
> the culprit and that the change to _offset is just done as a consequence
> of removing the friend status. All I know is that it works and that from
> the infra-team, we really need to this bug resolved yesterday.

I can see that if DebugInformationRecorder is no longer a friend then 
offset() needs to be public. What I can't see is how it being a friend 
causes the access errors reported. This is where the error originates:

  DIR_Chunk* match = _all_chunks->insert_sorted<DIR_Chunk::compare>(ns);

and while I'm unclear what is accessible to what at this line, I fail to 
see how _removing_ a friend declaration can _increase_ the accessibility!

I'd like to know there is some subtle C++ template access issue here, 
and not just a broken compiler!

Thanks,
David

> /Erik
>
> On 2015-11-26 05:47, David Holmes wrote:
>> On 25/11/2015 7:02 PM, Erik Joelsson wrote:
>>> Hello,
>>>
>>> The following new build failure has appeared in the hotspot build when
>>> using the proposed new compiler version on Solaris, SS12u4.
>>>
>>> "/opt/jprt/jprtadm/erik/jdk9-dev/hotspot/src/share/vm/code/debugInfoRec.cpp",
>>>
>>> line 281: Error: static DIR_Chunk::compare(DIR_Chunk*const&,
>>> DIR_Chunk*const&) is not accessible from
>>> GrowableArray<DIR_Chunk*>::insert_sorted<&DIR_Chunk::compare>(DIR_Chunk*&).
>>>
>>> "/opt/jprt/jprtadm/erik/jdk9-dev/hotspot/src/share/vm/code/debugInfoRec.cpp",
>>>
>>> line 281: Where: While instantiating
>>> "GrowableArray<DIR_Chunk*>::insert_sorted<&DIR_Chunk::compare>(DIR_Chunk*&)".
>>>
>>>
>>> "/opt/jprt/jprtadm/erik/jdk9-dev/hotspot/src/share/vm/code/debugInfoRec.cpp",
>>>
>>> line 281: Where: Instantiated from non-template code.
>>
>> I'm really struggling to see how those error messages relate to the fix!
>>
>> David
>> -----
>>
>>> Tom Rodriguez provided a patch and I have verified that it solves the
>>> issue. Since this is blocking us upgrading compilers on Solaris, I am
>>> taking the liberty of posting it for review so we may get this resolved
>>> quickly.
>>>
>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8142333
>>> Webrev: http://cr.openjdk.java.net/~erikj/8142333/webrev.hotspot.01/
>>>
>>> /Erik
>


More information about the hotspot-dev mailing list