mirror of
https://github.com/openjdk/jdk.git
synced 2026-05-11 05:59:52 +00:00
8168774: Polymorhic signature method check crashes javac
Check for polysig method assumes arity is greater than zero Reviewed-by: vromero
This commit is contained in:
parent
47f7c2e668
commit
12e8fccd6c
@ -1004,7 +1004,7 @@ public class Types {
|
||||
List<Type> argtypes = msym.type.getParameterTypes();
|
||||
return (msym.flags_field & NATIVE) != 0 &&
|
||||
(msym.owner == syms.methodHandleType.tsym || msym.owner == syms.varHandleType.tsym) &&
|
||||
argtypes.tail.tail == null &&
|
||||
argtypes.length() == 1 &&
|
||||
argtypes.head.hasTag(TypeTag.ARRAY) &&
|
||||
((ArrayType)argtypes.head).elemtype.tsym == syms.objectType.tsym;
|
||||
}
|
||||
|
||||
12
langtools/test/tools/javac/meth/BadPolySig.java
Normal file
12
langtools/test/tools/javac/meth/BadPolySig.java
Normal file
@ -0,0 +1,12 @@
|
||||
/*
|
||||
* @test
|
||||
* @bug 8168774
|
||||
* @summary Polymorhic signature method check crashes javac
|
||||
* @compile -Xmodule:java.base BadPolySig.java
|
||||
*/
|
||||
|
||||
package java.lang.invoke;
|
||||
|
||||
class MethodHandle {
|
||||
native Object m();
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user