JDK-8274183 : StackOverflowError on computing the GLB
  • Type: Bug
  • Component: tools
  • Sub-Component: javac
  • Affected Version: 9,11,18
  • Priority: P3
  • Status: Open
  • Resolution: Unresolved
  • OS: generic
  • CPU: generic
  • Submitted: 2021-09-22
  • Updated: 2021-11-04
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
Other
tbdUnresolved
Related Reports
Relates :  
Description
A DESCRIPTION OF THE PROBLEM :
The following program leads to an infinite loop on javac while computing the GLB between two types.

STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
class Main {
  static public final C<? super A<Double>> test() {
    final C<? super A<Double>> x = null;
    x.f = null;
    return x;
  }
}

class A<T> {}

abstract class B<F, B extends F> {}

abstract class C<N extends A<Number>> {
  public B<? extends N, ? extends N> f;
}

EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
The compiler should reject the above program as the type argument of C (lines 2, 3) does not respect the bound of type variable N.
ACTUAL -

Main.java:2: error: type argument ? super A<Double> is not within bounds of type-variable N
  static public final C<? super A<Double>> test() {
                        ^
  where N is a type-variable:
    N extends A<Number> declared in class C
Main.java:3: error: type argument ? super A<Double> is not within bounds of type-variable N
    final C<? super A<Double>> x = null;
            ^
  where N is a type-variable:
    N extends A<Number> declared in class C
2 errors


The system is out of resources.
Consult the following stack trace for details.
java.lang.StackOverflowError
        at jdk.compiler/com.sun.tools.javac.code.Types$UnaryVisitor.visit(Types.java:4980)
        at jdk.compiler/com.sun.tools.javac.code.Types.hashCode(Types.java:4170)
        at jdk.compiler/com.sun.tools.javac.code.Types.hashCode(Types.java:4164)
        at jdk.compiler/com.sun.tools.javac.code.Types$TypePair.hashCode(Types.java:3846)
        at java.base/java.util.HashMap.hash(HashMap.java:337)
        at java.base/java.util.HashMap.put(HashMap.java:609)
        at java.base/java.util.HashSet.add(HashSet.java:221)
        at jdk.compiler/com.sun.tools.javac.code.Types$4.containsTypeRecursive(Types.java:1135)
        at jdk.compiler/com.sun.tools.javac.code.Types$4.visitClassType(Types.java:1189)
        at jdk.compiler/com.sun.tools.javac.code.Types$4.visitClassType(Types.java:1104)
        at jdk.compiler/com.sun.tools.javac.code.Type$ClassType.accept(Type.java:1013)
        at jdk.compiler/com.sun.tools.javac.code.Types$DefaultTypeVisitor.visit(Types.java:4900)
        at jdk.compiler/com.sun.tools.javac.code.Types.isSubtype(Types.java:1100)
        at jdk.compiler/com.sun.tools.javac.code.Types.isSubtypeNoCapture(Types.java:1074)
        at jdk.compiler/com.sun.tools.javac.code.Types$4.visitType(Types.java:1118)
        at jdk.compiler/com.sun.tools.javac.code.Types$4.visitType(Types.java:1104)
        at jdk.compiler/com.sun.tools.javac.code.Types$DefaultTypeVisitor.visitTypeVar(Types.java:4907)
        at jdk.compiler/com.sun.tools.javac.code.Types$SimpleVisitor.visitCapturedType(Types.java:4952)
        at jdk.compiler/com.sun.tools.javac.code.Type$CapturedType.accept(Type.java:1769)
        at jdk.compiler/com.sun.tools.javac.code.Types$DefaultTypeVisitor.visit(Types.java:4900)
        at jdk.compiler/com.sun.tools.javac.code.Types.isSubtype(Types.java:1100)
        at jdk.compiler/com.sun.tools.javac.code.Types.isSubtypeNoCapture(Types.java:1074)
        at jdk.compiler/com.sun.tools.javac.code.Types$4.visitType(Types.java:1118)
        at jdk.compiler/com.sun.tools.javac.code.Types$4.visitType(Types.java:1104)
        at jdk.compiler/com.sun.tools.javac.code.Types$DefaultTypeVisitor.visitTypeVar(Types.java:4907)
        at jdk.compiler/com.sun.tools.javac.code.Types$SimpleVisitor.visitCapturedType(Types.java:4952)
        at jdk.compiler/com.sun.tools.javac.code.Type$CapturedType.accept(Type.java:1769)
        at jdk.compiler/com.sun.tools.javac.code.Types$DefaultTypeVisitor.visit(Types.java:4900)
        at jdk.compiler/com.sun.tools.javac.code.Types.isSubtype(Types.java:1100)
        at jdk.compiler/com.sun.tools.javac.code.Types.isSubtype(Types.java:1097)
        at jdk.compiler/com.sun.tools.javac.code.Types.isSubtypeNoCapture(Types.java:1074)
        at jdk.compiler/com.sun.tools.javac.code.Types.closureMin(Types.java:3938)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4125)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4113)
        at jdk.compiler/com.sun.tools.javac.code.Types.glb(Types.java:4097)
        at jdk.compiler/com.sun.tools.javac.code.Types.glbFlattened(Types.java:4151)
 

---------- BEGIN SOURCE ----------
class Main {
  static public final C<? super A<Double>> test() {
    final C<? super A<Double>> x = null;
    x.f = null;
    return x;
  }
}

class A<T> {}

abstract class B<F, B extends F> {}

abstract class C<N extends A<Number>> {
  public B<? extends N, ? extends N> f;
}
---------- END SOURCE ----------

FREQUENCY : always



Comments
The type C<? super A<Double>> is malformed—the lower bound, A<Double>, is incompatible with the declaration-site upper bound, A<Number>. (See JDK-8054941 for further discussion about well-formedness checks for wildcard bounds. It's poorly specified in JLS.) javac appears to be detecting this error (see the first few lines of output), but then somehow recovers improperly—the assignment to `x.f ` is what triggers the stack overflow.
04-11-2021

The issue is reproducible. Following is my observation: ======================= JDK 8-pool : pass (Correct error) Main.java:2: error: type argument ? super A<Double> is not within bounds of type-variable N static public final C<? super A<Double>> test() { ^ where N is a type-variable: N extends A<Number> declared in class C Main.java:3: error: type argument ? super A<Double> is not within bounds of type-variable N final C<? super A<Double>> x = null; ^ where N is a type-variable: N extends A<Number> declared in class C 2 errors JDK 9 and above : stack overflow in the compiler.
23-09-2021