class com.sun.tools.javac.comp.Check$NestedCheckContext implements com.sun.tools.javac.comp.Check$CheckContext
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.tools.javac.comp.Check$NestedCheckContext
  super_class: java.lang.Object
{
  com.sun.tools.javac.comp.Check$CheckContext enclosingContext;
    descriptor: Lcom/sun/tools/javac/comp/Check$CheckContext;
    flags: (0x0000) 

  void <init>(com.sun.tools.javac.comp.Check$CheckContext);
    descriptor: (Lcom/sun/tools/javac/comp/Check$CheckContext;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.comp.Check$NestedCheckContext this
        start local 1 // com.sun.tools.javac.comp.Check$CheckContext enclosingContext
         0: .line 537
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 538
            aload 0 /* this */
            aload 1 /* enclosingContext */
            putfield com.sun.tools.javac.comp.Check$NestedCheckContext.enclosingContext:Lcom/sun/tools/javac/comp/Check$CheckContext;
         2: .line 539
            return
        end local 1 // com.sun.tools.javac.comp.Check$CheckContext enclosingContext
        end local 0 // com.sun.tools.javac.comp.Check$NestedCheckContext this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0              this  Lcom/sun/tools/javac/comp/Check$NestedCheckContext;
            0    3     1  enclosingContext  Lcom/sun/tools/javac/comp/Check$CheckContext;
    MethodParameters:
                  Name  Flags
      enclosingContext  

  public boolean compatible(com.sun.tools.javac.code.Type, com.sun.tools.javac.code.Type, com.sun.tools.javac.util.Warner);
    descriptor: (Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/Warner;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.sun.tools.javac.comp.Check$NestedCheckContext this
        start local 1 // com.sun.tools.javac.code.Type found
        start local 2 // com.sun.tools.javac.code.Type req
        start local 3 // com.sun.tools.javac.util.Warner warn
         0: .line 542
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Check$NestedCheckContext.enclosingContext:Lcom/sun/tools/javac/comp/Check$CheckContext;
            aload 1 /* found */
            aload 2 /* req */
            aload 3 /* warn */
            invokeinterface com.sun.tools.javac.comp.Check$CheckContext.compatible:(Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/Warner;)Z
            ireturn
        end local 3 // com.sun.tools.javac.util.Warner warn
        end local 2 // com.sun.tools.javac.code.Type req
        end local 1 // com.sun.tools.javac.code.Type found
        end local 0 // com.sun.tools.javac.comp.Check$NestedCheckContext this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/sun/tools/javac/comp/Check$NestedCheckContext;
            0    1     1  found  Lcom/sun/tools/javac/code/Type;
            0    1     2    req  Lcom/sun/tools/javac/code/Type;
            0    1     3   warn  Lcom/sun/tools/javac/util/Warner;
    MethodParameters:
       Name  Flags
      found  
      req    
      warn   

  public void report(com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition, com.sun.tools.javac.util.JCDiagnostic);
    descriptor: (Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/JCDiagnostic;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.comp.Check$NestedCheckContext this
        start local 1 // com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition pos
        start local 2 // com.sun.tools.javac.util.JCDiagnostic details
         0: .line 546
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Check$NestedCheckContext.enclosingContext:Lcom/sun/tools/javac/comp/Check$CheckContext;
            aload 1 /* pos */
            aload 2 /* details */
            invokeinterface com.sun.tools.javac.comp.Check$CheckContext.report:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/JCDiagnostic;)V
         1: .line 547
            return
        end local 2 // com.sun.tools.javac.util.JCDiagnostic details
        end local 1 // com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition pos
        end local 0 // com.sun.tools.javac.comp.Check$NestedCheckContext this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lcom/sun/tools/javac/comp/Check$NestedCheckContext;
            0    2     1      pos  Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            0    2     2  details  Lcom/sun/tools/javac/util/JCDiagnostic;
    MethodParameters:
         Name  Flags
      pos      
      details  

  public com.sun.tools.javac.util.Warner checkWarner(com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition, com.sun.tools.javac.code.Type, com.sun.tools.javac.code.Type);
    descriptor: (Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/Warner;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.sun.tools.javac.comp.Check$NestedCheckContext this
        start local 1 // com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition pos
        start local 2 // com.sun.tools.javac.code.Type found
        start local 3 // com.sun.tools.javac.code.Type req
         0: .line 550
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Check$NestedCheckContext.enclosingContext:Lcom/sun/tools/javac/comp/Check$CheckContext;
            aload 1 /* pos */
            aload 2 /* found */
            aload 3 /* req */
            invokeinterface com.sun.tools.javac.comp.Check$CheckContext.checkWarner:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/util/Warner;
            areturn
        end local 3 // com.sun.tools.javac.code.Type req
        end local 2 // com.sun.tools.javac.code.Type found
        end local 1 // com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition pos
        end local 0 // com.sun.tools.javac.comp.Check$NestedCheckContext this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/sun/tools/javac/comp/Check$NestedCheckContext;
            0    1     1    pos  Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            0    1     2  found  Lcom/sun/tools/javac/code/Type;
            0    1     3    req  Lcom/sun/tools/javac/code/Type;
    MethodParameters:
       Name  Flags
      pos    
      found  
      req    

  public com.sun.tools.javac.comp.InferenceContext inferenceContext();
    descriptor: ()Lcom/sun/tools/javac/comp/InferenceContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.comp.Check$NestedCheckContext this
         0: .line 554
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Check$NestedCheckContext.enclosingContext:Lcom/sun/tools/javac/comp/Check$CheckContext;
            invokeinterface com.sun.tools.javac.comp.Check$CheckContext.inferenceContext:()Lcom/sun/tools/javac/comp/InferenceContext;
            areturn
        end local 0 // com.sun.tools.javac.comp.Check$NestedCheckContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/comp/Check$NestedCheckContext;

  public com.sun.tools.javac.comp.DeferredAttr$DeferredAttrContext deferredAttrContext();
    descriptor: ()Lcom/sun/tools/javac/comp/DeferredAttr$DeferredAttrContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.comp.Check$NestedCheckContext this
         0: .line 558
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Check$NestedCheckContext.enclosingContext:Lcom/sun/tools/javac/comp/Check$CheckContext;
            invokeinterface com.sun.tools.javac.comp.Check$CheckContext.deferredAttrContext:()Lcom/sun/tools/javac/comp/DeferredAttr$DeferredAttrContext;
            areturn
        end local 0 // com.sun.tools.javac.comp.Check$NestedCheckContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/comp/Check$NestedCheckContext;
}
SourceFile: "Check.java"
NestHost: com.sun.tools.javac.comp.Check
InnerClasses:
  public abstract CheckContext = com.sun.tools.javac.comp.Check$CheckContext of com.sun.tools.javac.comp.Check
  NestedCheckContext = com.sun.tools.javac.comp.Check$NestedCheckContext of com.sun.tools.javac.comp.Check
  DeferredAttrContext = com.sun.tools.javac.comp.DeferredAttr$DeferredAttrContext of com.sun.tools.javac.comp.DeferredAttr
  public abstract DiagnosticPosition = com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition of com.sun.tools.javac.util.JCDiagnostic