Type equality for values
Paul Govereau
paul.govereau at oracle.com
Fri Aug 1 17:10:13 UTC 2014
The following code is valid for reference types:
class A<T> {
int x = 0;
<T,U> boolean foo(A<T> a, A<U> b) {
return (a == b);
}
}
However, I don't think this makes sense for value types. In the case of
reference types, the "top" is a realizable type, namely Object; but, for
values the "top" is not realizable?
final __ByValue class A<T> {
final int x = 0;
<any T, any U> boolean foo(A<T> a, A<U> b) {
return (a == b); // <<--- type error ??
}
}
Should this be a type error?
Paul
More information about the valhalla-dev
mailing list