review request (M): 7117167: Misc warnings in java.lang.invoke and sun.invoke.* (original) (raw)

Stuart Marks stuart.marks at oracle.com
Tue Dec 6 15:42:15 PST 2011


On 12/1/11 3:12 PM, John Rose wrote:

7117167: Misc warnings in java.lang.invoke and sun.invoke.*

http://cr.openjdk.java.net/~jrose/7117167/webrev.00/ Removing build warnings from java.lang.invoke and sun.invoke.*, as part of the December 2011 cleanup effort.

Hi John,

I'm finally getting back to this. Just a couple comments:

MethodHandles.java --

The change here is to add a wildcard type parameter to the parameter of the unreflectConstructor() method. I believe this is a public API. Is such a change permitted? I started thinking about compatibility, but compatibility is actually a side issue. The main issue is whether it's a spec change. I think it is, but I have to admit that not really sure. But if it is a spec change, I don't think we should be making it in the context of warnings cleanup.

MethodHandleImpl.java --

Just an observation, really, but I puzzled for a while over the suppression of rawtypes and unchecked warnings at the construction of AllocateObject (L115). As I looked further I realized, "oh that's what Remi was talking about." [1] On the other hand I see your point that the class declaration AllocateObject and uses of C within that class really do make sense. Perhaps this is the time when one really wants to write

 new AllocateObject<?>(...)

but of course this is illegal. I don't have a specific recommendation to change anything here. It's just that whenever there's code that's puzzling, I'm always looking around for a better way to write it.

Anyway, that's it, everything else looks fine.

s'marks

[1] http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000406.html



More information about the jdk8-dev mailing list