hg: valhalla/valhalla: 8221545: [lworld] Preliminary support for alternate denotation of values and boxes
Brian Goetz
brian.goetz at oracle.com
Tue Apr 16 13:24:19 UTC 2019
Is the conversion from V to V? still considered a boxing conversion, or is it a widening conversion now? The language we (currently think we) want is
V <: V?
In the other direction, we’re still discussing whether the narrowing conversion is implicit or explicit.
> On Apr 16, 2019, at 8:09 AM, Srikanth <srikanth.adayapalam at oracle.com> wrote:
>
> Notes:
>
> - This is the initial commit for supporting V? notation as an alternate for V.box
> - The old .box and .val notation is not withdrawn yet and can still be used, but we should really move over to the new syntax as soon as possible.
> - Existing javac tests have been replicated to use the V? syntax.
> - VBC migration related work is not done yet.
> - One issue that showed up in the parser implementation is the ambiguity at the point of seeing ?
> in v instanceof Type? exp: exp2; I have arranged for this to be processed as a conditional rather
> than as denoting nullability.
> - On a long value type name the ? suffix does not really stand out ATM, but I guess IDE colorcoding can address this issue.
> - There is one failing test in the langtools suite (jdk/jshell/TypeNameTest.java) I will raise a follow up
> ticket to address this.
> - More testing is required and will be undertaken in the coming weeks. I request/encourage testing by the interested parties too.
>
> Thanks!
> Srikanth
>
> On 16/04/19 5:32 PM, srikanth.adayapalam at oracle.com wrote:
>> Changeset: bf52db1ad4ea
>> Author: sadayapalam
>> Date: 2019-04-16 17:31 +0530
>> URL: http://hg.openjdk.java.net/valhalla/valhalla/rev/bf52db1ad4ea
>>
>> 8221545: [lworld] Preliminary support for alternate denotation of values and boxes
>>
>> ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java
>> ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/AttrContext.java
>> ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Resolve.java
>> ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java
>> ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/JCTree.java
>> ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeCopier.java
>> ! test/langtools/tools/javac/valhalla/lworld-values/BogusIncompatibility.java
>> + test/langtools/tools/javac/valhalla/lworld-values/BoxValCastTest2.java
>> + test/langtools/tools/javac/valhalla/lworld-values/GenericsWithQuestion.java
>> + test/langtools/tools/javac/valhalla/lworld-values/GenericsWithQuestion.out
>> ! test/langtools/tools/javac/valhalla/lworld-values/InnerClassAttributeValuenessTest.java
>> + test/langtools/tools/javac/valhalla/lworld-values/IntercastTest2.java
>> + test/langtools/tools/javac/valhalla/lworld-values/LookupOnLoxTest2.java
>> ! test/langtools/tools/javac/valhalla/lworld-values/Point.java
>>
>
More information about the valhalla-dev
mailing list