1 /* 2 * Copyright (c) 2017, 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 // NestHost attribute refers to non-instance class 25 26 class TestNestmateMembership$CallerNotInstanceHost { 27 0xCAFEBABE; 28 0; // minor version 29 53; // version 30 [] { // Constant Pool 31 ; // first element is empty 32 Field #36 #37; // #1 33 String #38; // #2 34 Method #39 #40; // #3 35 Method #7 #41; // #4 36 Method #9 #41; // #5 37 Method #14 #42; // #6 38 class #43; // #7 39 Method #7 #42; // #8 40 class #46; // #9 41 Method #9 #42; // #10 42 Field #7 #48; // #11 43 Field #9 #48; // #12 44 class #49; // #13 45 class #51; // #14 46 Utf8 "oa"; // #15 47 Utf8 "[LInvalidNestHost;"; // #16 48 Utf8 "f"; // #17 49 Utf8 "I"; // #18 50 Utf8 "m"; // #19 51 Utf8 "()V"; // #20 52 Utf8 "Code"; // #21 53 Utf8 "LineNumberTable"; // #22 54 Utf8 "invokeTarget"; // #23 55 Utf8 "invokeTargetNotInstanceHost"; // #24 56 Utf8 "<init>"; // #25 57 Utf8 "newTarget"; // #26 58 Utf8 "newTargetNotInstanceHost"; // #27 59 Utf8 "getFieldTarget"; // #28 60 Utf8 "getFieldTargetNotInstanceHost"; // #29 61 Utf8 "putFieldTarget"; // #30 62 Utf8 "putFieldTargetNotInstanceHost"; // #31 63 Utf8 "SourceFile"; // #32 64 Utf8 "TestNestmateMembership.java"; // #33 65 Utf8 "NestHost"; // #34 66 class #52; // #35 67 class #53; // #36 68 NameAndType #54 #55; // #37 69 Utf8 "CallerNotInstanceHost.m() - java version"; // #38 70 class #56; // #39 71 NameAndType #57 #58; // #40 72 NameAndType #19 #20; // #41 73 NameAndType #25 #20; // #42 74 Utf8 "TestNestmateMembership$Target"; // #43 75 Utf8 "Target"; // #44 76 Utf8 "InnerClasses"; // #45 77 Utf8 "TestNestmateMembership$TargetNotInstanceHost"; // #46 78 Utf8 "TargetNotInstanceHost"; // #47 79 NameAndType #17 #18; // #48 80 Utf8 "TestNestmateMembership$CallerNotInstanceHost"; // #49 81 Utf8 "CallerNotInstanceHost"; // #50 82 Utf8 "java/lang/Object"; // #51 83 Utf8 "TestNestmateMembership"; // #52 84 Utf8 "java/lang/System"; // #53 85 Utf8 "out"; // #54 86 Utf8 "Ljava/io/PrintStream;"; // #55 87 Utf8 "java/io/PrintStream"; // #56 88 Utf8 "println"; // #57 89 Utf8 "(Ljava/lang/String;)V"; // #58 90 class #16; // Added - #59 91 } // Constant Pool 92 93 0x0020; // access 94 #13;// this_cpx 95 #14;// super_cpx 96 97 [] { // Interfaces 98 } // Interfaces 99 100 [] { // fields 101 { // Member 102 0x0000; // access 103 #15; // name_cpx 104 #16; // sig_cpx 105 [] { // Attributes 106 } // Attributes 107 } // Member 108 ; 109 { // Member 110 0x000A; // access 111 #17; // name_cpx 112 #18; // sig_cpx 113 [] { // Attributes 114 } // Attributes 115 } // Member 116 } // fields 117 118 [] { // methods 119 { // Member 120 0x000A; // access 121 #19; // name_cpx 122 #20; // sig_cpx 123 [] { // Attributes 124 Attr(#21) { // Code 125 2; // max_stack 126 0; // max_locals 127 Bytes[]{ 128 0xB200011202B60003; 129 0xB1; 130 }; 131 [] { // Traps 132 } // end Traps 133 [] { // Attributes 134 Attr(#22) { // LineNumberTable 135 [] { // LineNumberTable 136 0 254; 137 8 255; 138 } 139 } // end LineNumberTable 140 } // Attributes 141 } // end Code 142 } // Attributes 143 } // Member 144 ; 145 { // Member 146 0x0009; // access 147 #23; // name_cpx 148 #20; // sig_cpx 149 [] { // Attributes 150 Attr(#21) { // Code 151 0; // max_stack 152 0; // max_locals 153 Bytes[]{ 154 0xB80004B1; 155 }; 156 [] { // Traps 157 } // end Traps 158 [] { // Attributes 159 Attr(#22) { // LineNumberTable 160 [] { // LineNumberTable 161 0 257; 162 3 258; 163 } 164 } // end LineNumberTable 165 } // Attributes 166 } // end Code 167 } // Attributes 168 } // Member 169 ; 170 { // Member 171 0x0009; // access 172 #24; // name_cpx 173 #20; // sig_cpx 174 [] { // Attributes 175 Attr(#21) { // Code 176 0; // max_stack 177 0; // max_locals 178 Bytes[]{ 179 0xB80005B1; 180 }; 181 [] { // Traps 182 } // end Traps 183 [] { // Attributes 184 Attr(#22) { // LineNumberTable 185 [] { // LineNumberTable 186 0 260; 187 3 261; 188 } 189 } // end LineNumberTable 190 } // Attributes 191 } // end Code 192 } // Attributes 193 } // Member 194 ; 195 { // Member 196 0x0002; // access 197 #25; // name_cpx 198 #20; // sig_cpx 199 [] { // Attributes 200 Attr(#21) { // Code 201 1; // max_stack 202 1; // max_locals 203 Bytes[]{ 204 0x2AB70006B1; 205 }; 206 [] { // Traps 207 } // end Traps 208 [] { // Attributes 209 Attr(#22) { // LineNumberTable 210 [] { // LineNumberTable 211 0 265; 212 } 213 } // end LineNumberTable 214 } // Attributes 215 } // end Code 216 } // Attributes 217 } // Member 218 ; 219 { // Member 220 0x0009; // access 221 #26; // name_cpx 222 #20; // sig_cpx 223 [] { // Attributes 224 Attr(#21) { // Code 225 2; // max_stack 226 1; // max_locals 227 Bytes[]{ 228 0xBB000759B700084B; 229 0xB1; 230 }; 231 [] { // Traps 232 } // end Traps 233 [] { // Attributes 234 Attr(#22) { // LineNumberTable 235 [] { // LineNumberTable 236 0 268; 237 8 269; 238 } 239 } // end LineNumberTable 240 } // Attributes 241 } // end Code 242 } // Attributes 243 } // Member 244 ; 245 { // Member 246 0x0009; // access 247 #27; // name_cpx 248 #20; // sig_cpx 249 [] { // Attributes 250 Attr(#21) { // Code 251 2; // max_stack 252 1; // max_locals 253 Bytes[]{ 254 0xBB000959B7000A4B; 255 0xB1; 256 }; 257 [] { // Traps 258 } // end Traps 259 [] { // Attributes 260 Attr(#22) { // LineNumberTable 261 [] { // LineNumberTable 262 0 271; 263 8 272; 264 } 265 } // end LineNumberTable 266 } // Attributes 267 } // end Code 268 } // Attributes 269 } // Member 270 ; 271 { // Member 272 0x0009; // access 273 #28; // name_cpx 274 #20; // sig_cpx 275 [] { // Attributes 276 Attr(#21) { // Code 277 1; // max_stack 278 1; // max_locals 279 Bytes[]{ 280 0xB2000B3BB1; 281 }; 282 [] { // Traps 283 } // end Traps 284 [] { // Attributes 285 Attr(#22) { // LineNumberTable 286 [] { // LineNumberTable 287 0 279; 288 4 280; 289 } 290 } // end LineNumberTable 291 } // Attributes 292 } // end Code 293 } // Attributes 294 } // Member 295 ; 296 { // Member 297 0x0009; // access 298 #29; // name_cpx 299 #20; // sig_cpx 300 [] { // Attributes 301 Attr(#21) { // Code 302 1; // max_stack 303 1; // max_locals 304 Bytes[]{ 305 0xB2000C3BB1; 306 }; 307 [] { // Traps 308 } // end Traps 309 [] { // Attributes 310 Attr(#22) { // LineNumberTable 311 [] { // LineNumberTable 312 0 282; 313 4 283; 314 } 315 } // end LineNumberTable 316 } // Attributes 317 } // end Code 318 } // Attributes 319 } // Member 320 ; 321 { // Member 322 0x0009; // access 323 #30; // name_cpx 324 #20; // sig_cpx 325 [] { // Attributes 326 Attr(#21) { // Code 327 1; // max_stack 328 0; // max_locals 329 Bytes[]{ 330 0x102AB3000BB1; 331 }; 332 [] { // Traps 333 } // end Traps 334 [] { // Attributes 335 Attr(#22) { // LineNumberTable 336 [] { // LineNumberTable 337 0 285; 338 5 286; 339 } 340 } // end LineNumberTable 341 } // Attributes 342 } // end Code 343 } // Attributes 344 } // Member 345 ; 346 { // Member 347 0x0009; // access 348 #31; // name_cpx 349 #20; // sig_cpx 350 [] { // Attributes 351 Attr(#21) { // Code 352 1; // max_stack 353 0; // max_locals 354 Bytes[]{ 355 0x102AB3000CB1; 356 }; 357 [] { // Traps 358 } // end Traps 359 [] { // Attributes 360 Attr(#22) { // LineNumberTable 361 [] { // LineNumberTable 362 0 288; 363 5 289; 364 } 365 } // end LineNumberTable 366 } // Attributes 367 } // end Code 368 } // Attributes 369 } // Member 370 } // methods 371 372 [] { // Attributes 373 Attr(#32) { // SourceFile 374 #33; 375 } // end SourceFile 376 ; 377 Attr(#34) { // NestHost 378 0x003B; // modified #59 379 } // end NestHost 380 ; 381 Attr(#45) { // InnerClasses 382 [] { // InnerClasses 383 #7 #35 #44 8; 384 #9 #35 #47 8; 385 #13 #35 #50 8; 386 } 387 } // end InnerClasses 388 } // Attributes 389 } // end class TestNestmateMembership$CallerNotInstanceHost