hg: valhalla/valhalla: 8221545: [lworld] Preliminary support for alternate denotation of values and boxes

Srikanth srikanth.adayapalam at oracle.com
Tue Apr 16 12:09:00 UTC 2019


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