class com.sun.tools.javac.comp.Resolve$DiamondError extends com.sun.tools.javac.comp.Resolve$InapplicableSymbolError
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.tools.javac.comp.Resolve$DiamondError
  super_class: com.sun.tools.javac.comp.Resolve$InapplicableSymbolError
{
  com.sun.tools.javac.code.Symbol sym;
    descriptor: Lcom/sun/tools/javac/code/Symbol;
    flags: (0x0000) 

  final com.sun.tools.javac.comp.Resolve this$0;
    descriptor: Lcom/sun/tools/javac/comp/Resolve;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  public void <init>(com.sun.tools.javac.comp.Resolve, com.sun.tools.javac.code.Symbol, com.sun.tools.javac.comp.Resolve$MethodResolutionContext);
    descriptor: (Lcom/sun/tools/javac/comp/Resolve;Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/comp/Resolve$MethodResolutionContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // com.sun.tools.javac.comp.Resolve$DiamondError this
        start local 2 // com.sun.tools.javac.code.Symbol sym
        start local 3 // com.sun.tools.javac.comp.Resolve$MethodResolutionContext context
         0: .line 4052
            aload 0 /* this */
            aload 1
            putfield com.sun.tools.javac.comp.Resolve$DiamondError.this$0:Lcom/sun/tools/javac/comp/Resolve;
         1: .line 4053
            aload 0 /* this */
            aload 1
            aload 2 /* sym */
            getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            ldc "diamondError"
            aload 3 /* context */
            invokespecial com.sun.tools.javac.comp.Resolve$InapplicableSymbolError.<init>:(Lcom/sun/tools/javac/comp/Resolve;Lcom/sun/tools/javac/code/Kinds$Kind;Ljava/lang/String;Lcom/sun/tools/javac/comp/Resolve$MethodResolutionContext;)V
         2: .line 4054
            aload 0 /* this */
            aload 2 /* sym */
            putfield com.sun.tools.javac.comp.Resolve$DiamondError.sym:Lcom/sun/tools/javac/code/Symbol;
         3: .line 4055
            return
        end local 3 // com.sun.tools.javac.comp.Resolve$MethodResolutionContext context
        end local 2 // com.sun.tools.javac.code.Symbol sym
        end local 0 // com.sun.tools.javac.comp.Resolve$DiamondError this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lcom/sun/tools/javac/comp/Resolve$DiamondError;
            0    4     2      sym  Lcom/sun/tools/javac/code/Symbol;
            0    4     3  context  Lcom/sun/tools/javac/comp/Resolve$MethodResolutionContext;
    MethodParameters:
         Name  Flags
      this$0   final
      sym      
      context  

  com.sun.tools.javac.util.JCDiagnostic getDetails();
    descriptor: ()Lcom/sun/tools/javac/util/JCDiagnostic;
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.comp.Resolve$DiamondError this
         0: .line 4058
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$DiamondError.sym:Lcom/sun/tools/javac/code/Symbol;
            getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            getstatic com.sun.tools.javac.code.Kinds$Kind.WRONG_MTH:Lcom/sun/tools/javac/code/Kinds$Kind;
            if_acmpne 2
         1: .line 4059
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$DiamondError.sym:Lcom/sun/tools/javac/code/Symbol;
            invokevirtual com.sun.tools.javac.code.Symbol.baseSymbol:()Lcom/sun/tools/javac/code/Symbol;
            checkcast com.sun.tools.javac.comp.Resolve$InapplicableSymbolError
            invokevirtual com.sun.tools.javac.comp.Resolve$InapplicableSymbolError.errCandidate:()Lcom/sun/tools/javac/util/Pair;
            getfield com.sun.tools.javac.util.Pair.snd:Ljava/lang/Object;
            checkcast com.sun.tools.javac.util.JCDiagnostic
            goto 3
         2: .line 4060
      StackMap locals:
      StackMap stack:
            aconst_null
         3: .line 4058
      StackMap locals:
      StackMap stack: com.sun.tools.javac.util.JCDiagnostic
            areturn
        end local 0 // com.sun.tools.javac.comp.Resolve$DiamondError this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/tools/javac/comp/Resolve$DiamondError;

  com.sun.tools.javac.util.JCDiagnostic getDiagnostic(com.sun.tools.javac.util.JCDiagnostic$DiagnosticType, com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition, com.sun.tools.javac.code.Symbol, com.sun.tools.javac.code.Type, com.sun.tools.javac.util.Name, com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>, com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>);
    descriptor: (Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticType;Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/JCDiagnostic;
    flags: (0x0000) 
    Code:
      stack=14, locals=10, args_size=8
        start local 0 // com.sun.tools.javac.comp.Resolve$DiamondError this
        start local 1 // com.sun.tools.javac.util.JCDiagnostic$DiagnosticType dkind
        start local 2 // com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition pos
        start local 3 // com.sun.tools.javac.code.Symbol location
        start local 4 // com.sun.tools.javac.code.Type site
        start local 5 // com.sun.tools.javac.util.Name name
        start local 6 // com.sun.tools.javac.util.List argtypes
        start local 7 // com.sun.tools.javac.util.List typeargtypes
         0: .line 4066
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.comp.Resolve$DiamondError.getDetails:()Lcom/sun/tools/javac/util/JCDiagnostic;
            astore 8 /* details */
        start local 8 // com.sun.tools.javac.util.JCDiagnostic details
         1: .line 4067
            aload 8 /* details */
            ifnull 6
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$DiamondError.this$0:Lcom/sun/tools/javac/comp/Resolve;
            getfield com.sun.tools.javac.comp.Resolve.compactMethodDiags:Z
            ifeq 6
         2: .line 4069
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$DiamondError.this$0:Lcom/sun/tools/javac/comp/Resolve;
            getfield com.sun.tools.javac.comp.Resolve.diags:Lcom/sun/tools/javac/util/JCDiagnostic$Factory;
            aload 2 /* pos */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$DiamondError.this$0:Lcom/sun/tools/javac/comp/Resolve;
            getfield com.sun.tools.javac.comp.Resolve.log:Lcom/sun/tools/javac/util/Log;
            invokevirtual com.sun.tools.javac.util.Log.currentSource:()Lcom/sun/tools/javac/util/DiagnosticSource;
            aload 1 /* dkind */
            aload 8 /* details */
            invokestatic com.sun.tools.javac.comp.Resolve$MethodResolutionDiagHelper.rewrite:(Lcom/sun/tools/javac/util/JCDiagnostic$Factory;Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/DiagnosticSource;Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticType;Lcom/sun/tools/javac/util/JCDiagnostic;)Lcom/sun/tools/javac/util/JCDiagnostic;
         3: .line 4068
            astore 9 /* simpleDiag */
        start local 9 // com.sun.tools.javac.util.JCDiagnostic simpleDiag
         4: .line 4070
            aload 9 /* simpleDiag */
            ifnull 6
         5: .line 4071
            aload 9 /* simpleDiag */
            areturn
        end local 9 // com.sun.tools.javac.util.JCDiagnostic simpleDiag
         6: .line 4074
      StackMap locals: com.sun.tools.javac.util.JCDiagnostic
      StackMap stack:
            aload 8 /* details */
            ifnonnull 8
         7: .line 4075
            ldc "cant.apply.diamond"
            goto 9
         8: .line 4076
      StackMap locals:
      StackMap stack:
            ldc "cant.apply.diamond.1"
         9: .line 4074
      StackMap locals:
      StackMap stack: java.lang.String
            astore 9 /* key */
        start local 9 // java.lang.String key
        10: .line 4077
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$DiamondError.this$0:Lcom/sun/tools/javac/comp/Resolve;
            getfield com.sun.tools.javac.comp.Resolve.diags:Lcom/sun/tools/javac/util/JCDiagnostic$Factory;
            aload 1 /* dkind */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$DiamondError.this$0:Lcom/sun/tools/javac/comp/Resolve;
            getfield com.sun.tools.javac.comp.Resolve.log:Lcom/sun/tools/javac/util/Log;
            invokevirtual com.sun.tools.javac.util.Log.currentSource:()Lcom/sun/tools/javac/util/DiagnosticSource;
            aload 2 /* pos */
            aload 9 /* key */
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
        11: .line 4078
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$DiamondError.this$0:Lcom/sun/tools/javac/comp/Resolve;
            getfield com.sun.tools.javac.comp.Resolve.diags:Lcom/sun/tools/javac/util/JCDiagnostic$Factory;
            ldc "diamond"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* site */
            getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
            aastore
            invokevirtual com.sun.tools.javac.util.JCDiagnostic$Factory.fragment:(Ljava/lang/String;[Ljava/lang/Object;)Lcom/sun/tools/javac/util/JCDiagnostic;
            aastore
            dup
            iconst_1
            aload 8 /* details */
            aastore
        12: .line 4077
            invokevirtual com.sun.tools.javac.util.JCDiagnostic$Factory.create:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticType;Lcom/sun/tools/javac/util/DiagnosticSource;Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Ljava/lang/String;[Ljava/lang/Object;)Lcom/sun/tools/javac/util/JCDiagnostic;
            areturn
        end local 9 // java.lang.String key
        end local 8 // com.sun.tools.javac.util.JCDiagnostic details
        end local 7 // com.sun.tools.javac.util.List typeargtypes
        end local 6 // com.sun.tools.javac.util.List argtypes
        end local 5 // com.sun.tools.javac.util.Name name
        end local 4 // com.sun.tools.javac.code.Type site
        end local 3 // com.sun.tools.javac.code.Symbol location
        end local 2 // com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition pos
        end local 1 // com.sun.tools.javac.util.JCDiagnostic$DiagnosticType dkind
        end local 0 // com.sun.tools.javac.comp.Resolve$DiamondError this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   13     0          this  Lcom/sun/tools/javac/comp/Resolve$DiamondError;
            0   13     1         dkind  Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticType;
            0   13     2           pos  Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            0   13     3      location  Lcom/sun/tools/javac/code/Symbol;
            0   13     4          site  Lcom/sun/tools/javac/code/Type;
            0   13     5          name  Lcom/sun/tools/javac/util/Name;
            0   13     6      argtypes  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
            0   13     7  typeargtypes  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
            1   13     8       details  Lcom/sun/tools/javac/util/JCDiagnostic;
            4    6     9    simpleDiag  Lcom/sun/tools/javac/util/JCDiagnostic;
           10   13     9           key  Ljava/lang/String;
    Signature: (Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticType;Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;)Lcom/sun/tools/javac/util/JCDiagnostic;
    MethodParameters:
              Name  Flags
      dkind         
      pos           
      location      
      site          
      name          
      argtypes      
      typeargtypes  
}
SourceFile: "Resolve.java"
NestHost: com.sun.tools.javac.comp.Resolve
InnerClasses:
  public final Kind = com.sun.tools.javac.code.Kinds$Kind of com.sun.tools.javac.code.Kinds
  DiamondError = com.sun.tools.javac.comp.Resolve$DiamondError of com.sun.tools.javac.comp.Resolve
  InapplicableSymbolError = com.sun.tools.javac.comp.Resolve$InapplicableSymbolError of com.sun.tools.javac.comp.Resolve
  MethodResolutionContext = com.sun.tools.javac.comp.Resolve$MethodResolutionContext of com.sun.tools.javac.comp.Resolve
  MethodResolutionDiagHelper = com.sun.tools.javac.comp.Resolve$MethodResolutionDiagHelper of com.sun.tools.javac.comp.Resolve
  public abstract DiagnosticPosition = com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition of com.sun.tools.javac.util.JCDiagnostic
  public final DiagnosticType = com.sun.tools.javac.util.JCDiagnostic$DiagnosticType of com.sun.tools.javac.util.JCDiagnostic
  public Factory = com.sun.tools.javac.util.JCDiagnostic$Factory of com.sun.tools.javac.util.JCDiagnostic