hg: jigsaw/jake/corba: 2 new changesets

2017-05-25 Thread mandy . chung
Changeset: 95ed14547ca9
Author:lana
Date:  2017-05-26 00:29 +
URL:   http://hg.openjdk.java.net/jigsaw/jake/corba/rev/95ed14547ca9

Added tag jdk-9+171 for changeset c62e5964cfcf

! .hgtags

Changeset: 117bfab0a8bd
Author:mchung
Date:  2017-05-25 19:49 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/corba/rev/117bfab0a8bd

Merge

! .hgtags



hg: jigsaw/jake/langtools: 2 new changesets

2017-05-25 Thread mandy . chung
Changeset: 65652f51a99a
Author:lana
Date:  2017-05-26 00:29 +
URL:   http://hg.openjdk.java.net/jigsaw/jake/langtools/rev/65652f51a99a

Added tag jdk-9+171 for changeset aae59039c1f5

! .hgtags

Changeset: 88aaba14239f
Author:mchung
Date:  2017-05-25 19:49 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/langtools/rev/88aaba14239f

Merge

! .hgtags



hg: jigsaw/jake/jaxp: 4 new changesets

2017-05-25 Thread mandy . chung
Changeset: e6d6c8126a36
Author:jjg
Date:  2017-05-16 17:36 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/jaxp/rev/e6d6c8126a36

8180385: Fix HTML5 issues in the java.xml module
Reviewed-by: joehw, lancea

! src/java.xml/share/classes/javax/xml/catalog/CatalogFeatures.java
! src/java.xml/share/classes/javax/xml/catalog/package.html
! src/java.xml/share/classes/javax/xml/datatype/DatatypeFactory.java
! src/java.xml/share/classes/javax/xml/datatype/Duration.java
! src/java.xml/share/classes/javax/xml/datatype/XMLGregorianCalendar.java
! src/java.xml/share/classes/javax/xml/datatype/package.html
! src/java.xml/share/classes/javax/xml/namespace/NamespaceContext.java
! src/java.xml/share/classes/javax/xml/stream/XMLEventWriter.java
! src/java.xml/share/classes/javax/xml/stream/XMLInputFactory.java
! src/java.xml/share/classes/javax/xml/stream/XMLOutputFactory.java
! src/java.xml/share/classes/javax/xml/stream/XMLStreamReader.java
! src/java.xml/share/classes/javax/xml/stream/XMLStreamWriter.java
! src/java.xml/share/classes/javax/xml/transform/package.html
! src/java.xml/share/classes/javax/xml/validation/SchemaFactory.java
! src/java.xml/share/classes/javax/xml/validation/SchemaFactoryLoader.java
! src/java.xml/share/classes/javax/xml/validation/Validator.java
! src/java.xml/share/classes/javax/xml/validation/package.html
! src/java.xml/share/classes/javax/xml/xpath/XPath.java
! src/java.xml/share/classes/javax/xml/xpath/XPathExpression.java
! src/java.xml/share/classes/javax/xml/xpath/package.html
! src/java.xml/share/classes/org/w3c/dom/Attr.java
! src/java.xml/share/classes/org/w3c/dom/Document.java
! src/java.xml/share/classes/org/w3c/dom/Node.java
! src/java.xml/share/classes/org/w3c/dom/ranges/package.html
! src/java.xml/share/classes/org/xml/sax/package.html

Changeset: c27321c889cf
Author:lana
Date:  2017-05-18 16:47 +
URL:   http://hg.openjdk.java.net/jigsaw/jake/jaxp/rev/c27321c889cf

Merge


Changeset: e88a78db4c18
Author:lana
Date:  2017-05-26 00:29 +
URL:   http://hg.openjdk.java.net/jigsaw/jake/jaxp/rev/e88a78db4c18

Added tag jdk-9+171 for changeset c27321c889cf

! .hgtags

Changeset: ab897248d66a
Author:mchung
Date:  2017-05-25 19:49 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/jaxp/rev/ab897248d66a

Merge

! .hgtags



hg: jigsaw/jake/nashorn: 2 new changesets

2017-05-25 Thread mandy . chung
Changeset: c8d6b740f0f7
Author:lana
Date:  2017-05-26 00:29 +
URL:   http://hg.openjdk.java.net/jigsaw/jake/nashorn/rev/c8d6b740f0f7

Added tag jdk-9+171 for changeset fc416270a776

! .hgtags

Changeset: 3e76e17ddd2a
Author:mchung
Date:  2017-05-25 19:50 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/nashorn/rev/3e76e17ddd2a

Merge

! .hgtags



hg: jigsaw/jake/jaxws: 2 new changesets

2017-05-25 Thread mandy . chung
Changeset: 8c615099f3e3
Author:lana
Date:  2017-05-26 00:29 +
URL:   http://hg.openjdk.java.net/jigsaw/jake/jaxws/rev/8c615099f3e3

Added tag jdk-9+171 for changeset 139e7c786ee4

! .hgtags

Changeset: a8760921acb7
Author:mchung
Date:  2017-05-25 19:49 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/jaxws/rev/a8760921acb7

Merge

! .hgtags



hg: jigsaw/jake/jdk: 15 new changesets

2017-05-25 Thread mandy . chung
Changeset: 78ce7067aba9
Author:bpb
Date:  2017-05-16 14:11 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/jdk/rev/78ce7067aba9

8180431: Remove intermittent keyword from some no longer failing NIO tests
Summary: Remove "intermittent" keyword from @key tag,
Reviewed-by: alanb

! test/java/nio/channels/Selector/SelectAndClose.java
! test/java/nio/channels/Selector/WakeupAfterClose.java

Changeset: 148a2cbe49a4
Author:darcy
Date:  2017-05-16 18:23 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/jdk/rev/148a2cbe49a4

8180452: Mark ClipCloseLoss.java as failing intermittently
Reviewed-by: serb

! test/javax/sound/sampled/Clip/ClipCloseLoss.java

Changeset: 09038ebee480
Author:mullan
Date:  2017-05-17 08:51 -0400
URL:   http://hg.openjdk.java.net/jigsaw/jake/jdk/rev/09038ebee480

8180307: Update JDK 9 Required Cipher Algorithms
Reviewed-by: valeriep

! src/java.base/share/classes/javax/crypto/Cipher.java

Changeset: 93b0c398e243
Author:bpb
Date:  2017-05-17 14:29 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/jdk/rev/93b0c398e243

7086489: File.lastModified should accuracy as well as resolution
Summary: Add an @apiNote indicating that the last-modified time might be of 
coarser than millisecond granularity.
Reviewed-by: smarks

! src/java.base/share/classes/java/io/File.java

Changeset: 13b7c6fdf864
Author:henryjen
Date:  2017-05-17 16:26 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/jdk/rev/13b7c6fdf864

8180447: Trailing space in JDK_JAVA_OPTIONS causes an application fail to launch
Reviewed-by: alanb, mchung, ksrini

! src/java.base/share/native/libjli/args.c
! src/java.base/share/native/libjli/emessages.h
! test/tools/launcher/ArgsEnvVar.java

Changeset: 7efb352c6765
Author:ihse
Date:  2017-05-18 09:23 +0200
URL:   http://hg.openjdk.java.net/jigsaw/jake/jdk/rev/7efb352c6765

8180426: Use standard css file for new docs bundle index.html page
Reviewed-by: mchung, erikj

+ make/data/docs-resources/resources/jdk-default.css
- make/data/docs-resources/specs/resources/jdk-default.css
! make/src/classes/build/tools/docs/docs-bundle-page.html

Changeset: 85ccf9e98ba0
Author:ihse
Date:  2017-05-18 12:00 +0200
URL:   http://hg.openjdk.java.net/jigsaw/jake/jdk/rev/85ccf9e98ba0

8180486: extLink taglet needs escaped ""
Reviewed-by: dholmes

! make/src/classes/build/tools/taglet/ExtLink.java

Changeset: ee3280639210
Author:lana
Date:  2017-05-18 16:48 +
URL:   http://hg.openjdk.java.net/jigsaw/jake/jdk/rev/ee3280639210

Merge

- make/data/docs-resources/specs/resources/jdk-default.css

Changeset: f6553abdefb6
Author:bchristi
Date:  2017-05-19 09:41 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/jdk/rev/f6553abdefb6

8180633: Remove intermittent key from java/lang/ClassLoader/Assert.java
Reviewed-by: darcy, mchung

! test/java/lang/ClassLoader/Assert.java

Changeset: 490393b435bb
Author:stuefe
Date:  2017-05-21 10:52 +0200
URL:   http://hg.openjdk.java.net/jigsaw/jake/jdk/rev/490393b435bb

8180424: Another build issue on AIX after 8034174
Reviewed-by: clanger, vtewari

! src/java.base/aix/native/libnet/aix_close.c

Changeset: 698cb1c6c88e
Author:michaelm
Date:  2017-05-22 17:31 +0100
URL:   http://hg.openjdk.java.net/jigsaw/jake/jdk/rev/698cb1c6c88e

8180498: Remove httpclient internal APIs which supply ByteBuffers to read calls
Reviewed-by: chegar, dfuchs

! 
src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/AsyncSSLConnection.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Exchange.java
! 
src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Http1Exchange.java
! 
src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Http1Response.java
! 
src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/HttpConnection.java
! 
src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/PlainHttpConnection.java
! 
src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/PlainTunnelingConnection.java
! 
src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/ResponseContent.java
! 
src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/ResponseHeaders.java
! 
src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/SSLConnection.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/SSLDelegate.java
! 
src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/SSLTunnelConnection.java
! 
test/java/net/httpclient/whitebox/jdk.incubator.httpclient/jdk/incubator/http/ResponseHeadersTest.java

Changeset: 29bbedd4cce8
Author:mchung
Date:  2017-05-22 11:08 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/jdk/rev/29bbedd4cce8

8180717: Upgrade the docs bundle index page
Reviewed-by: jjg, ihse

! make/src/classes/build/tools/docs/GenDocsBundlePage.java
! make/src/classes/build/tools/docs/docs-bundle-page.html
! 

hg: jigsaw/jake/hotspot: 14 new changesets

2017-05-25 Thread mandy . chung
Changeset: 507f8a7678b4
Author:mcberg
Date:  2017-05-16 12:55 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/hotspot/rev/507f8a7678b4

8178800: compiler/c2/PolynomialRoot.java fails on Xeon Phi linux host with 
UseAVX=3
Summary: upper register bank support added for novl machines that emit EVEX
Reviewed-by: kvn, thartmann

! src/cpu/x86/vm/macroAssembler_x86.cpp
! src/cpu/x86/vm/macroAssembler_x86.hpp

Changeset: 6427ba02ae4b
Author:lana
Date:  2017-05-18 16:48 +
URL:   http://hg.openjdk.java.net/jigsaw/jake/hotspot/rev/6427ba02ae4b

Merge


Changeset: c2314cb67e28
Author:twisti
Date:  2017-05-18 16:39 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/hotspot/rev/c2314cb67e28

8180453: [JVMCI] mx eclipseinit doesn't pick up generated sources
Reviewed-by: kvn

! .mx.jvmci/mx_jvmci.py

Changeset: 34c47915ae05
Author:uvangapally
Date:  2017-05-19 15:32 +0530
URL:   http://hg.openjdk.java.net/jigsaw/jake/hotspot/rev/34c47915ae05

8175845: Provide javadoc descriptions for jdk.hotspot.agent module
Summary: Added description for jdk.hotspot.agent module
Reviewed-by: mchung

! src/jdk.hotspot.agent/share/classes/module-info.java

Changeset: 8f941bab493f
Author:thartmann
Date:  2017-05-22 09:14 +0200
URL:   http://hg.openjdk.java.net/jigsaw/jake/hotspot/rev/8f941bab493f

8180565: Null pointer dereferences of ConstMethod::method()
Summary: We need to check ConstMethod::method() for NULL before dereferencing.
Reviewed-by: kvn, iignatyev

! src/share/vm/oops/constMethod.cpp

Changeset: 0b218e675429
Author:thartmann
Date:  2017-05-22 09:16 +0200
URL:   http://hg.openjdk.java.net/jigsaw/jake/hotspot/rev/0b218e675429

8180617: Null pointer dereference in InitializeNode::complete_stores
Summary: Fixed a missing null check on the return value of 
InitializeNode::allocation() found by Parfait.
Reviewed-by: zmajo

! src/share/vm/opto/memnode.cpp

Changeset: 1f917785fbe7
Author:thartmann
Date:  2017-05-22 09:17 +0200
URL:   http://hg.openjdk.java.net/jigsaw/jake/hotspot/rev/1f917785fbe7

8180511: Null pointer dereference in Matcher::ReduceInst()
Summary: Fixed a missing null check on the return value of MachNodeGenerator() 
found by Parfait.
Reviewed-by: kvn

! src/share/vm/opto/matcher.cpp

Changeset: 286c8e80795b
Author:thartmann
Date:  2017-05-22 09:18 +0200
URL:   http://hg.openjdk.java.net/jigsaw/jake/hotspot/rev/286c8e80795b

8180576: Null pointer dereference in Matcher::xform()
Summary: Fixed a missing null check on n->in(0) found by Parfait.
Reviewed-by: kvn

! src/share/vm/opto/matcher.cpp

Changeset: 31c842513336
Author:thartmann
Date:  2017-05-22 09:23 +0200
URL:   http://hg.openjdk.java.net/jigsaw/jake/hotspot/rev/31c842513336

8180575: Null pointer dereference in LoadNode::Identity()
Summary: Fixed a missing null check on the return value of 
AddPNode::Ideal_base_and_offset() found by Parfait.
Reviewed-by: kvn

! src/share/vm/opto/memnode.cpp

Changeset: 79f53d722d58
Author:iignatyev
Date:  2017-05-22 15:27 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/hotspot/rev/79f53d722d58

8180793: move jdk.test.lib.wrappers.* to jdk.test.lib package
Reviewed-by: mchung

! test/compiler/codecache/stress/CodeCacheStressRunner.java
! test/compiler/codecache/stress/Helper.java
! test/compiler/compilercontrol/jcmd/StressAddJcmdBase.java
! test/compiler/whitebox/AllocationCodeBlobTest.java

Changeset: d53171650a2c
Author:iignatyev
Date:  2017-05-22 15:28 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/hotspot/rev/d53171650a2c

8180721: clean up ProblemList
Reviewed-by: sspitsyn, gtriantafill

! test/ProblemList.txt
! test/serviceability/jdwp/AllModulesCommandTest.java

Changeset: 385668275400
Author:lana
Date:  2017-05-26 00:29 +
URL:   http://hg.openjdk.java.net/jigsaw/jake/hotspot/rev/385668275400

Added tag jdk-9+171 for changeset d53171650a2c

! .hgtags

Changeset: 408103dc579d
Author:mchung
Date:  2017-05-25 19:49 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/hotspot/rev/408103dc579d

Merge

! .hgtags
! src/jdk.hotspot.agent/share/classes/module-info.java
! test/ProblemList.txt
! test/serviceability/jdwp/AllModulesCommandTest.java

Changeset: 5ada634b8e54
Author:mchung
Date:  2017-05-25 22:15 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/hotspot/rev/5ada634b8e54

Merge

- test/runtime/modules/JVMAddModulePackage.java



hg: jigsaw/jake: 11 new changesets

2017-05-25 Thread mandy . chung
Changeset: 9c70f25ca307
Author:ihse
Date:  2017-05-17 12:42 +0200
URL:   http://hg.openjdk.java.net/jigsaw/jake/rev/9c70f25ca307

8180472: Pandoc should generate html5 from markdown
Reviewed-by: erikj

! common/doc/building.html
! common/doc/testing.html
! make/common/ProcessMarkdown.gmk

Changeset: e6365fea178f
Author:ihse
Date:  2017-05-17 12:44 +0200
URL:   http://hg.openjdk.java.net/jigsaw/jake/rev/e6365fea178f

8180318: Enable HTML 5 checking at compile time
Reviewed-by: erikj

! make/CompileJavaModules.gmk
! make/common/SetupJavaCompilers.gmk

Changeset: 3389bd361d46
Author:ihse
Date:  2017-05-18 09:23 +0200
URL:   http://hg.openjdk.java.net/jigsaw/jake/rev/3389bd361d46

8180426: Use standard css file for new docs bundle index.html page
Reviewed-by: mchung, erikj

! make/Docs.gmk
! make/Main.gmk

Changeset: c491c6d36014
Author:lana
Date:  2017-05-18 16:47 +
URL:   http://hg.openjdk.java.net/jigsaw/jake/rev/c491c6d36014

Merge


Changeset: 1f19e7c36079
Author:wetmore
Date:  2017-05-18 10:31 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/rev/1f19e7c36079

8180540: Add pandoc build fix for windows
Reviewed-by: wetmore
Contributed-by: magnus.ihse.bur...@oracle.com

! common/autoconf/spec.gmk.in

Changeset: 440c40aa07c7
Author:uvangapally
Date:  2017-05-19 15:27 +0530
URL:   http://hg.openjdk.java.net/jigsaw/jake/rev/440c40aa07c7

8175845: Provide javadoc descriptions for jdk.hotspot.agent module
Summary: Added description for jdk.hotspot.agent module
Reviewed-by: mchung

! make/common/Modules.gmk

Changeset: d273234a040d
Author:ihse
Date:  2017-05-22 09:47 +0200
URL:   http://hg.openjdk.java.net/jigsaw/jake/rev/d273234a040d

8180480: Use "requires transitive" relationship when determining modules for 
javadoc
Reviewed-by: mchung, erikj

! make/Docs.gmk
! make/common/Modules.gmk

Changeset: 4c12464a907d
Author:iignatyev
Date:  2017-05-22 15:28 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/rev/4c12464a907d

8180793: move jdk.test.lib.wrappers.* to jdk.test.lib package
Reviewed-by: mchung

+ test/lib/jdk/test/lib/InfiniteLoop.java
+ test/lib/jdk/test/lib/TimeLimitedRunner.java
- test/lib/jdk/test/lib/wrappers/InfiniteLoop.java
- test/lib/jdk/test/lib/wrappers/TimeLimitedRunner.java

Changeset: 23c001d69fc1
Author:lana
Date:  2017-05-26 00:29 +
URL:   http://hg.openjdk.java.net/jigsaw/jake/rev/23c001d69fc1

Added tag jdk-9+171 for changeset 4c12464a907d

! .hgtags

Changeset: f5baf2556a0d
Author:mchung
Date:  2017-05-25 19:49 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/rev/f5baf2556a0d

Merge

! .hgtags
! common/autoconf/spec.gmk.in
! make/CompileJavaModules.gmk
! make/Docs.gmk
! make/Main.gmk
! make/common/Modules.gmk
! make/common/SetupJavaCompilers.gmk

Changeset: 8b69abdff0bb
Author:mchung
Date:  2017-05-25 22:15 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/rev/8b69abdff0bb

Merge




Re: Package name semantics

2017-05-25 Thread Alex Buckley

On 5/23/2017 1:37 PM, Stephan Herrmann wrote:

To tersely illustrate my confusion: "the" _could_ imply that the
existence of several packages named Q.Id forces separate parent
packages Q, so that each Q indeed contains exactly one member named
Id.

From your mail I infer that this is not your intention.

I read you as saying: even a single package named Q can contain
arbitrary many member packages named Id, provided that (at the
location of each package reference) exactly one of those packages is
visible (or a compile time error occurs), right?


Yes.

Alex


Re: Compiling with automatic modules

2017-05-25 Thread Alex Buckley

On 5/23/2017 1:47 PM, Stephan Herrmann wrote:

On 23.05.2017 22:30, Alex Buckley wrote:

Automatic modules are not a source artifact, so their specification is
found in the API portion of the JPMS spec rather than in the JLS. The
JLS has traditionally not specified how a compiler interprets
non-source artifacts, e.g., the JLS says nothing about whether the
host system understands a "class path" or that such a thing might
identify non-source artifacts like JAR files. The analog in the Java
SE 9 era is that it's up to a compiler to choose to support a thing
called the "module path" and to identify non-source artifacts on it; I
do not see how the JLS can say anything for that. Once a compiler has
made the choice, then the JPMS specifies that certain non-source
artifacts must be interpreted as automatic modules, at which point
they're "just" named modules that a modular compilation unit's
'requires' directive can refer to.


There's a decisive difference: for .class files (in the file system
or in a .jar) the compiler "knows" what it means, because .class
files are well in the realm of compilers. There are no hidden
semantics.


I agree that JLS 13.1 mandates a compiler to have detailed knowledge of 
.class files, but I do not agree that the JLS mandates a compiler to 
understand JAR files. It is merely convention that motivates a compiler 
to (i) understand a thing called "classpath" and (ii) open JAR files 
thereon in search of .class files. In Java SE 9, the analog of (i) 
remains -- it is convention that a compiler understands a thing called 
"modulepath" -- but we go beyond convention for (ii) -- JPMS resolution 
actually specifies that observable JAR files without module-info.class 
declare automatic modules. So, assuming that a compiler has a way to 
observe JAR files in the first place, JLS 7.3 specifies that 'requires 
M' in a modular compilation unit triggers JPMS resolution to read a 
module called M, and JPMS resolution will abstract away whether M is an 
explicit module (observed in M.jar with module-info.class) or an 
automatic module (observed in M.jar [or Foo.jar with 
Automatic-Module-Name: M] without module-info.class).



A jar-as-automatic-module has semantics that are not known to the compiler,
unless JLS specifies s.t. to this end.


The semantics of an observed JAR without module-info.class are specified 
as part of JPMS resolution, and JLS 7.3 explicitly defers to that, so I 
believe it is clear how a compiler must behave when a modular 
compilation unit 'requires' a module that turns out to be automatic. (Of 
course a big part of the migration story is that the requirer is unaware 
of whether the requiree is automatic or explicit.)


Alex


hg: jigsaw/jake/jdk: Fix typo in launcher help message

2017-05-25 Thread mandy . chung
Changeset: 0491912f8410
Author:mchung
Date:  2017-05-25 14:43 -0700
URL:   http://hg.openjdk.java.net/jigsaw/jake/jdk/rev/0491912f8410

Fix typo in launcher help message

! src/java.base/share/classes/sun/launcher/resources/launcher.properties



Re: Review Request: JDK-8181033: Confusing message: A JNI error has occurred, please check your installation and try again

2017-05-25 Thread Mandy Chung

> On May 25, 2017, at 12:24 AM, David Holmes  wrote:
> 
> Correction ...
> 
> On 25/05/2017 5:00 PM, David Holmes wrote:
>> Hi Mandy
>> On 25/05/2017 8:10 AM, Mandy Chung wrote:
>>> http://cr.openjdk.java.net/~mchung/jdk9/webrevs/8181033/webrev.00/
>>> 
>>> This fixes the launcher to print the exception being thrown rather than
>>> the confusing message "Error: A JNI error has occurred, please check
>>> your installation and try again”.  A few attempts to improve this to
>>> catch ClassNotFoundException and LinkageError.  This catches other cases.
>> Based on the exception stack that Volker reported this looks fine - it 
>> catches the unexpected exceptions encountered during getMethod() and reports 
>> them.
>> One thing that confuses me though, is that Volker reported the problem as 
>> occurring due to verification - and he showed some VM log output to support 
>> that. But verification happens when the main class is loaded! The exception 
>> trace shows code that executes well after loading time. ??
> 
> Never mind. The Class.forName call requests the class not be initialized, 
> which means it will not be linked. Verification is actually part of linking. 
> The class has to be initialized before getMethod can be invoked, and hence it 
> must first be linked and thus verified.

Yes exactly.  FWIW [1][2] are references to linking and initialization.

Mandy
[1] https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-5.html#jvms-5.4
[2] https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-5.html#jvms-5.5



Re: Review Request: JDK-8181033: Confusing message: A JNI error has occurred, please check your installation and try again

2017-05-25 Thread David Holmes

Correction ...

On 25/05/2017 5:00 PM, David Holmes wrote:

Hi Mandy

On 25/05/2017 8:10 AM, Mandy Chung wrote:

http://cr.openjdk.java.net/~mchung/jdk9/webrevs/8181033/webrev.00/

This fixes the launcher to print the exception being thrown rather than
the confusing message "Error: A JNI error has occurred, please check
your installation and try again”.  A few attempts to improve this to
catch ClassNotFoundException and LinkageError.  This catches other cases.


Based on the exception stack that Volker reported this looks fine - it 
catches the unexpected exceptions encountered during getMethod() and 
reports them.


One thing that confuses me though, is that Volker reported the problem 
as occurring due to verification - and he showed some VM log output to 
support that. But verification happens when the main class is loaded! 
The exception trace shows code that executes well after loading time. ??


Never mind. The Class.forName call requests the class not be 
initialized, which means it will not be linked. Verification is actually 
part of linking. The class has to be initialized before getMethod can be 
invoked, and hence it must first be linked and thus verified.


Thanks,
David


Thanks,
David


Mandy




Re: Review Request: JDK-8181033: Confusing message: A JNI error has occurred, please check your installation and try again

2017-05-25 Thread David Holmes

Hi Mandy

On 25/05/2017 8:10 AM, Mandy Chung wrote:

http://cr.openjdk.java.net/~mchung/jdk9/webrevs/8181033/webrev.00/

This fixes the launcher to print the exception being thrown rather than
the confusing message "Error: A JNI error has occurred, please check
your installation and try again”.  A few attempts to improve this to
catch ClassNotFoundException and LinkageError.  This catches other cases.


Based on the exception stack that Volker reported this looks fine - it 
catches the unexpected exceptions encountered during getMethod() and 
reports them.


One thing that confuses me though, is that Volker reported the problem 
as occurring due to verification - and he showed some VM log output to 
support that. But verification happens when the main class is loaded! 
The exception trace shows code that executes well after loading time. ??


Thanks,
David


Mandy




Re: Review Request: JDK-8181033: Confusing message: A JNI error has occurred, please check your installation and try again

2017-05-25 Thread Alan Bateman

On 24/05/2017 23:10, Mandy Chung wrote:


http://cr.openjdk.java.net/~mchung/jdk9/webrevs/8181033/webrev.00/

This fixes the launcher to print the exception being thrown rather than
the confusing message "Error: A JNI error has occurred, please check
your installation and try again”.  A few attempts to improve this to
catch ClassNotFoundException and LinkageError.  This catches other cases.


This looks good to me too.

-Alan