public class sun.tools.tree.FieldExpression extends sun.tools.tree.UnaryExpression
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.tools.tree.FieldExpression
  super_class: sun.tools.tree.UnaryExpression
{
  sun.tools.java.Identifier id;
    descriptor: Lsun/tools/java/Identifier;
    flags: (0x0000) 

  sun.tools.java.MemberDefinition field;
    descriptor: Lsun/tools/java/MemberDefinition;
    flags: (0x0000) 

  sun.tools.tree.Expression implementation;
    descriptor: Lsun/tools/tree/Expression;
    flags: (0x0000) 

  sun.tools.java.ClassDefinition clazz;
    descriptor: Lsun/tools/java/ClassDefinition;
    flags: (0x0000) 

  private sun.tools.java.ClassDefinition superBase;
    descriptor: Lsun/tools/java/ClassDefinition;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(long, sun.tools.tree.Expression, sun.tools.java.Identifier);
    descriptor: (JLsun/tools/tree/Expression;Lsun/tools/java/Identifier;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // long where
        start local 3 // sun.tools.tree.Expression right
        start local 4 // sun.tools.java.Identifier id
         0: .line 55
            aload 0 /* this */
            bipush 46
            lload 1 /* where */
            getstatic sun.tools.java.Type.tError:Lsun/tools/java/Type;
            aload 3 /* right */
            invokespecial sun.tools.tree.UnaryExpression.<init>:(IJLsun/tools/java/Type;Lsun/tools/tree/Expression;)V
         1: .line 56
            aload 0 /* this */
            aload 4 /* id */
            putfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
         2: .line 57
            return
        end local 4 // sun.tools.java.Identifier id
        end local 3 // sun.tools.tree.Expression right
        end local 1 // long where
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lsun/tools/tree/FieldExpression;
            0    3     1  where  J
            0    3     3  right  Lsun/tools/tree/Expression;
            0    3     4     id  Lsun/tools/java/Identifier;
    MethodParameters:
       Name  Flags
      where  
      right  
      id     

  public void <init>(long, sun.tools.tree.Expression, sun.tools.java.MemberDefinition);
    descriptor: (JLsun/tools/tree/Expression;Lsun/tools/java/MemberDefinition;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // long where
        start local 3 // sun.tools.tree.Expression right
        start local 4 // sun.tools.java.MemberDefinition field
         0: .line 59
            aload 0 /* this */
            bipush 46
            lload 1 /* where */
            aload 4 /* field */
            invokevirtual sun.tools.java.MemberDefinition.getType:()Lsun/tools/java/Type;
            aload 3 /* right */
            invokespecial sun.tools.tree.UnaryExpression.<init>:(IJLsun/tools/java/Type;Lsun/tools/tree/Expression;)V
         1: .line 60
            aload 0 /* this */
            aload 4 /* field */
            invokevirtual sun.tools.java.MemberDefinition.getName:()Lsun/tools/java/Identifier;
            putfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
         2: .line 61
            aload 0 /* this */
            aload 4 /* field */
            putfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
         3: .line 62
            return
        end local 4 // sun.tools.java.MemberDefinition field
        end local 3 // sun.tools.tree.Expression right
        end local 1 // long where
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lsun/tools/tree/FieldExpression;
            0    4     1  where  J
            0    4     3  right  Lsun/tools/tree/Expression;
            0    4     4  field  Lsun/tools/java/MemberDefinition;
    MethodParameters:
       Name  Flags
      where  
      right  
      field  

  public sun.tools.tree.Expression getImplementation();
    descriptor: ()Lsun/tools/tree/Expression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.tools.tree.FieldExpression this
         0: .line 65
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            ifnull 2
         1: .line 66
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            areturn
         2: .line 67
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/tools/tree/FieldExpression;

  private boolean isQualSuper();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.tools.tree.FieldExpression this
         0: .line 75
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.superBase:Lsun/tools/java/ClassDefinition;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/tools/tree/FieldExpression;

  public static sun.tools.java.Identifier toIdentifier(sun.tools.tree.Expression);
    descriptor: (Lsun/tools/tree/Expression;)Lsun/tools/java/Identifier;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // sun.tools.tree.Expression e
         0: .line 82
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 1 /* buf */
        start local 1 // java.lang.StringBuffer buf
         1: .line 83
            goto 8
         2: .line 84
      StackMap locals: java.lang.StringBuffer
      StackMap stack:
            aload 0 /* e */
            checkcast sun.tools.tree.FieldExpression
            astore 2 /* fe */
        start local 2 // sun.tools.tree.FieldExpression fe
         3: .line 85
            aload 2 /* fe */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            getstatic sun.tools.tree.FieldExpression.idThis:Lsun/tools/java/Identifier;
            if_acmpeq 4
            aload 2 /* fe */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            getstatic sun.tools.tree.FieldExpression.idClass:Lsun/tools/java/Identifier;
            if_acmpne 5
         4: .line 86
      StackMap locals: sun.tools.tree.FieldExpression
      StackMap stack:
            aconst_null
            areturn
         5: .line 88
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            iconst_0
            aload 2 /* fe */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            invokevirtual java.lang.StringBuffer.insert:(ILjava/lang/Object;)Ljava/lang/StringBuffer;
            pop
         6: .line 89
            aload 1 /* buf */
            iconst_0
            bipush 46
            invokevirtual java.lang.StringBuffer.insert:(IC)Ljava/lang/StringBuffer;
            pop
         7: .line 90
            aload 2 /* fe */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            astore 0 /* e */
        end local 2 // sun.tools.tree.FieldExpression fe
         8: .line 83
      StackMap locals:
      StackMap stack:
            aload 0 /* e */
            getfield sun.tools.tree.Expression.op:I
            bipush 46
            if_icmpeq 2
         9: .line 92
            aload 0 /* e */
            getfield sun.tools.tree.Expression.op:I
            bipush 60
            if_icmpeq 11
        10: .line 93
            aconst_null
            areturn
        11: .line 95
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            iconst_0
            aload 0 /* e */
            checkcast sun.tools.tree.IdentifierExpression
            getfield sun.tools.tree.IdentifierExpression.id:Lsun/tools/java/Identifier;
            invokevirtual java.lang.StringBuffer.insert:(ILjava/lang/Object;)Ljava/lang/StringBuffer;
            pop
        12: .line 96
            aload 1 /* buf */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            invokestatic sun.tools.java.Identifier.lookup:(Ljava/lang/String;)Lsun/tools/java/Identifier;
            areturn
        end local 1 // java.lang.StringBuffer buf
        end local 0 // sun.tools.tree.Expression e
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0     e  Lsun/tools/tree/Expression;
            1   13     1   buf  Ljava/lang/StringBuffer;
            3    8     2    fe  Lsun/tools/tree/FieldExpression;
    MethodParameters:
      Name  Flags
      e     

  sun.tools.java.Type toType(sun.tools.java.Environment, sun.tools.tree.Context);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/java/Type;
    flags: (0x0000) 
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
         0: .line 205
            aload 0 /* this */
            invokestatic sun.tools.tree.FieldExpression.toIdentifier:(Lsun/tools/tree/Expression;)Lsun/tools/java/Identifier;
            astore 3 /* id */
        start local 3 // sun.tools.java.Identifier id
         1: .line 206
            aload 3 /* id */
            ifnonnull 4
         2: .line 207
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "invalid.type.expr"
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;)V
         3: .line 208
            getstatic sun.tools.java.Type.tError:Lsun/tools/java/Type;
            areturn
         4: .line 210
      StackMap locals: sun.tools.java.Identifier
      StackMap stack:
            aload 2 /* ctx */
            aload 1 /* env */
            aload 3 /* id */
            invokevirtual sun.tools.tree.Context.resolveName:(Lsun/tools/java/Environment;Lsun/tools/java/Identifier;)Lsun/tools/java/Identifier;
            invokestatic sun.tools.java.Type.tClass:(Lsun/tools/java/Identifier;)Lsun/tools/java/Type;
            astore 4 /* t */
        start local 4 // sun.tools.java.Type t
         5: .line 211
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 2 /* ctx */
            getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            aload 4 /* t */
            invokevirtual sun.tools.java.Environment.resolve:(JLsun/tools/java/ClassDefinition;Lsun/tools/java/Type;)Z
            ifeq 7
         6: .line 212
            aload 4 /* t */
            areturn
         7: .line 214
      StackMap locals: sun.tools.java.Type
      StackMap stack:
            getstatic sun.tools.java.Type.tError:Lsun/tools/java/Type;
            areturn
        end local 4 // sun.tools.java.Type t
        end local 3 // sun.tools.java.Identifier id
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lsun/tools/tree/FieldExpression;
            0    8     1   env  Lsun/tools/java/Environment;
            0    8     2   ctx  Lsun/tools/tree/Context;
            1    8     3    id  Lsun/tools/java/Identifier;
            5    8     4     t  Lsun/tools/java/Type;
    MethodParameters:
      Name  Flags
      env   
      ctx   

  public sun.tools.tree.Vset checkAmbigName(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Vset, java.util.Hashtable, sun.tools.tree.UnaryExpression);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;)Lsun/tools/tree/Vset;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
        start local 3 // sun.tools.tree.Vset vset
        start local 4 // java.util.Hashtable exp
        start local 5 // sun.tools.tree.UnaryExpression loc
         0: .line 224
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            getstatic sun.tools.tree.FieldExpression.idThis:Lsun/tools/java/Identifier;
            if_acmpeq 1
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            getstatic sun.tools.tree.FieldExpression.idClass:Lsun/tools/java/Identifier;
            if_acmpne 2
         1: .line 225
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 5 /* loc */
         2: .line 227
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* vset */
            aload 4 /* exp */
            aload 5 /* loc */
            iconst_0
            invokevirtual sun.tools.tree.FieldExpression.checkCommon:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;Z)Lsun/tools/tree/Vset;
            areturn
        end local 5 // sun.tools.tree.UnaryExpression loc
        end local 4 // java.util.Hashtable exp
        end local 3 // sun.tools.tree.Vset vset
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/tools/tree/FieldExpression;
            0    3     1   env  Lsun/tools/java/Environment;
            0    3     2   ctx  Lsun/tools/tree/Context;
            0    3     3  vset  Lsun/tools/tree/Vset;
            0    3     4   exp  Ljava/util/Hashtable;
            0    3     5   loc  Lsun/tools/tree/UnaryExpression;
    MethodParameters:
      Name  Flags
      env   
      ctx   
      vset  
      exp   
      loc   

  public sun.tools.tree.Vset checkValue(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Vset, java.util.Hashtable);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
        start local 3 // sun.tools.tree.Vset vset
        start local 4 // java.util.Hashtable exp
         0: .line 236
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* vset */
            aload 4 /* exp */
            aconst_null
            iconst_0
            invokevirtual sun.tools.tree.FieldExpression.checkCommon:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;Z)Lsun/tools/tree/Vset;
            astore 3 /* vset */
         1: .line 237
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            getstatic sun.tools.tree.FieldExpression.idSuper:Lsun/tools/java/Identifier;
            if_acmpne 3
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
            getstatic sun.tools.java.Type.tError:Lsun/tools/java/Type;
            if_acmpeq 3
         2: .line 240
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "undef.var.super"
            getstatic sun.tools.tree.FieldExpression.idSuper:Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
         3: .line 242
      StackMap locals:
      StackMap stack:
            aload 3 /* vset */
            areturn
        end local 4 // java.util.Hashtable exp
        end local 3 // sun.tools.tree.Vset vset
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/tools/tree/FieldExpression;
            0    4     1   env  Lsun/tools/java/Environment;
            0    4     2   ctx  Lsun/tools/tree/Context;
            0    4     3  vset  Lsun/tools/tree/Vset;
            0    4     4   exp  Ljava/util/Hashtable;
    MethodParameters:
      Name  Flags
      env   
      ctx   
      vset  
      exp   

  static void reportFailedPackagePrefix(sun.tools.java.Environment, sun.tools.tree.Expression);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Expression;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.tools.java.Environment env
        start local 1 // sun.tools.tree.Expression right
         0: .line 252
            aload 0 /* env */
            aload 1 /* right */
            iconst_0
            invokestatic sun.tools.tree.FieldExpression.reportFailedPackagePrefix:(Lsun/tools/java/Environment;Lsun/tools/tree/Expression;Z)V
         1: .line 253
            return
        end local 1 // sun.tools.tree.Expression right
        end local 0 // sun.tools.java.Environment env
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0    env  Lsun/tools/java/Environment;
            0    2     1  right  Lsun/tools/tree/Expression;
    MethodParameters:
       Name  Flags
      env    
      right  

  static void reportFailedPackagePrefix(sun.tools.java.Environment, sun.tools.tree.Expression, boolean);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Expression;Z)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=6, args_size=3
        start local 0 // sun.tools.java.Environment env
        start local 1 // sun.tools.tree.Expression right
        start local 2 // boolean mustBeType
         0: .line 259
            aload 1 /* right */
            astore 3 /* idp */
        start local 3 // sun.tools.tree.Expression idp
         1: .line 260
            goto 3
         2: .line 261
      StackMap locals: sun.tools.tree.Expression
      StackMap stack:
            aload 3 /* idp */
            checkcast sun.tools.tree.UnaryExpression
            getfield sun.tools.tree.UnaryExpression.right:Lsun/tools/tree/Expression;
            astore 3 /* idp */
         3: .line 260
      StackMap locals:
      StackMap stack:
            aload 3 /* idp */
            instanceof sun.tools.tree.UnaryExpression
            ifne 2
         4: .line 262
            aload 3 /* idp */
            checkcast sun.tools.tree.IdentifierExpression
            astore 4 /* ie */
        start local 4 // sun.tools.tree.IdentifierExpression ie
         5: .line 267
            aload 0 /* env */
            aload 4 /* ie */
            getfield sun.tools.tree.IdentifierExpression.id:Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.Environment.resolve:(Lsun/tools/java/Identifier;)Lsun/tools/java/Identifier;
            pop
         6: .line 268
            goto 11
      StackMap locals: sun.tools.java.Environment sun.tools.tree.Expression int sun.tools.tree.Expression sun.tools.tree.IdentifierExpression
      StackMap stack: sun.tools.java.AmbiguousClass
         7: astore 5 /* e */
        start local 5 // sun.tools.java.AmbiguousClass e
         8: .line 269
            aload 0 /* env */
            aload 1 /* right */
            getfield sun.tools.tree.Expression.where:J
            ldc "ambig.class"
            aload 5 /* e */
            getfield sun.tools.java.AmbiguousClass.name1:Lsun/tools/java/Identifier;
            aload 5 /* e */
            getfield sun.tools.java.AmbiguousClass.name2:Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
         9: .line 270
            return
        end local 5 // sun.tools.java.AmbiguousClass e
        10: .line 271
      StackMap locals:
      StackMap stack: sun.tools.java.ClassNotFound
            pop
        11: .line 274
      StackMap locals:
      StackMap stack:
            aload 3 /* idp */
            aload 1 /* right */
            if_acmpne 17
        12: .line 275
            iload 2 /* mustBeType */
            ifeq 15
        13: .line 276
            aload 0 /* env */
            aload 4 /* ie */
            getfield sun.tools.tree.IdentifierExpression.where:J
            ldc "undef.class"
            aload 4 /* ie */
            getfield sun.tools.tree.IdentifierExpression.id:Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
        14: .line 277
            goto 21
        15: .line 278
      StackMap locals:
      StackMap stack:
            aload 0 /* env */
            aload 4 /* ie */
            getfield sun.tools.tree.IdentifierExpression.where:J
            ldc "undef.var.or.class"
            aload 4 /* ie */
            getfield sun.tools.tree.IdentifierExpression.id:Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
        16: .line 280
            goto 21
        17: .line 281
      StackMap locals:
      StackMap stack:
            iload 2 /* mustBeType */
            ifeq 20
        18: .line 282
            aload 0 /* env */
            aload 4 /* ie */
            getfield sun.tools.tree.IdentifierExpression.where:J
            ldc "undef.class.or.package"
            aload 4 /* ie */
            getfield sun.tools.tree.IdentifierExpression.id:Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
        19: .line 283
            goto 21
        20: .line 284
      StackMap locals:
      StackMap stack:
            aload 0 /* env */
            aload 4 /* ie */
            getfield sun.tools.tree.IdentifierExpression.where:J
            ldc "undef.var.class.or.package"
            aload 4 /* ie */
            getfield sun.tools.tree.IdentifierExpression.id:Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
        21: .line 287
      StackMap locals:
      StackMap stack:
            return
        end local 4 // sun.tools.tree.IdentifierExpression ie
        end local 3 // sun.tools.tree.Expression idp
        end local 2 // boolean mustBeType
        end local 1 // sun.tools.tree.Expression right
        end local 0 // sun.tools.java.Environment env
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   22     0         env  Lsun/tools/java/Environment;
            0   22     1       right  Lsun/tools/tree/Expression;
            0   22     2  mustBeType  Z
            1   22     3         idp  Lsun/tools/tree/Expression;
            5   22     4          ie  Lsun/tools/tree/IdentifierExpression;
            8   10     5           e  Lsun/tools/java/AmbiguousClass;
      Exception table:
        from    to  target  type
           5     6       7  Class sun.tools.java.AmbiguousClass
           5     6      10  Class sun.tools.java.ClassNotFound
    MethodParameters:
            Name  Flags
      env         
      right       
      mustBeType  

  private sun.tools.tree.Expression implementFieldAccess(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Expression, boolean);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Expression;Z)Lsun/tools/tree/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=9, args_size=5
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
        start local 3 // sun.tools.tree.Expression base
        start local 4 // boolean isLHS
         0: .line 295
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.FieldExpression.accessBase:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/java/ClassDefinition;
            astore 5 /* abase */
        start local 5 // sun.tools.java.ClassDefinition abase
         1: .line 296
            aload 5 /* abase */
            ifnull 15
         2: .line 306
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isFinal:()Z
            ifeq 6
         3: .line 307
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getValue:()Lsun/tools/tree/Node;
            checkcast sun.tools.tree.Expression
            astore 6 /* e */
        start local 6 // sun.tools.tree.Expression e
         4: .line 311
            aload 6 /* e */
            ifnull 6
            aload 6 /* e */
            invokevirtual sun.tools.tree.Expression.isConstant:()Z
            ifeq 6
            iload 4 /* isLHS */
            ifne 6
         5: .line 312
            aload 6 /* e */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.Expression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
            areturn
        end local 6 // sun.tools.tree.Expression e
         6: .line 317
      StackMap locals: sun.tools.java.ClassDefinition
      StackMap stack:
            aload 5 /* abase */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            aload 0 /* this */
            invokevirtual sun.tools.tree.FieldExpression.isQualSuper:()Z
            invokevirtual sun.tools.java.ClassDefinition.getAccessMember:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/MemberDefinition;Z)Lsun/tools/java/MemberDefinition;
            astore 6 /* af */
        start local 6 // sun.tools.java.MemberDefinition af
         7: .line 320
            iload 4 /* isLHS */
            ifne 15
         8: .line 330
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isStatic:()Z
            ifeq 13
         9: .line 331
            iconst_0
            anewarray sun.tools.tree.Expression
            astore 7 /* args */
        start local 7 // sun.tools.tree.Expression[] args
        10: .line 333
            new sun.tools.tree.MethodExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aconst_null
            aload 6 /* af */
            aload 7 /* args */
            invokespecial sun.tools.tree.MethodExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/java/MemberDefinition;[Lsun/tools/tree/Expression;)V
        11: .line 332
            astore 8 /* call */
        start local 8 // sun.tools.tree.Expression call
        12: .line 334
            new sun.tools.tree.CommaExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 3 /* base */
            aload 8 /* call */
            invokespecial sun.tools.tree.CommaExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
            areturn
        end local 8 // sun.tools.tree.Expression call
        end local 7 // sun.tools.tree.Expression[] args
        13: .line 336
      StackMap locals: sun.tools.java.MemberDefinition
      StackMap stack:
            iconst_1
            anewarray sun.tools.tree.Expression
            dup
            iconst_0
            aload 3 /* base */
            aastore
            astore 7 /* args */
        start local 7 // sun.tools.tree.Expression[] args
        14: .line 337
            new sun.tools.tree.MethodExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aconst_null
            aload 6 /* af */
            aload 7 /* args */
            invokespecial sun.tools.tree.MethodExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/java/MemberDefinition;[Lsun/tools/tree/Expression;)V
            areturn
        end local 7 // sun.tools.tree.Expression[] args
        end local 6 // sun.tools.java.MemberDefinition af
        15: .line 342
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 5 // sun.tools.java.ClassDefinition abase
        end local 4 // boolean isLHS
        end local 3 // sun.tools.tree.Expression base
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   16     0   this  Lsun/tools/tree/FieldExpression;
            0   16     1    env  Lsun/tools/java/Environment;
            0   16     2    ctx  Lsun/tools/tree/Context;
            0   16     3   base  Lsun/tools/tree/Expression;
            0   16     4  isLHS  Z
            1   16     5  abase  Lsun/tools/java/ClassDefinition;
            4    6     6      e  Lsun/tools/tree/Expression;
            7   15     6     af  Lsun/tools/java/MemberDefinition;
           10   13     7   args  [Lsun/tools/tree/Expression;
           12   13     8   call  Lsun/tools/tree/Expression;
           14   15     7   args  [Lsun/tools/tree/Expression;
    MethodParameters:
       Name  Flags
      env    
      ctx    
      base   
      isLHS  

  private sun.tools.java.ClassDefinition accessBase(sun.tools.java.Environment, sun.tools.tree.Context);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/java/ClassDefinition;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
         0: .line 350
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isPrivate:()Z
            ifeq 6
         1: .line 351
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            astore 3 /* cdef */
        start local 3 // sun.tools.java.ClassDefinition cdef
         2: .line 352
            aload 2 /* ctx */
            getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            astore 4 /* ctxClass */
        start local 4 // sun.tools.java.ClassDefinition ctxClass
         3: .line 353
            aload 3 /* cdef */
            aload 4 /* ctxClass */
            if_acmpne 5
         4: .line 356
            aconst_null
            areturn
         5: .line 359
      StackMap locals: sun.tools.java.ClassDefinition sun.tools.java.ClassDefinition
      StackMap stack:
            aload 3 /* cdef */
            areturn
        end local 4 // sun.tools.java.ClassDefinition ctxClass
        end local 3 // sun.tools.java.ClassDefinition cdef
         6: .line 360
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isProtected:()Z
            ifeq 14
         7: .line 361
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.superBase:Lsun/tools/java/ClassDefinition;
            ifnonnull 9
         8: .line 366
            aconst_null
            areturn
         9: .line 368
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            astore 3 /* cdef */
        start local 3 // sun.tools.java.ClassDefinition cdef
        10: .line 369
            aload 2 /* ctx */
            getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            astore 4 /* ctxClass */
        start local 4 // sun.tools.java.ClassDefinition ctxClass
        11: .line 370
            aload 3 /* cdef */
            aload 4 /* ctxClass */
            invokevirtual sun.tools.java.ClassDefinition.inSamePackage:(Lsun/tools/java/ClassDefinition;)Z
            ifeq 13
        12: .line 372
            aconst_null
            areturn
        13: .line 381
      StackMap locals: sun.tools.java.ClassDefinition sun.tools.java.ClassDefinition
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.superBase:Lsun/tools/java/ClassDefinition;
            areturn
        end local 4 // sun.tools.java.ClassDefinition ctxClass
        end local 3 // sun.tools.java.ClassDefinition cdef
        14: .line 384
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0      this  Lsun/tools/tree/FieldExpression;
            0   15     1       env  Lsun/tools/java/Environment;
            0   15     2       ctx  Lsun/tools/tree/Context;
            2    6     3      cdef  Lsun/tools/java/ClassDefinition;
            3    6     4  ctxClass  Lsun/tools/java/ClassDefinition;
           10   14     3      cdef  Lsun/tools/java/ClassDefinition;
           11   14     4  ctxClass  Lsun/tools/java/ClassDefinition;
    MethodParameters:
      Name  Flags
      env   
      ctx   

  static boolean isTypeAccessible(long, sun.tools.java.Environment, sun.tools.java.Type, sun.tools.java.ClassDefinition);
    descriptor: (JLsun/tools/java/Environment;Lsun/tools/java/Type;Lsun/tools/java/ClassDefinition;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // long where
        start local 2 // sun.tools.java.Environment env
        start local 3 // sun.tools.java.Type t
        start local 4 // sun.tools.java.ClassDefinition c
         0: .line 395
            aload 3 /* t */
            invokevirtual sun.tools.java.Type.getTypeCode:()I
            tableswitch { // 9 - 10
                    9: 7
                   10: 1
              default: 8
          }
         1: .line 398
      StackMap locals:
      StackMap stack:
            aload 3 /* t */
            invokevirtual sun.tools.java.Type.getClassName:()Lsun/tools/java/Identifier;
            pop
         2: .line 403
            aload 2 /* env */
            aload 3 /* t */
            invokevirtual sun.tools.java.Environment.getClassDefinition:(Lsun/tools/java/Type;)Lsun/tools/java/ClassDefinition;
            astore 5 /* def */
        start local 5 // sun.tools.java.ClassDefinition def
         3: .line 404
            aload 4 /* c */
            aload 2 /* env */
            aload 5 /* def */
            invokevirtual sun.tools.java.ClassDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
            invokevirtual sun.tools.java.ClassDefinition.canAccess:(Lsun/tools/java/Environment;Lsun/tools/java/ClassDeclaration;)Z
         4: ireturn
        end local 5 // sun.tools.java.ClassDefinition def
         5: .line 405
      StackMap locals:
      StackMap stack: sun.tools.java.ClassNotFound
            pop
         6: .line 406
            iconst_1
            ireturn
         7: .line 408
      StackMap locals:
      StackMap stack:
            lload 0 /* where */
            aload 2 /* env */
            aload 3 /* t */
            invokevirtual sun.tools.java.Type.getElementType:()Lsun/tools/java/Type;
            aload 4 /* c */
            invokestatic sun.tools.tree.FieldExpression.isTypeAccessible:(JLsun/tools/java/Environment;Lsun/tools/java/Type;Lsun/tools/java/ClassDefinition;)Z
            ireturn
         8: .line 410
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 4 // sun.tools.java.ClassDefinition c
        end local 3 // sun.tools.java.Type t
        end local 2 // sun.tools.java.Environment env
        end local 0 // long where
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0  where  J
            0    9     2    env  Lsun/tools/java/Environment;
            0    9     3      t  Lsun/tools/java/Type;
            0    9     4      c  Lsun/tools/java/ClassDefinition;
            3    5     5    def  Lsun/tools/java/ClassDefinition;
      Exception table:
        from    to  target  type
           1     4       5  Class sun.tools.java.ClassNotFound
    MethodParameters:
       Name  Flags
      where  
      env    
      t      
      c      

  private sun.tools.tree.Vset checkCommon(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Vset, java.util.Hashtable, sun.tools.tree.UnaryExpression, boolean);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;Z)Lsun/tools/tree/Vset;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=16, args_size=7
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
        start local 3 // sun.tools.tree.Vset vset
        start local 4 // java.util.Hashtable exp
        start local 5 // sun.tools.tree.UnaryExpression loc
        start local 6 // boolean isLHS
         0: .line 423
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            getstatic sun.tools.tree.FieldExpression.idClass:Lsun/tools/java/Identifier;
            if_acmpne 53
         1: .line 426
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            aload 1 /* env */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.Expression.toType:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/java/Type;
            astore 7 /* t */
        start local 7 // sun.tools.java.Type t
         2: .line 428
            aload 7 /* t */
            bipush 10
            invokevirtual sun.tools.java.Type.isType:(I)Z
            ifne 25
            aload 7 /* t */
            bipush 9
            invokevirtual sun.tools.java.Type.isType:(I)Z
            ifne 25
         3: .line 429
            aload 7 /* t */
            bipush 13
            invokevirtual sun.tools.java.Type.isType:(I)Z
            ifeq 6
         4: .line 430
            aload 0 /* this */
            getstatic sun.tools.java.Type.tClassDesc:Lsun/tools/java/Type;
            putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
         5: .line 431
            aload 3 /* vset */
            areturn
         6: .line 433
      StackMap locals: sun.tools.java.Type
      StackMap stack:
            aconst_null
            astore 8 /* wrc */
        start local 8 // java.lang.String wrc
         7: .line 434
            aload 7 /* t */
            invokevirtual sun.tools.java.Type.getTypeCode:()I
            tableswitch { // 0 - 11
                    0: 9
                    1: 10
                    2: 11
                    3: 12
                    4: 13
                    5: 15
                    6: 14
                    7: 16
                    8: 17
                    9: 17
                   10: 17
                   11: 8
              default: 17
          }
         8: .line 435
      StackMap locals: java.lang.String
      StackMap stack:
            ldc "Void"
            astore 8 /* wrc */
            goto 19
         9: .line 436
      StackMap locals:
      StackMap stack:
            ldc "Boolean"
            astore 8 /* wrc */
            goto 19
        10: .line 437
      StackMap locals:
      StackMap stack:
            ldc "Byte"
            astore 8 /* wrc */
            goto 19
        11: .line 438
      StackMap locals:
      StackMap stack:
            ldc "Character"
            astore 8 /* wrc */
            goto 19
        12: .line 439
      StackMap locals:
      StackMap stack:
            ldc "Short"
            astore 8 /* wrc */
            goto 19
        13: .line 440
      StackMap locals:
      StackMap stack:
            ldc "Integer"
            astore 8 /* wrc */
            goto 19
        14: .line 441
      StackMap locals:
      StackMap stack:
            ldc "Float"
            astore 8 /* wrc */
            goto 19
        15: .line 442
      StackMap locals:
      StackMap stack:
            ldc "Long"
            astore 8 /* wrc */
            goto 19
        16: .line 443
      StackMap locals:
      StackMap stack:
            ldc "Double"
            astore 8 /* wrc */
            goto 19
        17: .line 445
      StackMap locals:
      StackMap stack:
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.where:J
            ldc "invalid.type.expr"
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;)V
        18: .line 446
            aload 3 /* vset */
            areturn
        19: .line 448
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            getstatic sun.tools.tree.FieldExpression.idJavaLang:Lsun/tools/java/Identifier;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 8 /* wrc */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic sun.tools.java.Identifier.lookup:(Ljava/lang/String;)Lsun/tools/java/Identifier;
            astore 9 /* wid */
        start local 9 // sun.tools.java.Identifier wid
        20: .line 449
            new sun.tools.tree.TypeExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 9 /* wid */
            invokestatic sun.tools.java.Type.tClass:(Lsun/tools/java/Identifier;)Lsun/tools/java/Type;
            invokespecial sun.tools.tree.TypeExpression.<init>:(JLsun/tools/java/Type;)V
            astore 10 /* wcls */
        start local 10 // sun.tools.tree.Expression wcls
        21: .line 450
            aload 0 /* this */
            new sun.tools.tree.FieldExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 10 /* wcls */
            getstatic sun.tools.tree.FieldExpression.idTYPE:Lsun/tools/java/Identifier;
            invokespecial sun.tools.tree.FieldExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/java/Identifier;)V
            putfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
        22: .line 451
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* vset */
            aload 4 /* exp */
            invokevirtual sun.tools.tree.Expression.checkValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
            astore 3 /* vset */
        23: .line 452
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
        24: .line 453
            aload 3 /* vset */
            areturn
        end local 10 // sun.tools.tree.Expression wcls
        end local 9 // sun.tools.java.Identifier wid
        end local 8 // java.lang.String wrc
        25: .line 457
      StackMap locals:
      StackMap stack:
            aload 7 /* t */
            invokevirtual sun.tools.java.Type.isVoidArray:()Z
            ifeq 29
        26: .line 458
            aload 0 /* this */
            getstatic sun.tools.java.Type.tClassDesc:Lsun/tools/java/Type;
            putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
        27: .line 459
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.where:J
            ldc "void.array"
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;)V
        28: .line 460
            aload 3 /* vset */
            areturn
        29: .line 464
      StackMap locals:
      StackMap stack:
            aload 2 /* ctx */
            getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getWhere:()J
            lstore 8 /* fwhere */
        start local 8 // long fwhere
        30: .line 465
            aload 2 /* ctx */
            getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            astore 10 /* fcls */
        start local 10 // sun.tools.java.ClassDefinition fcls
        31: .line 466
            aload 10 /* fcls */
            lload 8 /* fwhere */
            invokevirtual sun.tools.java.ClassDefinition.getClassLiteralLookup:(J)Lsun/tools/java/MemberDefinition;
            astore 11 /* lookup */
        start local 11 // sun.tools.java.MemberDefinition lookup
        32: .line 468
            aload 7 /* t */
            invokevirtual sun.tools.java.Type.getTypeSignature:()Ljava/lang/String;
            astore 12 /* sig */
        start local 12 // java.lang.String sig
        33: .line 470
            aload 7 /* t */
            bipush 10
            invokevirtual sun.tools.java.Type.isType:(I)Z
            ifeq 38
        34: .line 473
            aload 12 /* sig */
            iconst_1
            aload 12 /* sig */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
        35: .line 474
            bipush 47
            bipush 46
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
        36: .line 473
            astore 13 /* className */
        start local 13 // java.lang.String className
        37: .line 475
            goto 39
        end local 13 // java.lang.String className
        38: .line 478
      StackMap locals: sun.tools.tree.FieldExpression sun.tools.java.Environment sun.tools.tree.Context sun.tools.tree.Vset java.util.Hashtable sun.tools.tree.UnaryExpression int sun.tools.java.Type long sun.tools.java.ClassDefinition sun.tools.java.MemberDefinition java.lang.String
      StackMap stack:
            aload 12 /* sig */
            bipush 47
            bipush 46
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            astore 13 /* className */
        start local 13 // java.lang.String className
        39: .line 481
      StackMap locals: java.lang.String
      StackMap stack:
            aload 10 /* fcls */
            invokevirtual sun.tools.java.ClassDefinition.isInterface:()Z
            ifeq 44
        40: .line 487
            aload 0 /* this */
        41: .line 488
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 11 /* lookup */
            aload 13 /* className */
            invokevirtual sun.tools.tree.FieldExpression.makeClassLiteralInlineRef:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/MemberDefinition;Ljava/lang/String;)Lsun/tools/tree/Expression;
        42: .line 487
            putfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
        43: .line 489
            goto 50
        44: .line 492
      StackMap locals:
      StackMap stack:
            aload 11 /* lookup */
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            astore 14 /* inClass */
        start local 14 // sun.tools.java.ClassDefinition inClass
        45: .line 494
            aload 1 /* env */
            aload 2 /* ctx */
            aload 13 /* className */
            aload 14 /* inClass */
            invokestatic sun.tools.tree.FieldExpression.getClassLiteralCache:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Ljava/lang/String;Lsun/tools/java/ClassDefinition;)Lsun/tools/java/MemberDefinition;
        46: .line 493
            astore 15 /* cfld */
        start local 15 // sun.tools.java.MemberDefinition cfld
        47: .line 495
            aload 0 /* this */
        48: .line 496
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 11 /* lookup */
            aload 15 /* cfld */
            aload 13 /* className */
            invokevirtual sun.tools.tree.FieldExpression.makeClassLiteralCacheRef:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/MemberDefinition;Lsun/tools/java/MemberDefinition;Ljava/lang/String;)Lsun/tools/tree/Expression;
        49: .line 495
            putfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
        end local 15 // sun.tools.java.MemberDefinition cfld
        end local 14 // sun.tools.java.ClassDefinition inClass
        50: .line 499
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* vset */
            aload 4 /* exp */
            invokevirtual sun.tools.tree.Expression.checkValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
            astore 3 /* vset */
        51: .line 500
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
        52: .line 501
            aload 3 /* vset */
            areturn
        end local 13 // java.lang.String className
        end local 12 // java.lang.String sig
        end local 11 // sun.tools.java.MemberDefinition lookup
        end local 10 // sun.tools.java.ClassDefinition fcls
        end local 8 // long fwhere
        end local 7 // sun.tools.java.Type t
        53: .line 506
      StackMap locals: sun.tools.tree.FieldExpression sun.tools.java.Environment sun.tools.tree.Context sun.tools.tree.Vset java.util.Hashtable sun.tools.tree.UnaryExpression int
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            ifnull 59
        54: .line 515
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            iload 6 /* isLHS */
            invokevirtual sun.tools.tree.FieldExpression.implementFieldAccess:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Expression;Z)Lsun/tools/tree/Expression;
            putfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
        55: .line 516
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            ifnonnull 57
        56: .line 517
            aload 3 /* vset */
            goto 58
      StackMap locals:
      StackMap stack:
        57: aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* vset */
            aload 4 /* exp */
            aload 0 /* this */
            invokevirtual sun.tools.tree.Expression.checkAmbigName:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;)Lsun/tools/tree/Vset;
        58: .line 516
      StackMap locals:
      StackMap stack: sun.tools.tree.Vset
            areturn
        59: .line 521
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* vset */
            aload 4 /* exp */
            aload 0 /* this */
            invokevirtual sun.tools.tree.Expression.checkAmbigName:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;)Lsun/tools/tree/Vset;
            astore 3 /* vset */
        60: .line 522
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            getstatic sun.tools.java.Type.tPackage:Lsun/tools/java/Type;
            if_acmpne 72
        61: .line 524
            aload 5 /* loc */
            ifnonnull 64
        62: .line 525
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            invokestatic sun.tools.tree.FieldExpression.reportFailedPackagePrefix:(Lsun/tools/java/Environment;Lsun/tools/tree/Expression;)V
        63: .line 526
            aload 3 /* vset */
            areturn
        64: .line 532
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokestatic sun.tools.tree.FieldExpression.toIdentifier:(Lsun/tools/tree/Expression;)Lsun/tools/java/Identifier;
            astore 7 /* nm */
        start local 7 // sun.tools.java.Identifier nm
        65: .line 533
            aload 7 /* nm */
            ifnull 70
            aload 1 /* env */
            aload 7 /* nm */
            invokevirtual sun.tools.java.Environment.classExists:(Lsun/tools/java/Identifier;)Z
            ifeq 70
        66: .line 534
            aload 5 /* loc */
            new sun.tools.tree.TypeExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 7 /* nm */
            invokestatic sun.tools.java.Type.tClass:(Lsun/tools/java/Identifier;)Lsun/tools/java/Type;
            invokespecial sun.tools.tree.TypeExpression.<init>:(JLsun/tools/java/Type;)V
            putfield sun.tools.tree.UnaryExpression.right:Lsun/tools/tree/Expression;
        67: .line 536
            aload 2 /* ctx */
            getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            astore 8 /* ctxClass */
        start local 8 // sun.tools.java.ClassDefinition ctxClass
        68: .line 537
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 8 /* ctxClass */
            aload 5 /* loc */
            getfield sun.tools.tree.UnaryExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Environment.resolve:(JLsun/tools/java/ClassDefinition;Lsun/tools/java/Type;)Z
            pop
        69: .line 538
            aload 3 /* vset */
            areturn
        end local 8 // sun.tools.java.ClassDefinition ctxClass
        70: .line 542
      StackMap locals: sun.tools.java.Identifier
      StackMap stack:
            aload 0 /* this */
            getstatic sun.tools.java.Type.tPackage:Lsun/tools/java/Type;
            putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
        71: .line 543
            aload 3 /* vset */
            areturn
        end local 7 // sun.tools.java.Identifier nm
        72: .line 548
      StackMap locals:
      StackMap stack:
            aload 2 /* ctx */
            getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            astore 7 /* ctxClass */
        start local 7 // sun.tools.java.ClassDefinition ctxClass
        73: .line 549
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            instanceof sun.tools.tree.TypeExpression
            istore 8 /* staticRef */
        start local 8 // boolean staticRef
        74: .line 555
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            bipush 10
            invokevirtual sun.tools.java.Type.isType:(I)Z
            ifne 94
        75: .line 556
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            bipush 9
            invokevirtual sun.tools.java.Type.isType:(I)Z
            ifeq 90
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            getstatic sun.tools.tree.FieldExpression.idLength:Lsun/tools/java/Identifier;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 90
        76: .line 559
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            aload 7 /* ctxClass */
            invokestatic sun.tools.tree.FieldExpression.isTypeAccessible:(JLsun/tools/java/Environment;Lsun/tools/java/Type;Lsun/tools/java/ClassDefinition;)Z
            ifne 86
        77: .line 560
            aload 7 /* ctxClass */
            invokevirtual sun.tools.java.ClassDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
            astore 9 /* cdecl */
        start local 9 // sun.tools.java.ClassDeclaration cdecl
        78: .line 561
            iload 8 /* staticRef */
            ifeq 83
        79: .line 562
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "no.type.access"
        80: .line 563
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Type.toString:()Ljava/lang/String;
            aload 9 /* cdecl */
        81: .line 562
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        82: .line 564
            goto 86
        83: .line 565
      StackMap locals: sun.tools.java.ClassDefinition int sun.tools.java.ClassDeclaration
      StackMap stack:
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "cant.access.member.type"
        84: .line 566
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Type.toString:()Ljava/lang/String;
            aload 9 /* cdecl */
        85: .line 565
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        end local 9 // sun.tools.java.ClassDeclaration cdecl
        86: .line 569
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic sun.tools.java.Type.tInt:Lsun/tools/java/Type;
            putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
        87: .line 570
            aload 0 /* this */
            new sun.tools.tree.LengthExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            invokespecial sun.tools.tree.LengthExpression.<init>:(JLsun/tools/tree/Expression;)V
            putfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
        88: .line 571
            aload 3 /* vset */
        89: areturn
        90: .line 573
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            bipush 13
            invokevirtual sun.tools.java.Type.isType:(I)Z
            ifne 92
        91: .line 574
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "invalid.field.reference"
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        92: .line 576
      StackMap locals:
      StackMap stack:
            aload 3 /* vset */
        93: areturn
        94: .line 594
      StackMap locals:
      StackMap stack:
            aload 7 /* ctxClass */
            astore 9 /* sourceClass */
        start local 9 // sun.tools.java.ClassDefinition sourceClass
        95: .line 595
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            instanceof sun.tools.tree.FieldExpression
            ifeq 103
        96: .line 596
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            checkcast sun.tools.tree.FieldExpression
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            astore 10 /* id */
        start local 10 // sun.tools.java.Identifier id
        97: .line 597
            aload 10 /* id */
            getstatic sun.tools.tree.FieldExpression.idThis:Lsun/tools/java/Identifier;
            if_acmpne 100
        98: .line 598
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            checkcast sun.tools.tree.FieldExpression
            getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
            astore 9 /* sourceClass */
        99: .line 599
            goto 103
      StackMap locals: sun.tools.java.ClassDefinition sun.tools.java.Identifier
      StackMap stack:
       100: aload 10 /* id */
            getstatic sun.tools.tree.FieldExpression.idSuper:Lsun/tools/java/Identifier;
            if_acmpne 103
       101: .line 600
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            checkcast sun.tools.tree.FieldExpression
            getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
            astore 9 /* sourceClass */
       102: .line 601
            aload 0 /* this */
            aload 9 /* sourceClass */
            putfield sun.tools.tree.FieldExpression.superBase:Lsun/tools/java/ClassDefinition;
        end local 10 // sun.tools.java.Identifier id
       103: .line 618
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Environment.getClassDefinition:(Lsun/tools/java/Type;)Lsun/tools/java/ClassDefinition;
            putfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
       104: .line 619
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            getstatic sun.tools.tree.FieldExpression.idThis:Lsun/tools/java/Identifier;
            if_acmpeq 105
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            getstatic sun.tools.tree.FieldExpression.idSuper:Lsun/tools/java/Identifier;
            if_acmpne 117
       105: .line 620
      StackMap locals:
      StackMap stack:
            iload 8 /* staticRef */
            ifne 107
       106: .line 621
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.where:J
            ldc "invalid.type.expr"
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;)V
       107: .line 630
      StackMap locals:
      StackMap stack:
            aload 2 /* ctx */
            getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isSynthetic:()Z
            ifeq 109
       108: .line 631
            new sun.tools.java.CompilerError
            dup
            ldc "synthetic qualified this"
            invokespecial sun.tools.java.CompilerError.<init>:(Ljava/lang/String;)V
            athrow
       109: .line 640
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* ctx */
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
            aconst_null
            iconst_1
            invokevirtual sun.tools.tree.Context.findOuterLink:(Lsun/tools/java/Environment;JLsun/tools/java/ClassDefinition;Lsun/tools/java/MemberDefinition;Z)Lsun/tools/tree/Expression;
            putfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
       110: .line 641
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* vset */
            aload 4 /* exp */
            invokevirtual sun.tools.tree.Expression.checkValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
            astore 3 /* vset */
       111: .line 642
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            getstatic sun.tools.tree.FieldExpression.idSuper:Lsun/tools/java/Identifier;
            if_acmpne 114
       112: .line 643
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
            invokevirtual sun.tools.java.ClassDefinition.getSuperClass:()Lsun/tools/java/ClassDeclaration;
            invokevirtual sun.tools.java.ClassDeclaration.getType:()Lsun/tools/java/Type;
            putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
       113: .line 644
            goto 115
       114: .line 645
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
            invokevirtual sun.tools.java.ClassDefinition.getType:()Lsun/tools/java/Type;
            putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
       115: .line 647
      StackMap locals:
      StackMap stack:
            aload 3 /* vset */
       116: areturn
       117: .line 651
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            aload 9 /* sourceClass */
            invokevirtual sun.tools.java.ClassDefinition.getVariable:(Lsun/tools/java/Environment;Lsun/tools/java/Identifier;Lsun/tools/java/ClassDefinition;)Lsun/tools/java/MemberDefinition;
            putfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
       118: .line 653
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            ifnonnull 123
            iload 8 /* staticRef */
            ifeq 123
            aload 5 /* loc */
            ifnull 123
       119: .line 663
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.ClassDefinition.getInnerClass:(Lsun/tools/java/Environment;Lsun/tools/java/Identifier;)Lsun/tools/java/MemberDefinition;
            putfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
       120: .line 664
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            ifnull 123
       121: .line 665
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* vset */
            aload 4 /* exp */
            aload 5 /* loc */
            invokevirtual sun.tools.tree.FieldExpression.checkInnerClass:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;)Lsun/tools/tree/Vset;
       122: areturn
       123: .line 672
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            ifnonnull 132
       124: .line 673
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.ClassDefinition.findAnyMethod:(Lsun/tools/java/Environment;Lsun/tools/java/Identifier;)Lsun/tools/java/MemberDefinition;
            dup_x1
            putfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            ifnull 129
       125: .line 674
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "invalid.field"
       126: .line 675
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
       127: .line 674
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
       128: .line 676
            goto 130
       129: .line 677
      StackMap locals:
      StackMap stack:
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "no.such.field"
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
       130: .line 679
      StackMap locals:
      StackMap stack:
            aload 3 /* vset */
       131: areturn
       132: .line 685
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            aload 9 /* sourceClass */
            invokestatic sun.tools.tree.FieldExpression.isTypeAccessible:(JLsun/tools/java/Environment;Lsun/tools/java/Type;Lsun/tools/java/ClassDefinition;)Z
            ifne 142
       133: .line 686
            aload 9 /* sourceClass */
            invokevirtual sun.tools.java.ClassDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
            astore 10 /* cdecl */
        start local 10 // sun.tools.java.ClassDeclaration cdecl
       134: .line 687
            iload 8 /* staticRef */
            ifeq 139
       135: .line 688
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "no.type.access"
       136: .line 689
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Type.toString:()Ljava/lang/String;
            aload 10 /* cdecl */
       137: .line 688
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
       138: .line 690
            goto 142
       139: .line 691
      StackMap locals: sun.tools.java.ClassDeclaration
      StackMap stack:
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "cant.access.member.type"
       140: .line 692
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Type.toString:()Ljava/lang/String;
            aload 10 /* cdecl */
       141: .line 691
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        end local 10 // sun.tools.java.ClassDeclaration cdecl
       142: .line 696
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getType:()Lsun/tools/java/Type;
            putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
       143: .line 698
            aload 9 /* sourceClass */
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.ClassDefinition.canAccess:(Lsun/tools/java/Environment;Lsun/tools/java/MemberDefinition;)Z
            ifne 149
       144: .line 699
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "no.field.access"
       145: .line 700
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
            aload 9 /* sourceClass */
            invokevirtual sun.tools.java.ClassDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
       146: .line 699
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
       147: .line 701
            aload 3 /* vset */
       148: areturn
       149: .line 704
      StackMap locals:
      StackMap stack:
            iload 8 /* staticRef */
            ifeq 153
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isStatic:()Z
            ifne 153
       150: .line 709
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "no.static.field.access"
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
       151: .line 710
            aload 3 /* vset */
       152: areturn
       153: .line 713
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            iload 6 /* isLHS */
            invokevirtual sun.tools.tree.FieldExpression.implementFieldAccess:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Expression;Z)Lsun/tools/tree/Expression;
            putfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
       154: .line 717
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isProtected:()Z
            ifeq 165
       155: .line 718
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            instanceof sun.tools.tree.SuperExpression
            ifne 165
       156: .line 720
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            instanceof sun.tools.tree.FieldExpression
            ifeq 158
       157: .line 721
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            checkcast sun.tools.tree.FieldExpression
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            getstatic sun.tools.tree.FieldExpression.idSuper:Lsun/tools/java/Identifier;
            if_acmpeq 165
       158: .line 722
      StackMap locals:
      StackMap stack:
            aload 9 /* sourceClass */
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            invokevirtual sun.tools.java.ClassDefinition.protectedAccess:(Lsun/tools/java/Environment;Lsun/tools/java/MemberDefinition;Lsun/tools/java/Type;)Z
            ifne 165
       159: .line 723
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "invalid.protected.field.use"
       160: .line 724
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getName:()Lsun/tools/java/Identifier;
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
       161: .line 725
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
       162: .line 723
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
       163: .line 726
            aload 3 /* vset */
       164: areturn
       165: .line 729
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isStatic:()Z
            ifne 168
       166: .line 730
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.op:I
            bipush 82
            if_icmpne 168
            aload 3 /* vset */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.Context.getThisNumber:()I
            invokevirtual sun.tools.tree.Vset.testVar:(I)Z
            ifne 168
       167: .line 731
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "access.inst.before.super"
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
       168: .line 734
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            aload 1 /* env */
            invokevirtual sun.tools.java.MemberDefinition.reportDeprecated:(Lsun/tools/java/Environment;)Z
            ifeq 172
       169: .line 735
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "warn.field.is.deprecated"
       170: .line 736
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
       171: .line 735
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
       172: .line 749
      StackMap locals:
      StackMap stack:
            aload 9 /* sourceClass */
            aload 7 /* ctxClass */
            if_acmpne 180
       173: .line 750
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            astore 10 /* declarer */
        start local 10 // sun.tools.java.ClassDefinition declarer
       174: .line 751
            aload 10 /* declarer */
            invokevirtual sun.tools.java.ClassDefinition.isPackagePrivate:()Z
            ifeq 180
       175: .line 752
            aload 10 /* declarer */
            invokevirtual sun.tools.java.ClassDefinition.getName:()Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.Identifier.getQualifier:()Lsun/tools/java/Identifier;
       176: .line 753
            aload 9 /* sourceClass */
            invokevirtual sun.tools.java.ClassDefinition.getName:()Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.Identifier.getQualifier:()Lsun/tools/java/Identifier;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 180
       177: .line 766
            aload 0 /* this */
       178: .line 767
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
            aload 1 /* env */
            invokestatic sun.tools.java.MemberDefinition.makeProxyMember:(Lsun/tools/java/MemberDefinition;Lsun/tools/java/ClassDefinition;Lsun/tools/java/Environment;)Lsun/tools/java/MemberDefinition;
       179: .line 766
            putfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
        end local 10 // sun.tools.java.ClassDefinition declarer
       180: .line 771
      StackMap locals:
      StackMap stack:
            aload 9 /* sourceClass */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
            invokevirtual sun.tools.java.ClassDefinition.addDependency:(Lsun/tools/java/ClassDeclaration;)V
        end local 9 // sun.tools.java.ClassDefinition sourceClass
       181: .line 773
            goto 189
      StackMap locals: sun.tools.tree.FieldExpression sun.tools.java.Environment sun.tools.tree.Context sun.tools.tree.Vset java.util.Hashtable sun.tools.tree.UnaryExpression int sun.tools.java.ClassDefinition int
      StackMap stack: sun.tools.java.ClassNotFound
       182: astore 9 /* e */
        start local 9 // sun.tools.java.ClassNotFound e
       183: .line 774
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "class.not.found"
            aload 9 /* e */
            getfield sun.tools.java.ClassNotFound.name:Lsun/tools/java/Identifier;
            aload 2 /* ctx */
            getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        end local 9 // sun.tools.java.ClassNotFound e
       184: goto 189
       185: .line 776
      StackMap locals:
      StackMap stack: sun.tools.java.AmbiguousMember
            astore 9 /* e */
        start local 9 // sun.tools.java.AmbiguousMember e
       186: .line 777
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "ambig.field"
       187: .line 778
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            aload 9 /* e */
            getfield sun.tools.java.AmbiguousMember.field1:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
            aload 9 /* e */
            getfield sun.tools.java.AmbiguousMember.field2:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
       188: .line 777
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        end local 9 // sun.tools.java.AmbiguousMember e
       189: .line 780
      StackMap locals:
      StackMap stack:
            aload 3 /* vset */
            areturn
        end local 8 // boolean staticRef
        end local 7 // sun.tools.java.ClassDefinition ctxClass
        end local 6 // boolean isLHS
        end local 5 // sun.tools.tree.UnaryExpression loc
        end local 4 // java.util.Hashtable exp
        end local 3 // sun.tools.tree.Vset vset
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0  190     0         this  Lsun/tools/tree/FieldExpression;
            0  190     1          env  Lsun/tools/java/Environment;
            0  190     2          ctx  Lsun/tools/tree/Context;
            0  190     3         vset  Lsun/tools/tree/Vset;
            0  190     4          exp  Ljava/util/Hashtable;
            0  190     5          loc  Lsun/tools/tree/UnaryExpression;
            0  190     6        isLHS  Z
            2   53     7            t  Lsun/tools/java/Type;
            7   25     8          wrc  Ljava/lang/String;
           20   25     9          wid  Lsun/tools/java/Identifier;
           21   25    10         wcls  Lsun/tools/tree/Expression;
           30   53     8       fwhere  J
           31   53    10         fcls  Lsun/tools/java/ClassDefinition;
           32   53    11       lookup  Lsun/tools/java/MemberDefinition;
           33   53    12          sig  Ljava/lang/String;
           37   38    13    className  Ljava/lang/String;
           39   53    13    className  Ljava/lang/String;
           45   50    14      inClass  Lsun/tools/java/ClassDefinition;
           47   50    15         cfld  Lsun/tools/java/MemberDefinition;
           65   72     7           nm  Lsun/tools/java/Identifier;
           68   70     8     ctxClass  Lsun/tools/java/ClassDefinition;
           73  190     7     ctxClass  Lsun/tools/java/ClassDefinition;
           74  190     8    staticRef  Z
           78   86     9        cdecl  Lsun/tools/java/ClassDeclaration;
           95  181     9  sourceClass  Lsun/tools/java/ClassDefinition;
           97  103    10           id  Lsun/tools/java/Identifier;
          134  142    10        cdecl  Lsun/tools/java/ClassDeclaration;
          174  180    10     declarer  Lsun/tools/java/ClassDefinition;
          183  184     9            e  Lsun/tools/java/ClassNotFound;
          186  189     9            e  Lsun/tools/java/AmbiguousMember;
      Exception table:
        from    to  target  type
          74    89     182  Class sun.tools.java.ClassNotFound
          90    93     182  Class sun.tools.java.ClassNotFound
          94   116     182  Class sun.tools.java.ClassNotFound
         117   122     182  Class sun.tools.java.ClassNotFound
         123   131     182  Class sun.tools.java.ClassNotFound
         132   148     182  Class sun.tools.java.ClassNotFound
         149   152     182  Class sun.tools.java.ClassNotFound
         153   164     182  Class sun.tools.java.ClassNotFound
         165   181     182  Class sun.tools.java.ClassNotFound
          74    89     185  Class sun.tools.java.AmbiguousMember
          90    93     185  Class sun.tools.java.AmbiguousMember
          94   116     185  Class sun.tools.java.AmbiguousMember
         117   122     185  Class sun.tools.java.AmbiguousMember
         123   131     185  Class sun.tools.java.AmbiguousMember
         132   148     185  Class sun.tools.java.AmbiguousMember
         149   152     185  Class sun.tools.java.AmbiguousMember
         153   164     185  Class sun.tools.java.AmbiguousMember
         165   181     185  Class sun.tools.java.AmbiguousMember
    MethodParameters:
       Name  Flags
      env    
      ctx    
      vset   
      exp    
      loc    
      isLHS  

  public sun.tools.tree.FieldUpdater getAssigner(sun.tools.java.Environment, sun.tools.tree.Context);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/FieldUpdater;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=6, args_size=3
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
         0: .line 799
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            ifnonnull 2
         1: .line 804
            aconst_null
            areturn
         2: .line 806
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.FieldExpression.accessBase:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/java/ClassDefinition;
            astore 3 /* abase */
        start local 3 // sun.tools.java.ClassDefinition abase
         3: .line 807
            aload 3 /* abase */
            ifnull 9
         4: .line 808
            aload 3 /* abase */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            aload 0 /* this */
            invokevirtual sun.tools.tree.FieldExpression.isQualSuper:()Z
            invokevirtual sun.tools.java.ClassDefinition.getUpdateMember:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/MemberDefinition;Z)Lsun/tools/java/MemberDefinition;
            astore 4 /* setter */
        start local 4 // sun.tools.java.MemberDefinition setter
         5: .line 810
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            ifnonnull 6
            aconst_null
            goto 7
      StackMap locals: sun.tools.java.ClassDefinition sun.tools.java.MemberDefinition
      StackMap stack:
         6: aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.Expression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
      StackMap locals:
      StackMap stack: sun.tools.tree.Expression
         7: astore 5 /* base */
        start local 5 // sun.tools.tree.Expression base
         8: .line 812
            new sun.tools.tree.FieldUpdater
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            aload 5 /* base */
            aconst_null
            aload 4 /* setter */
            invokespecial sun.tools.tree.FieldUpdater.<init>:(JLsun/tools/java/MemberDefinition;Lsun/tools/tree/Expression;Lsun/tools/java/MemberDefinition;Lsun/tools/java/MemberDefinition;)V
            areturn
        end local 5 // sun.tools.tree.Expression base
        end local 4 // sun.tools.java.MemberDefinition setter
         9: .line 814
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // sun.tools.java.ClassDefinition abase
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Lsun/tools/tree/FieldExpression;
            0   10     1     env  Lsun/tools/java/Environment;
            0   10     2     ctx  Lsun/tools/tree/Context;
            3   10     3   abase  Lsun/tools/java/ClassDefinition;
            5    9     4  setter  Lsun/tools/java/MemberDefinition;
            8    9     5    base  Lsun/tools/tree/Expression;
    MethodParameters:
      Name  Flags
      env   
      ctx   

  public sun.tools.tree.FieldUpdater getUpdater(sun.tools.java.Environment, sun.tools.tree.Context);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/FieldUpdater;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=7, args_size=3
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
         0: .line 830
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            ifnonnull 2
         1: .line 835
            aconst_null
            areturn
         2: .line 837
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.FieldExpression.accessBase:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/java/ClassDefinition;
            astore 3 /* abase */
        start local 3 // sun.tools.java.ClassDefinition abase
         3: .line 838
            aload 3 /* abase */
            ifnull 10
         4: .line 839
            aload 3 /* abase */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            aload 0 /* this */
            invokevirtual sun.tools.tree.FieldExpression.isQualSuper:()Z
            invokevirtual sun.tools.java.ClassDefinition.getAccessMember:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/MemberDefinition;Z)Lsun/tools/java/MemberDefinition;
            astore 4 /* getter */
        start local 4 // sun.tools.java.MemberDefinition getter
         5: .line 840
            aload 3 /* abase */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            aload 0 /* this */
            invokevirtual sun.tools.tree.FieldExpression.isQualSuper:()Z
            invokevirtual sun.tools.java.ClassDefinition.getUpdateMember:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/MemberDefinition;Z)Lsun/tools/java/MemberDefinition;
            astore 5 /* setter */
        start local 5 // sun.tools.java.MemberDefinition setter
         6: .line 842
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            ifnonnull 7
            aconst_null
            goto 8
      StackMap locals: sun.tools.java.ClassDefinition sun.tools.java.MemberDefinition sun.tools.java.MemberDefinition
      StackMap stack:
         7: aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.Expression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
      StackMap locals:
      StackMap stack: sun.tools.tree.Expression
         8: astore 6 /* base */
        start local 6 // sun.tools.tree.Expression base
         9: .line 843
            new sun.tools.tree.FieldUpdater
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            aload 6 /* base */
            aload 4 /* getter */
            aload 5 /* setter */
            invokespecial sun.tools.tree.FieldUpdater.<init>:(JLsun/tools/java/MemberDefinition;Lsun/tools/tree/Expression;Lsun/tools/java/MemberDefinition;Lsun/tools/java/MemberDefinition;)V
            areturn
        end local 6 // sun.tools.tree.Expression base
        end local 5 // sun.tools.java.MemberDefinition setter
        end local 4 // sun.tools.java.MemberDefinition getter
        10: .line 845
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // sun.tools.java.ClassDefinition abase
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lsun/tools/tree/FieldExpression;
            0   11     1     env  Lsun/tools/java/Environment;
            0   11     2     ctx  Lsun/tools/tree/Context;
            3   11     3   abase  Lsun/tools/java/ClassDefinition;
            5   10     4  getter  Lsun/tools/java/MemberDefinition;
            6   10     5  setter  Lsun/tools/java/MemberDefinition;
            9   10     6    base  Lsun/tools/tree/Expression;
    MethodParameters:
      Name  Flags
      env   
      ctx   

  private sun.tools.tree.Vset checkInnerClass(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Vset, java.util.Hashtable, sun.tools.tree.UnaryExpression);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;)Lsun/tools/tree/Vset;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=10, args_size=6
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
        start local 3 // sun.tools.tree.Vset vset
        start local 4 // java.util.Hashtable exp
        start local 5 // sun.tools.tree.UnaryExpression loc
         0: .line 855
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getInnerClass:()Lsun/tools/java/ClassDefinition;
            astore 6 /* inner */
        start local 6 // sun.tools.java.ClassDefinition inner
         1: .line 856
            aload 0 /* this */
            aload 6 /* inner */
            invokevirtual sun.tools.java.ClassDefinition.getType:()Lsun/tools/java/Type;
            putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
         2: .line 858
            aload 6 /* inner */
            invokevirtual sun.tools.java.ClassDefinition.isTopLevel:()Z
            ifne 4
         3: .line 859
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "inner.static.ref"
            aload 6 /* inner */
            invokevirtual sun.tools.java.ClassDefinition.getName:()Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
         4: .line 862
      StackMap locals: sun.tools.java.ClassDefinition
      StackMap stack:
            new sun.tools.tree.TypeExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
            invokespecial sun.tools.tree.TypeExpression.<init>:(JLsun/tools/java/Type;)V
            astore 7 /* te */
        start local 7 // sun.tools.tree.Expression te
         5: .line 865
            aload 2 /* ctx */
            getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            astore 8 /* ctxClass */
        start local 8 // sun.tools.java.ClassDefinition ctxClass
         6: .line 867
            aload 8 /* ctxClass */
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.ClassDefinition.canAccess:(Lsun/tools/java/Environment;Lsun/tools/java/MemberDefinition;)Z
            ifne 13
         7: .line 868
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Environment.getClassDefinition:(Lsun/tools/java/Type;)Lsun/tools/java/ClassDefinition;
            astore 9 /* clazz */
        start local 9 // sun.tools.java.ClassDefinition clazz
         8: .line 871
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "no.type.access"
         9: .line 872
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            aload 9 /* clazz */
            aload 8 /* ctxClass */
            invokevirtual sun.tools.java.ClassDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
        10: .line 871
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        11: .line 873
            aload 3 /* vset */
        12: areturn
        end local 9 // sun.tools.java.ClassDefinition clazz
        13: .line 876
      StackMap locals: sun.tools.tree.Expression sun.tools.java.ClassDefinition
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isProtected:()Z
            ifeq 24
        14: .line 877
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            instanceof sun.tools.tree.SuperExpression
            ifne 24
        15: .line 879
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            instanceof sun.tools.tree.FieldExpression
            ifeq 17
        16: .line 880
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            checkcast sun.tools.tree.FieldExpression
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            getstatic sun.tools.tree.FieldExpression.idSuper:Lsun/tools/java/Identifier;
            if_acmpeq 24
        17: .line 881
      StackMap locals:
      StackMap stack:
            aload 8 /* ctxClass */
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            invokevirtual sun.tools.java.ClassDefinition.protectedAccess:(Lsun/tools/java/Environment;Lsun/tools/java/MemberDefinition;Lsun/tools/java/Type;)Z
            ifne 24
        18: .line 882
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "invalid.protected.field.use"
        19: .line 883
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getName:()Lsun/tools/java/Identifier;
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
        20: .line 884
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
        21: .line 882
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        22: .line 885
            aload 3 /* vset */
        23: areturn
        24: .line 888
      StackMap locals:
      StackMap stack:
            aload 6 /* inner */
            aload 8 /* ctxClass */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 1 /* env */
            invokevirtual sun.tools.java.ClassDefinition.noteUsedBy:(Lsun/tools/java/ClassDefinition;JLsun/tools/java/Environment;)V
        25: .line 890
            goto 28
      StackMap locals:
      StackMap stack: sun.tools.java.ClassNotFound
        26: astore 9 /* e */
        start local 9 // sun.tools.java.ClassNotFound e
        27: .line 891
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "class.not.found"
            aload 9 /* e */
            getfield sun.tools.java.ClassNotFound.name:Lsun/tools/java/Identifier;
            aload 2 /* ctx */
            getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        end local 9 // sun.tools.java.ClassNotFound e
        28: .line 894
      StackMap locals:
      StackMap stack:
            aload 8 /* ctxClass */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
            invokevirtual sun.tools.java.ClassDefinition.addDependency:(Lsun/tools/java/ClassDeclaration;)V
        29: .line 895
            aload 5 /* loc */
            ifnonnull 31
        30: .line 897
            aload 7 /* te */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* vset */
            aload 4 /* exp */
            invokevirtual sun.tools.tree.Expression.checkValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
            areturn
        31: .line 898
      StackMap locals:
      StackMap stack:
            aload 5 /* loc */
            aload 7 /* te */
            putfield sun.tools.tree.UnaryExpression.right:Lsun/tools/tree/Expression;
        32: .line 899
            aload 3 /* vset */
            areturn
        end local 8 // sun.tools.java.ClassDefinition ctxClass
        end local 7 // sun.tools.tree.Expression te
        end local 6 // sun.tools.java.ClassDefinition inner
        end local 5 // sun.tools.tree.UnaryExpression loc
        end local 4 // java.util.Hashtable exp
        end local 3 // sun.tools.tree.Vset vset
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   33     0      this  Lsun/tools/tree/FieldExpression;
            0   33     1       env  Lsun/tools/java/Environment;
            0   33     2       ctx  Lsun/tools/tree/Context;
            0   33     3      vset  Lsun/tools/tree/Vset;
            0   33     4       exp  Ljava/util/Hashtable;
            0   33     5       loc  Lsun/tools/tree/UnaryExpression;
            1   33     6     inner  Lsun/tools/java/ClassDefinition;
            5   33     7        te  Lsun/tools/tree/Expression;
            6   33     8  ctxClass  Lsun/tools/java/ClassDefinition;
            8   13     9     clazz  Lsun/tools/java/ClassDefinition;
           27   28     9         e  Lsun/tools/java/ClassNotFound;
      Exception table:
        from    to  target  type
           6    12      26  Class sun.tools.java.ClassNotFound
          13    23      26  Class sun.tools.java.ClassNotFound
          24    25      26  Class sun.tools.java.ClassNotFound
    MethodParameters:
      Name  Flags
      env   
      ctx   
      vset  
      exp   
      loc   

  public sun.tools.tree.Vset checkLHS(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Vset, java.util.Hashtable);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=5
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
        start local 3 // sun.tools.tree.Vset vset
        start local 4 // java.util.Hashtable exp
         0: .line 907
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            ifnull 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 5 /* hadField */
        start local 5 // boolean hadField
         3: .line 910
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* vset */
            aload 4 /* exp */
            aconst_null
            iconst_1
            invokevirtual sun.tools.tree.FieldExpression.checkCommon:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;Z)Lsun/tools/tree/Vset;
            pop
         4: .line 915
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            ifnull 6
         5: .line 917
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* vset */
            aload 4 /* exp */
            invokespecial sun.tools.tree.UnaryExpression.checkLHS:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
            areturn
         6: .line 920
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            ifnull 18
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isFinal:()Z
            ifeq 18
            iload 5 /* hadField */
            ifne 18
         7: .line 921
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isBlankFinal:()Z
            ifeq 17
         8: .line 922
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isStatic:()Z
            ifeq 12
         9: .line 923
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            ifnull 15
        10: .line 924
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "qualified.static.final.assign"
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;)V
        11: .line 928
            goto 15
        12: .line 929
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            ifnull 15
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.op:I
            bipush 82
            if_icmpeq 15
        13: .line 930
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "bad.qualified.final.assign"
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getName:()Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
        14: .line 933
            aload 3 /* vset */
            areturn
        15: .line 936
      StackMap locals:
      StackMap stack:
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* vset */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokestatic sun.tools.tree.FieldExpression.checkFinalAssign:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;JLsun/tools/java/MemberDefinition;)Lsun/tools/tree/Vset;
            astore 3 /* vset */
        16: .line 937
            goto 18
        17: .line 938
      StackMap locals:
      StackMap stack:
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "assign.to.final"
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
        18: .line 941
      StackMap locals:
      StackMap stack:
            aload 3 /* vset */
            areturn
        end local 5 // boolean hadField
        end local 4 // java.util.Hashtable exp
        end local 3 // sun.tools.tree.Vset vset
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   19     0      this  Lsun/tools/tree/FieldExpression;
            0   19     1       env  Lsun/tools/java/Environment;
            0   19     2       ctx  Lsun/tools/tree/Context;
            0   19     3      vset  Lsun/tools/tree/Vset;
            0   19     4       exp  Ljava/util/Hashtable;
            3   19     5  hadField  Z
    MethodParameters:
      Name  Flags
      env   
      ctx   
      vset  
      exp   

  public sun.tools.tree.Vset checkAssignOp(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Vset, java.util.Hashtable, sun.tools.tree.Expression);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/Expression;)Lsun/tools/tree/Vset;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
        start local 3 // sun.tools.tree.Vset vset
        start local 4 // java.util.Hashtable exp
        start local 5 // sun.tools.tree.Expression outside
         0: .line 951
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* vset */
            aload 4 /* exp */
            aconst_null
            iconst_1
            invokevirtual sun.tools.tree.FieldExpression.checkCommon:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;Z)Lsun/tools/tree/Vset;
            pop
         1: .line 956
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            ifnull 3
         2: .line 957
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* vset */
            aload 4 /* exp */
            invokespecial sun.tools.tree.UnaryExpression.checkLHS:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
            areturn
         3: .line 959
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            ifnull 5
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isFinal:()Z
            ifeq 5
         4: .line 960
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            ldc "assign.to.final"
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
         5: .line 962
      StackMap locals:
      StackMap stack:
            aload 3 /* vset */
            areturn
        end local 5 // sun.tools.tree.Expression outside
        end local 4 // java.util.Hashtable exp
        end local 3 // sun.tools.tree.Vset vset
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lsun/tools/tree/FieldExpression;
            0    6     1      env  Lsun/tools/java/Environment;
            0    6     2      ctx  Lsun/tools/tree/Context;
            0    6     3     vset  Lsun/tools/tree/Vset;
            0    6     4      exp  Ljava/util/Hashtable;
            0    6     5  outside  Lsun/tools/tree/Expression;
    MethodParameters:
         Name  Flags
      env      
      ctx      
      vset     
      exp      
      outside  

  public static sun.tools.tree.Vset checkFinalAssign(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Vset, long, sun.tools.java.MemberDefinition);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;JLsun/tools/java/MemberDefinition;)Lsun/tools/tree/Vset;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=8, args_size=5
        start local 0 // sun.tools.java.Environment env
        start local 1 // sun.tools.tree.Context ctx
        start local 2 // sun.tools.tree.Vset vset
        start local 3 // long where
        start local 5 // sun.tools.java.MemberDefinition field
         0: .line 982
            aload 5 /* field */
            invokevirtual sun.tools.java.MemberDefinition.isBlankFinal:()Z
            ifeq 9
         1: .line 983
            aload 5 /* field */
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            aload 1 /* ctx */
            getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            if_acmpne 9
         2: .line 984
            aload 1 /* ctx */
            aload 5 /* field */
            invokevirtual sun.tools.tree.Context.getFieldNumber:(Lsun/tools/java/MemberDefinition;)I
            istore 6 /* number */
        start local 6 // int number
         3: .line 985
            iload 6 /* number */
            iflt 6
            aload 2 /* vset */
            iload 6 /* number */
            invokevirtual sun.tools.tree.Vset.testVarUnassigned:(I)Z
            ifeq 6
         4: .line 987
            aload 2 /* vset */
            iload 6 /* number */
            invokevirtual sun.tools.tree.Vset.addVar:(I)Lsun/tools/tree/Vset;
            astore 2 /* vset */
         5: .line 988
            goto 11
         6: .line 990
      StackMap locals: int
      StackMap stack:
            aload 5 /* field */
            invokevirtual sun.tools.java.MemberDefinition.getName:()Lsun/tools/java/Identifier;
            astore 7 /* id */
        start local 7 // sun.tools.java.Identifier id
         7: .line 991
            aload 0 /* env */
            lload 3 /* where */
            ldc "assign.to.blank.final"
            aload 7 /* id */
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
        end local 7 // sun.tools.java.Identifier id
        end local 6 // int number
         8: .line 993
            goto 11
         9: .line 995
      StackMap locals:
      StackMap stack:
            aload 5 /* field */
            invokevirtual sun.tools.java.MemberDefinition.getName:()Lsun/tools/java/Identifier;
            astore 6 /* id */
        start local 6 // sun.tools.java.Identifier id
        10: .line 996
            aload 0 /* env */
            lload 3 /* where */
            ldc "assign.to.final"
            aload 6 /* id */
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
        end local 6 // sun.tools.java.Identifier id
        11: .line 998
      StackMap locals:
      StackMap stack:
            aload 2 /* vset */
            areturn
        end local 5 // sun.tools.java.MemberDefinition field
        end local 3 // long where
        end local 2 // sun.tools.tree.Vset vset
        end local 1 // sun.tools.tree.Context ctx
        end local 0 // sun.tools.java.Environment env
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   12     0     env  Lsun/tools/java/Environment;
            0   12     1     ctx  Lsun/tools/tree/Context;
            0   12     2    vset  Lsun/tools/tree/Vset;
            0   12     3   where  J
            0   12     5   field  Lsun/tools/java/MemberDefinition;
            3    8     6  number  I
            7    8     7      id  Lsun/tools/java/Identifier;
           10   11     6      id  Lsun/tools/java/Identifier;
    MethodParameters:
       Name  Flags
      env    
      ctx    
      vset   
      where  
      field  

  private static sun.tools.java.MemberDefinition getClassLiteralCache(sun.tools.java.Environment, sun.tools.tree.Context, java.lang.String, sun.tools.java.ClassDefinition);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Ljava/lang/String;Lsun/tools/java/ClassDefinition;)Lsun/tools/java/MemberDefinition;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=12, locals=7, args_size=4
        start local 0 // sun.tools.java.Environment env
        start local 1 // sun.tools.tree.Context ctx
        start local 2 // java.lang.String className
        start local 3 // sun.tools.java.ClassDefinition c
         0: .line 1013
            aload 2 /* className */
            ldc "["
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 3
         1: .line 1014
            new java.lang.StringBuilder
            dup
            ldc "class$"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* className */
            bipush 46
            bipush 36
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* lname */
        start local 4 // java.lang.String lname
         2: .line 1015
            goto 8
        end local 4 // java.lang.String lname
         3: .line 1016
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "array$"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* className */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* lname */
        start local 4 // java.lang.String lname
         4: .line 1017
            aload 4 /* lname */
            bipush 91
            bipush 36
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            astore 4 /* lname */
         5: .line 1018
            aload 2 /* className */
            ldc ";"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 8
         6: .line 1020
            aload 4 /* lname */
            iconst_0
            aload 4 /* lname */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 4 /* lname */
         7: .line 1021
            aload 4 /* lname */
            bipush 46
            bipush 36
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            astore 4 /* lname */
         8: .line 1025
      StackMap locals: java.lang.String
      StackMap stack:
            aload 4 /* lname */
            invokestatic sun.tools.java.Identifier.lookup:(Ljava/lang/String;)Lsun/tools/java/Identifier;
            astore 5 /* fname */
        start local 5 // sun.tools.java.Identifier fname
         9: .line 1035
            aload 3 /* c */
            aload 0 /* env */
            aload 5 /* fname */
            aload 3 /* c */
            invokevirtual sun.tools.java.ClassDefinition.getVariable:(Lsun/tools/java/Environment;Lsun/tools/java/Identifier;Lsun/tools/java/ClassDefinition;)Lsun/tools/java/MemberDefinition;
            astore 6 /* cfld */
        start local 6 // sun.tools.java.MemberDefinition cfld
        10: .line 1036
            goto 15
        end local 6 // sun.tools.java.MemberDefinition cfld
      StackMap locals: sun.tools.java.Environment sun.tools.tree.Context java.lang.String sun.tools.java.ClassDefinition java.lang.String sun.tools.java.Identifier
      StackMap stack: sun.tools.java.ClassNotFound
        11: pop
        12: .line 1037
            aconst_null
            areturn
        13: .line 1038
      StackMap locals:
      StackMap stack: sun.tools.java.AmbiguousMember
            pop
        14: .line 1039
            aconst_null
            areturn
        start local 6 // sun.tools.java.MemberDefinition cfld
        15: .line 1047
      StackMap locals: sun.tools.java.MemberDefinition
      StackMap stack:
            aload 6 /* cfld */
            ifnull 17
            aload 6 /* cfld */
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            aload 3 /* c */
            if_acmpne 17
        16: .line 1048
            aload 6 /* cfld */
            areturn
        17: .line 1055
      StackMap locals:
      StackMap stack:
            aload 0 /* env */
            aload 0 /* env */
            aload 3 /* c */
            invokevirtual sun.tools.java.ClassDefinition.getWhere:()J
        18: .line 1056
            aload 3 /* c */
            aconst_null
        19: .line 1057
            ldc 524296
        20: .line 1058
            getstatic sun.tools.java.Type.tClassDesc:Lsun/tools/java/Type;
            aload 5 /* fname */
        21: .line 1059
            aconst_null
            aconst_null
            aconst_null
        22: .line 1055
            invokevirtual sun.tools.java.Environment.makeMemberDefinition:(Lsun/tools/java/Environment;JLsun/tools/java/ClassDefinition;Ljava/lang/String;ILsun/tools/java/Type;Lsun/tools/java/Identifier;[Lsun/tools/java/IdentifierToken;[Lsun/tools/java/IdentifierToken;Ljava/lang/Object;)Lsun/tools/java/MemberDefinition;
            areturn
        end local 6 // sun.tools.java.MemberDefinition cfld
        end local 5 // sun.tools.java.Identifier fname
        end local 4 // java.lang.String lname
        end local 3 // sun.tools.java.ClassDefinition c
        end local 2 // java.lang.String className
        end local 1 // sun.tools.tree.Context ctx
        end local 0 // sun.tools.java.Environment env
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   23     0        env  Lsun/tools/java/Environment;
            0   23     1        ctx  Lsun/tools/tree/Context;
            0   23     2  className  Ljava/lang/String;
            0   23     3          c  Lsun/tools/java/ClassDefinition;
            2    3     4      lname  Ljava/lang/String;
            4   23     4      lname  Ljava/lang/String;
            9   23     5      fname  Lsun/tools/java/Identifier;
           10   11     6       cfld  Lsun/tools/java/MemberDefinition;
           15   23     6       cfld  Lsun/tools/java/MemberDefinition;
      Exception table:
        from    to  target  type
           9    10      11  Class sun.tools.java.ClassNotFound
           9    10      13  Class sun.tools.java.AmbiguousMember
    MethodParameters:
           Name  Flags
      env        
      ctx        
      className  
      c          

  private sun.tools.tree.Expression makeClassLiteralCacheRef(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.java.MemberDefinition, sun.tools.java.MemberDefinition, java.lang.String);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/MemberDefinition;Lsun/tools/java/MemberDefinition;Ljava/lang/String;)Lsun/tools/tree/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=13, args_size=6
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
        start local 3 // sun.tools.java.MemberDefinition lookup
        start local 4 // sun.tools.java.MemberDefinition cfld
        start local 5 // java.lang.String className
         0: .line 1066
            new sun.tools.tree.TypeExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
         1: .line 1067
            aload 4 /* cfld */
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
         2: .line 1068
            invokevirtual sun.tools.java.ClassDefinition.getType:()Lsun/tools/java/Type;
         3: .line 1066
            invokespecial sun.tools.tree.TypeExpression.<init>:(JLsun/tools/java/Type;)V
            astore 6 /* ccls */
        start local 6 // sun.tools.tree.Expression ccls
         4: .line 1069
            new sun.tools.tree.FieldExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 6 /* ccls */
            aload 4 /* cfld */
            invokespecial sun.tools.tree.FieldExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/java/MemberDefinition;)V
            astore 7 /* cache */
        start local 7 // sun.tools.tree.Expression cache
         5: .line 1071
            new sun.tools.tree.NotEqualExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 7 /* cache */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.Expression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
         6: .line 1072
            new sun.tools.tree.NullExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            invokespecial sun.tools.tree.NullExpression.<init>:(J)V
         7: .line 1071
            invokespecial sun.tools.tree.NotEqualExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
         8: .line 1070
            astore 8 /* cacheOK */
        start local 8 // sun.tools.tree.Expression cacheOK
         9: .line 1074
            new sun.tools.tree.TypeExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 3 /* lookup */
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            invokevirtual sun.tools.java.ClassDefinition.getType:()Lsun/tools/java/Type;
            invokespecial sun.tools.tree.TypeExpression.<init>:(JLsun/tools/java/Type;)V
        10: .line 1073
            astore 9 /* lcls */
        start local 9 // sun.tools.tree.Expression lcls
        11: .line 1075
            new sun.tools.tree.StringExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 5 /* className */
            invokespecial sun.tools.tree.StringExpression.<init>:(JLjava/lang/String;)V
            astore 10 /* name */
        start local 10 // sun.tools.tree.Expression name
        12: .line 1076
            iconst_1
            anewarray sun.tools.tree.Expression
            dup
            iconst_0
            aload 10 /* name */
            aastore
            astore 11 /* namearg */
        start local 11 // sun.tools.tree.Expression[] namearg
        13: .line 1077
            new sun.tools.tree.MethodExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 9 /* lcls */
        14: .line 1078
            aload 3 /* lookup */
            aload 11 /* namearg */
        15: .line 1077
            invokespecial sun.tools.tree.MethodExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/java/MemberDefinition;[Lsun/tools/tree/Expression;)V
            astore 12 /* setCache */
        start local 12 // sun.tools.tree.Expression setCache
        16: .line 1079
            new sun.tools.tree.AssignExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 7 /* cache */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.Expression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
        17: .line 1080
            aload 12 /* setCache */
        18: .line 1079
            invokespecial sun.tools.tree.AssignExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
            astore 12 /* setCache */
        19: .line 1081
            new sun.tools.tree.ConditionalExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 8 /* cacheOK */
            aload 7 /* cache */
            aload 12 /* setCache */
            invokespecial sun.tools.tree.ConditionalExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
            areturn
        end local 12 // sun.tools.tree.Expression setCache
        end local 11 // sun.tools.tree.Expression[] namearg
        end local 10 // sun.tools.tree.Expression name
        end local 9 // sun.tools.tree.Expression lcls
        end local 8 // sun.tools.tree.Expression cacheOK
        end local 7 // sun.tools.tree.Expression cache
        end local 6 // sun.tools.tree.Expression ccls
        end local 5 // java.lang.String className
        end local 4 // sun.tools.java.MemberDefinition cfld
        end local 3 // sun.tools.java.MemberDefinition lookup
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   20     0       this  Lsun/tools/tree/FieldExpression;
            0   20     1        env  Lsun/tools/java/Environment;
            0   20     2        ctx  Lsun/tools/tree/Context;
            0   20     3     lookup  Lsun/tools/java/MemberDefinition;
            0   20     4       cfld  Lsun/tools/java/MemberDefinition;
            0   20     5  className  Ljava/lang/String;
            4   20     6       ccls  Lsun/tools/tree/Expression;
            5   20     7      cache  Lsun/tools/tree/Expression;
            9   20     8    cacheOK  Lsun/tools/tree/Expression;
           11   20     9       lcls  Lsun/tools/tree/Expression;
           12   20    10       name  Lsun/tools/tree/Expression;
           13   20    11    namearg  [Lsun/tools/tree/Expression;
           16   20    12   setCache  Lsun/tools/tree/Expression;
    MethodParameters:
           Name  Flags
      env        
      ctx        
      lookup     
      cfld       
      className  

  private sun.tools.tree.Expression makeClassLiteralInlineRef(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.java.MemberDefinition, java.lang.String);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/MemberDefinition;Ljava/lang/String;)Lsun/tools/tree/Expression;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=9, args_size=5
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
        start local 3 // sun.tools.java.MemberDefinition lookup
        start local 4 // java.lang.String className
         0: .line 1088
            new sun.tools.tree.TypeExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 3 /* lookup */
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            invokevirtual sun.tools.java.ClassDefinition.getType:()Lsun/tools/java/Type;
            invokespecial sun.tools.tree.TypeExpression.<init>:(JLsun/tools/java/Type;)V
         1: .line 1087
            astore 5 /* lcls */
        start local 5 // sun.tools.tree.Expression lcls
         2: .line 1089
            new sun.tools.tree.StringExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 4 /* className */
            invokespecial sun.tools.tree.StringExpression.<init>:(JLjava/lang/String;)V
            astore 6 /* name */
        start local 6 // sun.tools.tree.Expression name
         3: .line 1090
            iconst_1
            anewarray sun.tools.tree.Expression
            dup
            iconst_0
            aload 6 /* name */
            aastore
            astore 7 /* namearg */
        start local 7 // sun.tools.tree.Expression[] namearg
         4: .line 1091
            new sun.tools.tree.MethodExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 5 /* lcls */
         5: .line 1092
            aload 3 /* lookup */
            aload 7 /* namearg */
         6: .line 1091
            invokespecial sun.tools.tree.MethodExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/java/MemberDefinition;[Lsun/tools/tree/Expression;)V
            astore 8 /* getClass */
        start local 8 // sun.tools.tree.Expression getClass
         7: .line 1093
            aload 8 /* getClass */
            areturn
        end local 8 // sun.tools.tree.Expression getClass
        end local 7 // sun.tools.tree.Expression[] namearg
        end local 6 // sun.tools.tree.Expression name
        end local 5 // sun.tools.tree.Expression lcls
        end local 4 // java.lang.String className
        end local 3 // sun.tools.java.MemberDefinition lookup
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lsun/tools/tree/FieldExpression;
            0    8     1        env  Lsun/tools/java/Environment;
            0    8     2        ctx  Lsun/tools/tree/Context;
            0    8     3     lookup  Lsun/tools/java/MemberDefinition;
            0    8     4  className  Ljava/lang/String;
            2    8     5       lcls  Lsun/tools/tree/Expression;
            3    8     6       name  Lsun/tools/tree/Expression;
            4    8     7    namearg  [Lsun/tools/tree/Expression;
            7    8     8   getClass  Lsun/tools/tree/Expression;
    MethodParameters:
           Name  Flags
      env        
      ctx        
      lookup     
      className  

  public boolean isConstant();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.tools.tree.FieldExpression this
         0: .line 1101
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            ifnull 2
         1: .line 1102
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            invokevirtual sun.tools.tree.Expression.isConstant:()Z
            ireturn
         2: .line 1103
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            ifnull 6
         3: .line 1104
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            ifnull 5
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            instanceof sun.tools.tree.TypeExpression
            ifne 5
         4: .line 1105
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.op:I
            bipush 82
            if_icmpne 6
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.where:J
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            lcmp
            ifne 6
         5: .line 1106
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isConstant:()Z
            ireturn
         6: .line 1108
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/tools/tree/FieldExpression;

  public sun.tools.tree.Expression inline(sun.tools.java.Environment, sun.tools.tree.Context);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
         0: .line 1115
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            ifnull 2
         1: .line 1116
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            aload 1 /* env */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.Expression.inline:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
            areturn
         2: .line 1126
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.FieldExpression.inlineValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
            astore 3 /* e */
        start local 3 // sun.tools.tree.Expression e
         3: .line 1127
            aload 3 /* e */
            instanceof sun.tools.tree.FieldExpression
            ifeq 7
         4: .line 1128
            aload 3 /* e */
            checkcast sun.tools.tree.FieldExpression
            astore 4 /* fe */
        start local 4 // sun.tools.tree.FieldExpression fe
         5: .line 1129
            aload 4 /* fe */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            ifnull 7
            aload 4 /* fe */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.op:I
            bipush 82
            if_icmpne 7
         6: .line 1130
            aconst_null
            areturn
        end local 4 // sun.tools.tree.FieldExpression fe
         7: .line 1136
      StackMap locals: sun.tools.tree.Expression
      StackMap stack:
            aload 3 /* e */
            areturn
        end local 3 // sun.tools.tree.Expression e
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lsun/tools/tree/FieldExpression;
            0    8     1   env  Lsun/tools/java/Environment;
            0    8     2   ctx  Lsun/tools/tree/Context;
            3    8     3     e  Lsun/tools/tree/Expression;
            5    7     4    fe  Lsun/tools/tree/FieldExpression;
    MethodParameters:
      Name  Flags
      env   
      ctx   

  public sun.tools.tree.Expression inlineValue(sun.tools.java.Environment, sun.tools.tree.Context);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
         0: .line 1139
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            ifnull 2
         1: .line 1140
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            aload 1 /* env */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.Expression.inlineValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
            areturn
         2: .line 1142
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            ifnonnull 5
         3: .line 1143
            aload 0 /* this */
         4: areturn
         5: .line 1146
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isFinal:()Z
            ifeq 12
         6: .line 1147
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            aload 1 /* env */
            invokevirtual sun.tools.java.MemberDefinition.getValue:(Lsun/tools/java/Environment;)Lsun/tools/tree/Node;
            checkcast sun.tools.tree.Expression
            astore 3 /* e */
        start local 3 // sun.tools.tree.Expression e
         7: .line 1148
            aload 3 /* e */
            ifnull 12
            aload 3 /* e */
            invokevirtual sun.tools.tree.Expression.isConstant:()Z
            ifeq 12
         8: .line 1150
            aload 3 /* e */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.Expression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
            astore 3 /* e */
         9: .line 1151
            aload 3 /* e */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            putfield sun.tools.tree.Expression.where:J
        10: .line 1152
            new sun.tools.tree.CommaExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            aload 3 /* e */
            invokespecial sun.tools.tree.CommaExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
            aload 1 /* env */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.CommaExpression.inlineValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
        11: areturn
        end local 3 // sun.tools.tree.Expression e
        12: .line 1156
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            ifnull 20
        13: .line 1157
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isStatic:()Z
            ifeq 19
        14: .line 1158
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            aload 1 /* env */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.Expression.inline:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
            astore 3 /* e */
        start local 3 // sun.tools.tree.Expression e
        15: .line 1159
            aload 0 /* this */
            aconst_null
            putfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
        16: .line 1160
            aload 3 /* e */
            ifnull 20
        17: .line 1161
            new sun.tools.tree.CommaExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 3 /* e */
            aload 0 /* this */
            invokespecial sun.tools.tree.CommaExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
        18: areturn
        end local 3 // sun.tools.tree.Expression e
        19: .line 1164
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            aload 1 /* env */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.Expression.inlineValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
            putfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
        20: .line 1167
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
        21: areturn
        22: .line 1169
      StackMap locals:
      StackMap stack: sun.tools.java.ClassNotFound
            astore 3 /* e */
        start local 3 // sun.tools.java.ClassNotFound e
        23: .line 1170
            new sun.tools.java.CompilerError
            dup
            aload 3 /* e */
            invokespecial sun.tools.java.CompilerError.<init>:(Ljava/lang/Exception;)V
            athrow
        end local 3 // sun.tools.java.ClassNotFound e
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   24     0  this  Lsun/tools/tree/FieldExpression;
            0   24     1   env  Lsun/tools/java/Environment;
            0   24     2   ctx  Lsun/tools/tree/Context;
            7   12     3     e  Lsun/tools/tree/Expression;
           15   19     3     e  Lsun/tools/tree/Expression;
           23   24     3     e  Lsun/tools/java/ClassNotFound;
      Exception table:
        from    to  target  type
           2     4      22  Class sun.tools.java.ClassNotFound
           5    11      22  Class sun.tools.java.ClassNotFound
          12    18      22  Class sun.tools.java.ClassNotFound
          19    21      22  Class sun.tools.java.ClassNotFound
    MethodParameters:
      Name  Flags
      env   
      ctx   

  public sun.tools.tree.Expression inlineLHS(sun.tools.java.Environment, sun.tools.tree.Context);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
         0: .line 1174
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            ifnull 2
         1: .line 1175
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            aload 1 /* env */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.Expression.inlineLHS:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
            areturn
         2: .line 1176
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            ifnull 9
         3: .line 1177
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isStatic:()Z
            ifeq 8
         4: .line 1178
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            aload 1 /* env */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.Expression.inline:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
            astore 3 /* e */
        start local 3 // sun.tools.tree.Expression e
         5: .line 1179
            aload 0 /* this */
            aconst_null
            putfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
         6: .line 1180
            aload 3 /* e */
            ifnull 9
         7: .line 1181
            new sun.tools.tree.CommaExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            aload 3 /* e */
            aload 0 /* this */
            invokespecial sun.tools.tree.CommaExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
            areturn
        end local 3 // sun.tools.tree.Expression e
         8: .line 1184
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            aload 1 /* env */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.Expression.inlineValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
            putfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
         9: .line 1187
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lsun/tools/tree/FieldExpression;
            0   10     1   env  Lsun/tools/java/Environment;
            0   10     2   ctx  Lsun/tools/tree/Context;
            5    8     3     e  Lsun/tools/tree/Expression;
    MethodParameters:
      Name  Flags
      env   
      ctx   

  public sun.tools.tree.Expression copyInline(sun.tools.tree.Context);
    descriptor: (Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.tree.Context ctx
         0: .line 1191
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            ifnull 2
         1: .line 1192
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            aload 1 /* ctx */
            invokevirtual sun.tools.tree.Expression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
            areturn
         2: .line 1193
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* ctx */
            invokespecial sun.tools.tree.UnaryExpression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
            areturn
        end local 1 // sun.tools.tree.Context ctx
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/tools/tree/FieldExpression;
            0    3     1   ctx  Lsun/tools/tree/Context;
    MethodParameters:
      Name  Flags
      ctx   

  public int costInline(int, sun.tools.java.Environment, sun.tools.tree.Context);
    descriptor: (ILsun/tools/java/Environment;Lsun/tools/tree/Context;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // int thresh
        start local 2 // sun.tools.java.Environment env
        start local 3 // sun.tools.tree.Context ctx
         0: .line 1200
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            ifnull 2
         1: .line 1201
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            iload 1 /* thresh */
            aload 2 /* env */
            aload 3 /* ctx */
            invokevirtual sun.tools.tree.Expression.costInline:(ILsun/tools/java/Environment;Lsun/tools/tree/Context;)I
            ireturn
         2: .line 1202
      StackMap locals:
      StackMap stack:
            aload 3 /* ctx */
            ifnonnull 6
         3: .line 1203
            iconst_3
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            ifnonnull 4
            iconst_0
            goto 5
         4: .line 1204
      StackMap locals:
      StackMap stack: int
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            iload 1 /* thresh */
            aload 2 /* env */
            aload 3 /* ctx */
            invokevirtual sun.tools.tree.Expression.costInline:(ILsun/tools/java/Environment;Lsun/tools/tree/Context;)I
         5: .line 1203
      StackMap locals: sun.tools.tree.FieldExpression int sun.tools.java.Environment sun.tools.tree.Context
      StackMap stack: int int
            iadd
            ireturn
         6: .line 1207
      StackMap locals:
      StackMap stack:
            aload 3 /* ctx */
            getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            astore 4 /* ctxClass */
        start local 4 // sun.tools.java.ClassDefinition ctxClass
         7: .line 1211
            aload 4 /* ctxClass */
            aload 2 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
            invokevirtual sun.tools.java.ClassDefinition.permitInlinedAccess:(Lsun/tools/java/Environment;Lsun/tools/java/ClassDeclaration;)Z
            ifeq 16
         8: .line 1212
            aload 4 /* ctxClass */
            aload 2 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.ClassDefinition.permitInlinedAccess:(Lsun/tools/java/Environment;Lsun/tools/java/MemberDefinition;)Z
            ifeq 16
         9: .line 1213
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            ifnonnull 11
        10: .line 1214
            iconst_3
            ireturn
        11: .line 1216
      StackMap locals: sun.tools.java.ClassDefinition
      StackMap stack:
            aload 2 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Environment.getClassDeclaration:(Lsun/tools/java/Type;)Lsun/tools/java/ClassDeclaration;
            astore 5 /* rt */
        start local 5 // sun.tools.java.ClassDeclaration rt
        12: .line 1217
            aload 4 /* ctxClass */
            aload 2 /* env */
            aload 5 /* rt */
            invokevirtual sun.tools.java.ClassDefinition.permitInlinedAccess:(Lsun/tools/java/Environment;Lsun/tools/java/ClassDeclaration;)Z
            ifeq 16
        13: .line 1218
            iconst_3
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            iload 1 /* thresh */
            aload 2 /* env */
            aload 3 /* ctx */
            invokevirtual sun.tools.tree.Expression.costInline:(ILsun/tools/java/Environment;Lsun/tools/tree/Context;)I
            iadd
        14: ireturn
        end local 5 // sun.tools.java.ClassDeclaration rt
        15: .line 1222
      StackMap locals:
      StackMap stack: sun.tools.java.ClassNotFound
            pop
        16: .line 1224
      StackMap locals:
      StackMap stack:
            iload 1 /* thresh */
            ireturn
        end local 4 // sun.tools.java.ClassDefinition ctxClass
        end local 3 // sun.tools.tree.Context ctx
        end local 2 // sun.tools.java.Environment env
        end local 1 // int thresh
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   17     0      this  Lsun/tools/tree/FieldExpression;
            0   17     1    thresh  I
            0   17     2       env  Lsun/tools/java/Environment;
            0   17     3       ctx  Lsun/tools/tree/Context;
            7   17     4  ctxClass  Lsun/tools/java/ClassDefinition;
           12   15     5        rt  Lsun/tools/java/ClassDeclaration;
      Exception table:
        from    to  target  type
           7    10      15  Class sun.tools.java.ClassNotFound
          11    14      15  Class sun.tools.java.ClassNotFound
    MethodParameters:
        Name  Flags
      thresh  
      env     
      ctx     

  int codeLValue(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.asm.Assembler);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)I
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
        start local 3 // sun.tools.asm.Assembler asm
         0: .line 1231
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            ifnull 2
         1: .line 1232
            new sun.tools.java.CompilerError
            dup
            ldc "codeLValue"
            invokespecial sun.tools.java.CompilerError.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1233
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isStatic:()Z
            ifeq 7
         3: .line 1234
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            ifnull 6
         4: .line 1235
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* asm */
            invokevirtual sun.tools.tree.Expression.code:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)V
         5: .line 1236
            iconst_1
            ireturn
         6: .line 1238
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         7: .line 1240
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* asm */
            invokevirtual sun.tools.tree.Expression.codeValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)V
         8: .line 1241
            iconst_1
            ireturn
        end local 3 // sun.tools.asm.Assembler asm
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lsun/tools/tree/FieldExpression;
            0    9     1   env  Lsun/tools/java/Environment;
            0    9     2   ctx  Lsun/tools/tree/Context;
            0    9     3   asm  Lsun/tools/asm/Assembler;
    MethodParameters:
      Name  Flags
      env   
      ctx   
      asm   

  void codeLoad(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.asm.Assembler);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
        start local 3 // sun.tools.asm.Assembler asm
         0: .line 1244
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            ifnonnull 2
         1: .line 1245
            new sun.tools.java.CompilerError
            dup
            ldc "should not be null"
            invokespecial sun.tools.java.CompilerError.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1247
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isStatic:()Z
            ifeq 5
         3: .line 1248
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            sipush 178
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
         4: .line 1249
            goto 6
         5: .line 1250
      StackMap locals:
      StackMap stack:
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            sipush 180
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
         6: .line 1252
      StackMap locals:
      StackMap stack:
            return
        end local 3 // sun.tools.asm.Assembler asm
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/tools/tree/FieldExpression;
            0    7     1   env  Lsun/tools/java/Environment;
            0    7     2   ctx  Lsun/tools/tree/Context;
            0    7     3   asm  Lsun/tools/asm/Assembler;
    MethodParameters:
      Name  Flags
      env   
      ctx   
      asm   

  void codeStore(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.asm.Assembler);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
        start local 3 // sun.tools.asm.Assembler asm
         0: .line 1254
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.java.MemberDefinition.isStatic:()Z
            ifeq 3
         1: .line 1255
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            sipush 179
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
         2: .line 1256
            goto 4
         3: .line 1257
      StackMap locals:
      StackMap stack:
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.where:J
            sipush 181
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
            invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
         4: .line 1259
      StackMap locals:
      StackMap stack:
            return
        end local 3 // sun.tools.asm.Assembler asm
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lsun/tools/tree/FieldExpression;
            0    5     1   env  Lsun/tools/java/Environment;
            0    5     2   ctx  Lsun/tools/tree/Context;
            0    5     3   asm  Lsun/tools/asm/Assembler;
    MethodParameters:
      Name  Flags
      env   
      ctx   
      asm   

  public void codeValue(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.asm.Assembler);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
        start local 3 // sun.tools.asm.Assembler asm
         0: .line 1262
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* asm */
            invokevirtual sun.tools.tree.FieldExpression.codeLValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)I
            pop
         1: .line 1263
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* asm */
            invokevirtual sun.tools.tree.FieldExpression.codeLoad:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)V
         2: .line 1264
            return
        end local 3 // sun.tools.asm.Assembler asm
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/tools/tree/FieldExpression;
            0    3     1   env  Lsun/tools/java/Environment;
            0    3     2   ctx  Lsun/tools/tree/Context;
            0    3     3   asm  Lsun/tools/asm/Assembler;
    MethodParameters:
      Name  Flags
      env   
      ctx   
      asm   

  public void print(java.io.PrintStream);
    descriptor: (Ljava/io/PrintStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // sun.tools.tree.FieldExpression this
        start local 1 // java.io.PrintStream out
         0: .line 1270
            aload 1 /* out */
            ldc "("
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
         1: .line 1271
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            ifnull 4
         2: .line 1272
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
            aload 1 /* out */
            invokevirtual sun.tools.tree.Expression.print:(Ljava/io/PrintStream;)V
         3: .line 1273
            goto 5
         4: .line 1274
      StackMap locals:
      StackMap stack:
            aload 1 /* out */
            ldc "<empty>"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
         5: .line 1276
      StackMap locals:
      StackMap stack:
            aload 1 /* out */
            new java.lang.StringBuilder
            dup
            ldc "."
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
         6: .line 1277
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            ifnull 9
         7: .line 1278
            aload 1 /* out */
            ldc "/IMPL="
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
         8: .line 1279
            aload 0 /* this */
            getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
            aload 1 /* out */
            invokevirtual sun.tools.tree.Expression.print:(Ljava/io/PrintStream;)V
         9: .line 1281
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.io.PrintStream out
        end local 0 // sun.tools.tree.FieldExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lsun/tools/tree/FieldExpression;
            0   10     1   out  Ljava/io/PrintStream;
    MethodParameters:
      Name  Flags
      out   
}
SourceFile: "FieldExpression.java"