CFV: New jdk9 Reviewer: Jan Lahoda

Maurizio Cimadamore maurizio.cimadamore at oracle.com
Tue Oct 14 23:34:40 UTC 2014


Vote: yes!

Maurizio

On 09/10/14 02:54, 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