class com.sun.tools.javac.comp.Infer$InferenceStep$2 extends com.sun.tools.javac.comp.Infer$InferenceStep
minor version: 0
major version: 59
flags: flags: (0x4020) ACC_SUPER, ACC_ANNOTATION
this_class: com.sun.tools.javac.comp.Infer$InferenceStep$2
super_class: com.sun.tools.javac.comp.Infer$InferenceStep
{
void <init>(java.lang.String, int, com.sun.tools.javac.code.Type$UndetVar$InferenceBound);
descriptor: (Ljava/lang/String;ILcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=4
start local 0 // com.sun.tools.javac.comp.Infer$InferenceStep$2 this
start local 3 // com.sun.tools.javac.code.Type$UndetVar$InferenceBound $anonymous0
0: .line 1450
aload 0 /* this */
aload 1
iload 2
aload 3 /* $anonymous0 */
invokespecial com.sun.tools.javac.comp.Infer$InferenceStep.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;)V
return
end local 3 // com.sun.tools.javac.code.Type$UndetVar$InferenceBound $anonymous0
end local 0 // com.sun.tools.javac.comp.Infer$InferenceStep$2 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/Infer$InferenceStep$2;
0 1 3 $anonymous0 Lcom/sun/tools/javac/code/Type$UndetVar$InferenceBound;
MethodParameters:
Name Flags
$enum$name
$enum$ordinal
$anonymous0
com.sun.tools.javac.code.Type solve(com.sun.tools.javac.code.Type$UndetVar, com.sun.tools.javac.comp.InferenceContext);
descriptor: (Lcom/sun/tools/javac/code/Type$UndetVar;Lcom/sun/tools/javac/comp/InferenceContext;)Lcom/sun/tools/javac/code/Type;
flags: (0x0000)
Code:
stack=6, locals=6, args_size=3
start local 0 // com.sun.tools.javac.comp.Infer$InferenceStep$2 this
start local 1 // com.sun.tools.javac.code.Type$UndetVar uv
start local 2 // com.sun.tools.javac.comp.InferenceContext inferenceContext
0: .line 1453
aload 2 /* inferenceContext */
getfield com.sun.tools.javac.comp.InferenceContext.infer:Lcom/sun/tools/javac/comp/Infer;
astore 3 /* infer */
start local 3 // com.sun.tools.javac.comp.Infer infer
1: .line 1454
aload 0 /* this */
aload 1 /* uv */
aload 2 /* inferenceContext */
invokevirtual com.sun.tools.javac.comp.Infer$InferenceStep$2.filterBounds:(Lcom/sun/tools/javac/code/Type$UndetVar;Lcom/sun/tools/javac/comp/InferenceContext;)Lcom/sun/tools/javac/util/List;
astore 4 /* lobounds */
start local 4 // com.sun.tools.javac.util.List lobounds
2: .line 1456
aload 4 /* lobounds */
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
ifnonnull 3
aload 4 /* lobounds */
getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
goto 4
StackMap locals: com.sun.tools.javac.comp.Infer com.sun.tools.javac.util.List
StackMap stack:
3: aload 3 /* infer */
getfield com.sun.tools.javac.comp.Infer.types:Lcom/sun/tools/javac/code/Types;
aload 4 /* lobounds */
invokevirtual com.sun.tools.javac.code.Types.lub:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/code/Type;
StackMap locals:
StackMap stack: com.sun.tools.javac.code.Type
4: astore 5 /* owntype */
start local 5 // com.sun.tools.javac.code.Type owntype
5: .line 1457
aload 5 /* owntype */
invokevirtual com.sun.tools.javac.code.Type.isPrimitive:()Z
ifne 6
aload 5 /* owntype */
getstatic com.sun.tools.javac.code.TypeTag.ERROR:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.Type.hasTag:(Lcom/sun/tools/javac/code/TypeTag;)Z
ifeq 11
6: .line 1458
StackMap locals: com.sun.tools.javac.code.Type
StackMap stack:
aload 3 /* infer */
getfield com.sun.tools.javac.comp.Infer.inferenceException:Lcom/sun/tools/javac/comp/Infer$InferenceException;
7: .line 1459
ldc "no.unique.minimal.instance.exists"
iconst_2
anewarray java.lang.Object
dup
iconst_0
8: .line 1460
aload 1 /* uv */
getfield com.sun.tools.javac.code.Type$UndetVar.qtype:Lcom/sun/tools/javac/code/Type;
aastore
dup
iconst_1
aload 4 /* lobounds */
aastore
9: .line 1459
invokevirtual com.sun.tools.javac.comp.Infer$InferenceException.setMessage:(Ljava/lang/String;[Ljava/lang/Object;)Lcom/sun/tools/javac/comp/Resolve$InapplicableMethodException;
10: .line 1458
athrow
11: .line 1462
StackMap locals:
StackMap stack:
aload 5 /* owntype */
areturn
end local 5 // com.sun.tools.javac.code.Type owntype
end local 4 // com.sun.tools.javac.util.List lobounds
end local 3 // com.sun.tools.javac.comp.Infer infer
end local 2 // com.sun.tools.javac.comp.InferenceContext inferenceContext
end local 1 // com.sun.tools.javac.code.Type$UndetVar uv
end local 0 // com.sun.tools.javac.comp.Infer$InferenceStep$2 this
LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/tools/javac/comp/Infer$InferenceStep$2;
0 12 1 uv Lcom/sun/tools/javac/code/Type$UndetVar;
0 12 2 inferenceContext Lcom/sun/tools/javac/comp/InferenceContext;
1 12 3 infer Lcom/sun/tools/javac/comp/Infer;
2 12 4 lobounds Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
5 12 5 owntype Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
uv
inferenceContext
}
SourceFile: "Infer.java"
EnclosingMethod: com.sun.tools.javac.comp.Infer$InferenceStep
NestHost: com.sun.tools.javac.comp.Infer
InnerClasses:
public UndetVar = com.sun.tools.javac.code.Type$UndetVar of com.sun.tools.javac.code.Type
public abstract InferenceBound = com.sun.tools.javac.code.Type$UndetVar$InferenceBound of com.sun.tools.javac.code.Type$UndetVar
public InferenceException = com.sun.tools.javac.comp.Infer$InferenceException of com.sun.tools.javac.comp.Infer
abstract InferenceStep = com.sun.tools.javac.comp.Infer$InferenceStep of com.sun.tools.javac.comp.Infer
com.sun.tools.javac.comp.Infer$InferenceStep$2
public InapplicableMethodException = com.sun.tools.javac.comp.Resolve$InapplicableMethodException of com.sun.tools.javac.comp.Resolve