1 /*
   2  * Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.
   8  *
   9  * This code is distributed in the hope that it will be useful, but WITHOUT
  10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12  * version 2 for more details (a copy is included in the LICENSE file that
  13  * accompanied this code).
  14  *
  15  * You should have received a copy of the GNU General Public License version
  16  * 2 along with this work; if not, write to the Free Software Foundation,
  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  */
  23 
  24 // Generated from the source in TestInvokeHierarchy.java
  25 // with priv_invoke access modifier changed to private
  26 
  27 class ExternalSub {
  28   0xCAFEBABE;
  29   0; // minor version
  30   55; // version
  31   [] { // Constant Pool
  32     ; // first element is empty
  33     Method #4 #16; // #1    
  34     class #17; // #2    
  35     String #18; // #3    
  36     class #20; // #4    
  37     Utf8 "ID"; // #5    
  38     Utf8 "Ljava/lang/String;"; // #6    
  39     Utf8 "ConstantValue"; // #7    
  40     Utf8 "<init>"; // #8    
  41     Utf8 "()V"; // #9    
  42     Utf8 "Code"; // #10    
  43     Utf8 "LineNumberTable"; // #11    
  44     Utf8 "priv_invoke"; // #12    
  45     Utf8 "()Ljava/lang/String;"; // #13    
  46     Utf8 "SourceFile"; // #14    
  47     Utf8 "TestInvokeHierarchy.java"; // #15    
  48     NameAndType #8 #9; // #16    
  49     Utf8 "ExternalSub"; // #17    
  50     Utf8 "ExternalSub::priv_invoke"; // #18    
  51     class #23; // #19    
  52     Utf8 "TestInvokeHierarchy$NestedC"; // #20    
  53     Utf8 "NestedC"; // #21    
  54     Utf8 "InnerClasses"; // #22    
  55     Utf8 "TestInvokeHierarchy"; // #23    
  56   } // Constant Pool
  57 
  58   0x0020; // access
  59   #2;// this_cpx
  60   #4;// super_cpx
  61 
  62   [] { // Interfaces
  63   } // Interfaces
  64 
  65   [] { // fields
  66     { // Member
  67       0x0018; // access
  68       #5; // name_cpx
  69       #6; // sig_cpx
  70       [] { // Attributes
  71         Attr(#7) { // ConstantValue
  72           #3;
  73         } // end ConstantValue
  74       } // Attributes
  75     } // Member
  76   } // fields
  77 
  78   [] { // methods
  79     { // Member
  80       0x0000; // access
  81       #8; // name_cpx
  82       #9; // sig_cpx
  83       [] { // Attributes
  84         Attr(#10) { // Code
  85           1; // max_stack
  86           1; // max_locals
  87           Bytes[]{
  88             0x2AB70001B1;
  89           };
  90           [] { // Traps
  91           } // end Traps
  92           [] { // Attributes
  93             Attr(#11) { // LineNumberTable
  94               [] { // LineNumberTable
  95                 0  129;
  96               }
  97             } // end LineNumberTable
  98           } // Attributes
  99         } // end Code
 100       } // Attributes
 101     } // Member
 102     ;
 103     { // Member
 104       0x0002; // access - private
 105       #12; // name_cpx
 106       #13; // sig_cpx
 107       [] { // Attributes
 108         Attr(#10) { // Code
 109           1; // max_stack
 110           1; // max_locals
 111           Bytes[]{
 112             0x1203B0;
 113           };
 114           [] { // Traps
 115           } // end Traps
 116           [] { // Attributes
 117             Attr(#11) { // LineNumberTable
 118               [] { // LineNumberTable
 119                 0  132;
 120               }
 121             } // end LineNumberTable
 122           } // Attributes
 123         } // end Code
 124       } // Attributes
 125     } // Member
 126   } // methods
 127 
 128   [] { // Attributes
 129     Attr(#14) { // SourceFile
 130       #15;
 131     } // end SourceFile
 132     ;
 133     Attr(#22) { // InnerClasses
 134       [] { // InnerClasses
 135         #4 #19 #21 8;
 136       }
 137     } // end InnerClasses
 138   } // Attributes
 139 } // end class ExternalSub