hg: jdk10/master: 8177466: Add compiler support for local variable type-inference

maurizio.cimadamore at oracle.com maurizio.cimadamore at oracle.com
Tue Sep 26 11:59:56 UTC 2017


Changeset: 48ec75306997
Author:    mcimadamore
Date:      2017-09-26 12:52 +0100
URL:       http://hg.openjdk.java.net/jdk10/master/rev/48ec75306997

8177466: Add compiler support for local variable type-inference
Summary: Add support for 'var' in implicitly typed local variable declarations
Reviewed-by: vromero, jlahoda

! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Kinds.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Type.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/code/TypeAnnotations.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Types.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Analyzer.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Annotate.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Infer.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/MemberEnter.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/resources/compiler.properties
! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/JCTree.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/Pretty.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeInfo.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/util/Names.java
! src/jdk.compiler/share/classes/module-info.java
! src/jdk.jshell/share/classes/jdk/jshell/Eval.java
! src/jdk.jshell/share/classes/jdk/jshell/ExpressionToTypeInfo.java
! src/jdk.jshell/share/classes/jdk/jshell/ReplParser.java
! src/jdk.jshell/share/classes/jdk/jshell/SourceCodeAnalysisImpl.java
! src/jdk.jshell/share/classes/jdk/jshell/TaskFactory.java
! src/jdk.jshell/share/classes/jdk/jshell/TreeDissector.java
! src/jdk.jshell/share/classes/jdk/jshell/TypePrinter.java
- src/jdk.jshell/share/classes/jdk/jshell/VarTypePrinter.java
! src/jdk.jshell/share/classes/jdk/jshell/Wrap.java
! test/langtools/jdk/jshell/CompletionSuggestionTest.java
! test/langtools/jdk/jshell/ToolSimpleTest.java
! test/langtools/jdk/jshell/VariablesTest.java
+ test/langtools/tools/javac/diags/examples/IllegalRefToVarType.java
+ test/langtools/tools/javac/diags/examples/LocalArrayMissingTarget.java
+ test/langtools/tools/javac/diags/examples/LocalCantInferNull.java
+ test/langtools/tools/javac/diags/examples/LocalLambdaMissingTarget.java
+ test/langtools/tools/javac/diags/examples/LocalMissingInit.java
+ test/langtools/tools/javac/diags/examples/LocalMrefMissingTarget.java
+ test/langtools/tools/javac/diags/examples/LocalRedundantType.java
+ test/langtools/tools/javac/diags/examples/LocalSelfRef.java
+ test/langtools/tools/javac/diags/examples/VarNotAllowed.java
+ test/langtools/tools/javac/diags/examples/VarNotAllowedArray.java
+ test/langtools/tools/javac/diags/examples/VarNotAllowedCompound.java
+ test/langtools/tools/javac/diags/examples/VarNotAllowedHere.java
+ test/langtools/tools/javac/lvti/BadLocalVarInferenceTest.java
+ test/langtools/tools/javac/lvti/BadLocalVarInferenceTest.out
+ test/langtools/tools/javac/lvti/FoldingTest.java
+ test/langtools/tools/javac/lvti/FoldingTest.out
+ test/langtools/tools/javac/lvti/ParserTest.java
+ test/langtools/tools/javac/lvti/ParserTest.out
+ test/langtools/tools/javac/lvti/SelfRefTest.java
+ test/langtools/tools/javac/lvti/SelfRefTest.out
+ test/langtools/tools/javac/lvti/badTypeReference/BadTypeReference.java
+ test/langtools/tools/javac/lvti/badTypeReference/BadTypeReference.out
+ test/langtools/tools/javac/lvti/badTypeReference/pkg/nested/var/A.java
+ test/langtools/tools/javac/lvti/badTypeReference/pkg/var.java
+ test/langtools/tools/javac/lvti/harness/InferredType.java
+ test/langtools/tools/javac/lvti/harness/LocalVariableInferenceTester.java
+ test/langtools/tools/javac/lvti/harness/NonDenotableTest.java
+ test/langtools/tools/javac/lvti/harness/PrimitiveTypeTest.java
+ test/langtools/tools/javac/lvti/harness/ReferenceTypeTest.java
! test/langtools/tools/javac/parser/extend/TrialParser.java
! test/langtools/tools/lib/types/TypeHarness.java



More information about the jdk10-changes mailing list