CFV: New jdk9 Reviewer: Jan Lahoda

Xuelei Fan xuelei.fan at oracle.com
Thu Oct 9 02:05:18 UTC 2014


Vote: yes

Xuelei

On 10/9/2014 9:54 AM, Jonathan Gibbons wrote:
> I hereby nominate Jan Lahoda to jdk9 Reviewer.
> 
> Jan has had many years experience working on javac, while working on
> NetBeans and since joining the javac team. He has contributed over 90
> changesets and participated in many reviews as well. Some of his more
> significant contributions are listed below.
> 
> Votes are due by 22 Oct 2014.
> 
> Only current jdk9 Reviewers [1] are eiligible to vote on this
> nomination. Votes must be cast in the open by replying to this mailing
> list.
> 
> For Three-Vote Consensus voting instructions, see [2].
> 
> -Alan.
> 
> [1] http://openjdk.java.net/census
> [2] http://openjdk.java.net/projects/#reviewer-vote
> 
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/d2b75f318fea
> 8043643: Add an crules analyzer avoiding string concatenation in
> messages of Assert checks.
> Summary: Generalizing the crules infrastructure, adding a new analyzer
> to check String concatenation in Assert calls.
> Reviewed-by: jjg, vromero
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/eb1989ca0494
> 6707032: Division by zero warning not suppressed properly in some cases
> Summary: Delay reporting of the division by zero warning until
> annotations are resolved, so that @SuppressWarnings works correctly.
> Reviewed-by: vromero
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/d8d49a41294a
> 8046916: Type parameter annotations don't work with multiple type
> parameters
> Summary: When reading type variable's annotations out of the owner's
> type annotations, use the type variable's index in owner to exclude
> annotations belonging to other type variables.
> Reviewed-by: jfranck, emc
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/4487f6f98252
> 8043186: javac test langtools/tools/javac/util/StringUtilsTest.java fails
> Summary: The result of String.toLowerCase.indexOf does not always point
> at the start of the given string in the non-lowercased text.
> Reviewed-by: jjg, bpatel
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/dfd281a9c6bf
> 8041663: Sensitive dependence on location of nested interface
> Summary: Adding a method among ambiguous candidates only if it is more
> specific than some of the existing candidates.
> Reviewed-by: dlsmith, vromero
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/da8d9f8995d1
> 8040822: Duplicated notifications can be sent to TaskListener
> Summary: The analyze finished event must only be sent on the first call
> to JavaCompiler.flow for a given class.
> Reviewed-by: jjg
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/176a2e871eb9
> 8041695: Update the NetBeans build script and metadata
> Summary: Various improvements to the NetBeans project for langtools,
> adding formatting/import setting for langtools.
> Reviewed-by: ksrini
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/95f5329ecbbb
> 8038788: javac behaves incorrectly for annotations after method type
> parameters in some cases
> Reviewed-by: jjg, emc
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/d8d27b8088fd
> 8038455: Use single Context for all rounds of annotation processing
> Summary: One set of javac services, as well as created ClassSymbols, is
> reused for all rounds of processing now.
> Reviewed-by: jjg, jfranck, darcy, vromero
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/2d06980994e0
> 8035890: jdk8 javac -source 7 compiles test case it should not
> Summary: Ensuring source level checks are performed in two additional
> cases related to type annotations, adding specialized error message for
> annotations after method type parameters.
> Reviewed-by: jfranck, jjg
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/7690787d1a81
> 8034854: outer_class_info_index of synthetic class is not zero
> Summary: Auxiliary synthetic anonymous classes should not have an outer
> class specified in the InnerClasses attribute.
> Reviewed-by: vromero, jjg, abuckley
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/86afe494b60f
> 8033961: Formatting of -Xlint: command line help
> Summary: Improving formatting of command line help for -Xlint, including
> a short description of each lint.
> Reviewed-by: jjg
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/d1897a74e801
> 8033421: @SuppressWarnings("deprecation") does not work when overriding
> deprecated method
> Summary: When the overrides deprecated method warning is being reported,
> need to do that in the lint context of the method.
> Reviewed-by: vromero
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/6c96a2941e60
> 8030091: Request to update error messages from javac for negative
> varargs test cases
> Summary: Introducing a new error message for vararg parameter not being
> the last parameter, improving error message for unexpected character
> after a parameter.
> Reviewed-by: jjg, sogoel
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/c71cb4fbb329
> 8028576: Incorrect RuntimeVisibleTypeAnnotations for exception
> parameters when not generating debuging info
> Summary: The exception parameters with type annotations need to be added
> into the varBuffer even if not generating debug info
> Reviewed-by: jjg, emc
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/7163a6b6d8ea
> 8030049: RoundEnvironment.getElementsAnnotatedWith receives wrong elements
> Summary: Match the required and actual annotations using Element
> equivalence rather than TypeMirror equivalence, to avoid trouble with
> erroneous types.
> Reviewed-by: darcy
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/c1c20e618930
> 8029376: Full attribution of unresolvable annotations
> 8029161: javac crashing when processing broken annotations
> Summary: Attributing values of annotation attributes regardless how
> broken the annotation is.
> Reviewed-by: jjg, jfranck
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/378aa10645e1
> 8028235: Better error recovery for parsing 'void' as a type of the
> lambda parameter
> Summary: Handle "void" as a primitive type in JavacParser.analyzeParens.
> Reviewed-by: vromero
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/55e4fd84b317
> 8028415: TreeMaker.Literal(Object) creates invalid JCLiterals when
> passed a Character.
> Summary: JCLiteral for char must contain an Integer, not the provided
> Character.
> Reviewed-by: jjg
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/bc18278c195e
> 8029800: Flags.java uses String.toLowerCase without specifying Locale
> Summary: Introducing StringUtils.toLowerCase/toUpperCase independent on
> the default locale, converting almost all usages of
> String.toLowerCase/toUpperCase to use the new methods.
> Reviewed-by: jjg, bpatel
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/756ae3791c45
> 8027789: Access method for Outer.super.m() references indirect superclass
> Summary: Internally convert the qualified super access to an equivalent
> of an unqualified super access inside the access method.
> Reviewed-by: vromero, jjg
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/8acb838c9b79
> 8026374: javac accepts void as a method parameter
> Summary: Changing Check.validate to reject void types.
> Reviewed-by: jjg, vromero
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/6e0f31d61e56
> 8027142: Invokedynamic instructions don't get line number table entries
> Summary: When emitting invokedynamic instruction, write pendingStatPos,
> if set, into the LineNumberTable. Invokedynamic itself does not set the
> pendingStatPos.
> Reviewed-by: jjg, jrose, ksrini, vromero
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/75c8cde12ab6
> 8027281: Incorrect invokespecial generated for JCK lang
> EXPR/expr636/expr63602m* tests
> Summary: When invoking interface default method via a superclass, use
> the direct superclass in the reference.
> Reviewed-by: vromero, dlsmith, jjg
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/8b4e1421a9b7
> 8027310: Annotation Processor crashes with NPE
> Summary: JCAnnotation.attribute is null when annotation type is unavailable
> Reviewed-by: jjg, jfranck
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/864dafc5ab7a
> 8026861: Wrong LineNumberTable for variable declarations in lambdas
> Summary: Setting or correcting positions for many trees produced by
> LambdaToMethod.
> Reviewed-by: vromero, rfield
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/79649bf21a92
> 8026180: com.sun.source.tree.NewArrayTree refers to
> com.sun.tools.javac.util.List
> Summary: Correcting import in NewArrayTree, adding test protecting
> againts improper types in API signatures
> Reviewed-by: jjg
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/87b5bfef7edb
> 8014016: javac is too late detecting invalid annotation usage
> Summary: Adding new queue to Annotate for validation tasks, performing
> annotation validation during enter
> Reviewed-by: jjg, emc, jfranck
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/872c4a898b38
> 6278240: Exception from AnnotationValue.getValue() should list the found
> type not the required type
> Reviewed-by: darcy, jfranck, jjg
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/1b469fd31e35
> 8025087: Annotation processing api returns default modifier for
> interface static method
> Summary: ClassReader must not set Flags.DEFAULT for interface static
> methods
> Reviewed-by: vromero, jjg
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/0be3f1820e8b
> 8025141: java.lang.ClassFormatError: Illegal field modifiers in class (...)
> Summary: Should not generate non-public $assertionsDisabled field into
> interfaces
> Reviewed-by: jjg, vromero
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/c13305cf8528
> 8025118: Annotation processing api returns default modifier for
> interface without default methods
> Summary: TypeElement.getModifiers() should not contain Modifier.DEFAULT
> Reviewed-by: darcy, jjg
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/b7d8b71e1658
> 8022765: Compiler crashes with exception on wrong usage of an annotation.
> Summary: Error recovery for incorrect annotation attribute values -
> ensure the values are always attributed appropriately
> Reviewed-by: jfranck, jjg
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/41599b57d262
> 8023835: TreeMaker.QualIdent() too leafy
> Reviewed-by: jjg
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/8d1c48de706d
> 8022567: Javac Should Generate Warnings For Raw Array Type
> Reviewed-by: jjg
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/4ce8148ffc4f
> 8021112: Spurious unchecked warning reported by javac
> 6480588: No way to suppress deprecation warnings when implementing
> deprecated interface
> Summary: Fixing DeferredLintHandler configuration, so lint warnings are
> reported with correct @SuppressWarnings settings
> Reviewed-by: jjg, vromero
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/77d395862700
> 8019521: Enhanced rethrow disabled in lambdas
> Summary: Fixing effectively final detection inside lambdas, small
> cleanup related to thrown types detection in lambdas
> Reviewed-by: mcimadamore, jjg
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/f657d400c736
> 8022508: javac crashes if the generics arity of a base class is wrong
> Reviewed-by: mcimadamore, vromero
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/ec77c7b46c37
> 8015809: More user friendly compile-time errors for uncaught exceptions
> in lambda expression
> Summary: Producing individual errors for uncaught undeclared exceptions
> inside lambda expressions, rather than one error for the whole lambda
> Reviewed-by: mcimadamore
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/cd9e8cea1b3c
> 8021338: Diamond finder may mark a required type argument as unnecessary
> Reviewed-by: mcimadamore
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/8c4b2987edac
> 8020689: Missing LineNumberTable entries in compiled class files
> Reviewed-by: ksrini, mcimadamore
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/10711bd8bb2d
> 8020586: Warning produced for an incorrect file
> Summary: Always using DeferredLintHandler.immediateHandler when
> processing import classes
> Reviewed-by: mcimadamore
> 
> http://hg.openjdk.java.net/jdk9/dev/langtools/rev/170e486632d9
> 8004504: ListBuffer could reuse List.nil() as the sentinel element
> Summary: ListBuffer.last now points to the last elements with client
> data, or null if none.
> Reviewed-by: jjg, mcimadamore
> 



More information about the jdk9-dev mailing list