Mon, 28 Feb 2011 13:42:24 -0800
7022711: compiler crash in try-with-resources
Reviewed-by: mcimadamore
aoqi@0 | 1 | class T { |
aoqi@0 | 2 | 0xCAFEBABE; |
aoqi@0 | 3 | 0; // minor version |
aoqi@0 | 4 | 49; // version |
aoqi@0 | 5 | [73] { // Constant Pool |
aoqi@0 | 6 | ; // first element is empty |
aoqi@0 | 7 | Utf8 "T"; // #1 at 0x0A |
aoqi@0 | 8 | class #1; // #2 at 0x1A |
aoqi@0 | 9 | Utf8 "Ljava/lang/Enum<LT;>;"; // #3 at 0x1D |
aoqi@0 | 10 | Utf8 "java/lang/Enum"; // #4 at 0x41 |
aoqi@0 | 11 | class #4; // #5 at 0x52 |
aoqi@0 | 12 | Utf8 "T.java"; // #6 at 0x55 |
aoqi@0 | 13 | Utf8 "T1"; // #7 at 0x61 |
aoqi@0 | 14 | Utf8 "LT;"; // #8 at 0x66 |
aoqi@0 | 15 | Utf8 "T2"; // #9 at 0x78 |
aoqi@0 | 16 | Utf8 "T3"; // #10 at 0x7D |
aoqi@0 | 17 | Utf8 "myName"; // #11 at 0x82 |
aoqi@0 | 18 | Utf8 "Ljava/lang/String;"; // #12 at 0x8B |
aoqi@0 | 19 | Utf8 "$VALUES"; // #13 at 0xA0 |
aoqi@0 | 20 | Utf8 "[LT;"; // #14 at 0xAA |
aoqi@0 | 21 | Utf8 "values"; // #15 at 0xBD |
aoqi@0 | 22 | Utf8 "()[LT;"; // #16 at 0xC6 |
aoqi@0 | 23 | NameAndType #13 #14; // #17 at 0xDB |
aoqi@0 | 24 | Field #2 #17; // #18 at 0xE0 |
aoqi@0 | 25 | class #14; // #19 at 0xE5 |
aoqi@0 | 26 | Utf8 "clone"; // #20 at 0xE8 |
aoqi@0 | 27 | Utf8 "()Ljava/lang/Object;"; // #21 at 0xF0 |
aoqi@0 | 28 | NameAndType #20 #21; // #22 at 0x0107 |
aoqi@0 | 29 | Method #19 #22; // #23 at 0x010C |
aoqi@0 | 30 | Utf8 "valueOf"; // #24 at 0x0111 |
aoqi@0 | 31 | Utf8 "(Ljava/lang/String;)LT;"; // #25 at 0x011B |
aoqi@0 | 32 | Utf8 "(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;"; // #26 at 0x0141 |
aoqi@0 | 33 | NameAndType #24 #26; // #27 at 0x0179 |
aoqi@0 | 34 | Method #5 #27; // #28 at 0x017E |
aoqi@0 | 35 | Utf8 "name"; // #29 at 0x0183 |
aoqi@0 | 36 | Utf8 "getName"; // #30 at 0x018A |
aoqi@0 | 37 | Utf8 "()Ljava/lang/String;"; // #31 at 0x0194 |
aoqi@0 | 38 | NameAndType #11 #12; // #32 at 0x01AB |
aoqi@0 | 39 | Field #2 #32; // #33 at 0x01B0 |
aoqi@0 | 40 | Utf8 "this"; // #34 at 0x01B5 |
aoqi@0 | 41 | Utf8 "<init>"; // #35 at 0x01BC |
aoqi@0 | 42 | Utf8 "(Ljava/lang/String;ILjava/lang/String;)V"; // #36 at 0x01C5 |
aoqi@0 | 43 | Utf8 "LNotNull;"; // #37 at 0x01F0 |
aoqi@0 | 44 | Utf8 "java/lang/IllegalArgumentException"; // #38 at 0x0216 |
aoqi@0 | 45 | class #38; // #39 at 0x023B |
aoqi@0 | 46 | Utf8 "Argument 0 for @NotNull parameter of T.<init> must not be null"; // #40 at 0x023E |
aoqi@0 | 47 | String #40; // #41 at 0x028B |
aoqi@0 | 48 | Utf8 "(Ljava/lang/String;)V"; // #42 at 0x028E |
aoqi@0 | 49 | NameAndType #35 #42; // #43 at 0x02A6 |
aoqi@0 | 50 | Method #39 #43; // #44 at 0x02AB |
aoqi@0 | 51 | Utf8 "(Ljava/lang/String;I)V"; // #45 at 0x02B0 |
aoqi@0 | 52 | NameAndType #35 #45; // #46 at 0x02C9 |
aoqi@0 | 53 | Method #5 #46; // #47 at 0x02CE |
aoqi@0 | 54 | Utf8 "<clinit>"; // #48 at 0x02D3 |
aoqi@0 | 55 | Utf8 "()V"; // #49 at 0x02DE |
aoqi@0 | 56 | String #7; // #50 at 0x02E4 |
aoqi@0 | 57 | Utf8 "type1"; // #51 at 0x02E7 |
aoqi@0 | 58 | String #51; // #52 at 0x02EF |
aoqi@0 | 59 | NameAndType #35 #36; // #53 at 0x02F2 |
aoqi@0 | 60 | Method #2 #53; // #54 at 0x02F7 |
aoqi@0 | 61 | NameAndType #7 #8; // #55 at 0x02FC |
aoqi@0 | 62 | Field #2 #55; // #56 at 0x0301 |
aoqi@0 | 63 | String #9; // #57 at 0x0306 |
aoqi@0 | 64 | Utf8 "type2"; // #58 at 0x0309 |
aoqi@0 | 65 | String #58; // #59 at 0x0311 |
aoqi@0 | 66 | NameAndType #9 #8; // #60 at 0x0314 |
aoqi@0 | 67 | Field #2 #60; // #61 at 0x0319 |
aoqi@0 | 68 | String #10; // #62 at 0x031E |
aoqi@0 | 69 | Utf8 "type3"; // #63 at 0x0321 |
aoqi@0 | 70 | String #63; // #64 at 0x0329 |
aoqi@0 | 71 | NameAndType #10 #8; // #65 at 0x032C |
aoqi@0 | 72 | Field #2 #65; // #66 at 0x0331 |
aoqi@0 | 73 | Utf8 "Code"; // #67 at 0x0336 |
aoqi@0 | 74 | Utf8 "LineNumberTable"; // #68 at 0x033D |
aoqi@0 | 75 | Utf8 "LocalVariableTable"; // #69 at 0x034F |
aoqi@0 | 76 | Utf8 "Signature"; // #70 at 0x0364 |
aoqi@0 | 77 | Utf8 "RuntimeInvisibleParameterAnnotations"; // #71 at 0x0370 |
aoqi@0 | 78 | Utf8 "SourceFile"; // #72 at 0x0397 |
aoqi@0 | 79 | } // Constant Pool |
aoqi@0 | 80 | |
aoqi@0 | 81 | 0x4031; // access |
aoqi@0 | 82 | #2;// this_cpx |
aoqi@0 | 83 | #5;// super_cpx |
aoqi@0 | 84 | |
aoqi@0 | 85 | [0] { // Interfaces |
aoqi@0 | 86 | } // Interfaces |
aoqi@0 | 87 | |
aoqi@0 | 88 | [5] { // fields |
aoqi@0 | 89 | { // Member at 0x03AE |
aoqi@0 | 90 | 0x4019; // access |
aoqi@0 | 91 | #7; // name_cpx |
aoqi@0 | 92 | #8; // sig_cpx |
aoqi@0 | 93 | [0] { // Attributes |
aoqi@0 | 94 | } // Attributes |
aoqi@0 | 95 | } // Member |
aoqi@0 | 96 | ; |
aoqi@0 | 97 | { // Member at 0x03B6 |
aoqi@0 | 98 | 0x4019; // access |
aoqi@0 | 99 | #9; // name_cpx |
aoqi@0 | 100 | #8; // sig_cpx |
aoqi@0 | 101 | [0] { // Attributes |
aoqi@0 | 102 | } // Attributes |
aoqi@0 | 103 | } // Member |
aoqi@0 | 104 | ; |
aoqi@0 | 105 | { // Member at 0x03BE |
aoqi@0 | 106 | 0x4019; // access |
aoqi@0 | 107 | #10; // name_cpx |
aoqi@0 | 108 | #8; // sig_cpx |
aoqi@0 | 109 | [0] { // Attributes |
aoqi@0 | 110 | } // Attributes |
aoqi@0 | 111 | } // Member |
aoqi@0 | 112 | ; |
aoqi@0 | 113 | { // Member at 0x03C6 |
aoqi@0 | 114 | 0x0012; // access |
aoqi@0 | 115 | #11; // name_cpx |
aoqi@0 | 116 | #12; // sig_cpx |
aoqi@0 | 117 | [0] { // Attributes |
aoqi@0 | 118 | } // Attributes |
aoqi@0 | 119 | } // Member |
aoqi@0 | 120 | ; |
aoqi@0 | 121 | { // Member at 0x03CE |
aoqi@0 | 122 | 0x101A; // access |
aoqi@0 | 123 | #13; // name_cpx |
aoqi@0 | 124 | #14; // sig_cpx |
aoqi@0 | 125 | [0] { // Attributes |
aoqi@0 | 126 | } // Attributes |
aoqi@0 | 127 | } // Member |
aoqi@0 | 128 | } // fields |
aoqi@0 | 129 | |
aoqi@0 | 130 | [5] { // methods |
aoqi@0 | 131 | { // Member at 0x03D8 |
aoqi@0 | 132 | 0x0019; // access |
aoqi@0 | 133 | #15; // name_cpx |
aoqi@0 | 134 | #16; // sig_cpx |
aoqi@0 | 135 | [1] { // Attributes |
aoqi@0 | 136 | Attr(#67, 34) { // Code at 0x03E0 |
aoqi@0 | 137 | 1; // max_stack |
aoqi@0 | 138 | 0; // max_locals |
aoqi@0 | 139 | Bytes[10]{ |
aoqi@0 | 140 | 0xB20012B60017C000; |
aoqi@0 | 141 | 0x13B0; |
aoqi@0 | 142 | }; |
aoqi@0 | 143 | [0] { // Traps |
aoqi@0 | 144 | } // end Traps |
aoqi@0 | 145 | [1] { // Attributes |
aoqi@0 | 146 | Attr(#68, 6) { // LineNumberTable at 0x03FC |
aoqi@0 | 147 | [1] { // LineNumberTable |
aoqi@0 | 148 | 0 9; // at 0x0408 |
aoqi@0 | 149 | } |
aoqi@0 | 150 | } // end LineNumberTable |
aoqi@0 | 151 | } // Attributes |
aoqi@0 | 152 | } // end Code |
aoqi@0 | 153 | } // Attributes |
aoqi@0 | 154 | } // Member |
aoqi@0 | 155 | ; |
aoqi@0 | 156 | { // Member at 0x0408 |
aoqi@0 | 157 | 0x0009; // access |
aoqi@0 | 158 | #24; // name_cpx |
aoqi@0 | 159 | #25; // sig_cpx |
aoqi@0 | 160 | [1] { // Attributes |
aoqi@0 | 161 | Attr(#67, 52) { // Code at 0x0410 |
aoqi@0 | 162 | 2; // max_stack |
aoqi@0 | 163 | 1; // max_locals |
aoqi@0 | 164 | Bytes[10]{ |
aoqi@0 | 165 | 0x12022AB8001CC000; |
aoqi@0 | 166 | 0x02B0; |
aoqi@0 | 167 | }; |
aoqi@0 | 168 | [0] { // Traps |
aoqi@0 | 169 | } // end Traps |
aoqi@0 | 170 | [2] { // Attributes |
aoqi@0 | 171 | Attr(#69, 12) { // LocalVariableTable at 0x042C |
aoqi@0 | 172 | [1] { // LocalVariableTable |
aoqi@0 | 173 | 0 10 29 12 0; // at 0x043E |
aoqi@0 | 174 | } |
aoqi@0 | 175 | } // end LocalVariableTable |
aoqi@0 | 176 | ; |
aoqi@0 | 177 | Attr(#68, 6) { // LineNumberTable at 0x043E |
aoqi@0 | 178 | [1] { // LineNumberTable |
aoqi@0 | 179 | 0 9; // at 0x044A |
aoqi@0 | 180 | } |
aoqi@0 | 181 | } // end LineNumberTable |
aoqi@0 | 182 | } // Attributes |
aoqi@0 | 183 | } // end Code |
aoqi@0 | 184 | } // Attributes |
aoqi@0 | 185 | } // Member |
aoqi@0 | 186 | ; |
aoqi@0 | 187 | { // Member at 0x044A |
aoqi@0 | 188 | 0x0001; // access |
aoqi@0 | 189 | #30; // name_cpx |
aoqi@0 | 190 | #31; // sig_cpx |
aoqi@0 | 191 | [1] { // Attributes |
aoqi@0 | 192 | Attr(#67, 47) { // Code at 0x0452 |
aoqi@0 | 193 | 1; // max_stack |
aoqi@0 | 194 | 1; // max_locals |
aoqi@0 | 195 | Bytes[5]{ |
aoqi@0 | 196 | 0x2AB40021B0; |
aoqi@0 | 197 | }; |
aoqi@0 | 198 | [0] { // Traps |
aoqi@0 | 199 | } // end Traps |
aoqi@0 | 200 | [2] { // Attributes |
aoqi@0 | 201 | Attr(#69, 12) { // LocalVariableTable at 0x0469 |
aoqi@0 | 202 | [1] { // LocalVariableTable |
aoqi@0 | 203 | 0 5 34 8 0; // at 0x047B |
aoqi@0 | 204 | } |
aoqi@0 | 205 | } // end LocalVariableTable |
aoqi@0 | 206 | ; |
aoqi@0 | 207 | Attr(#68, 6) { // LineNumberTable at 0x047B |
aoqi@0 | 208 | [1] { // LineNumberTable |
aoqi@0 | 209 | 0 17; // at 0x0487 |
aoqi@0 | 210 | } |
aoqi@0 | 211 | } // end LineNumberTable |
aoqi@0 | 212 | } // Attributes |
aoqi@0 | 213 | } // end Code |
aoqi@0 | 214 | } // Attributes |
aoqi@0 | 215 | } // Member |
aoqi@0 | 216 | ; |
aoqi@0 | 217 | { // Member at 0x0487 |
aoqi@0 | 218 | 0x0002; // access |
aoqi@0 | 219 | #35; // name_cpx |
aoqi@0 | 220 | #36; // sig_cpx |
aoqi@0 | 221 | [3] { // Attributes |
aoqi@0 | 222 | Attr(#67, 86) { // Code at 0x048F |
aoqi@0 | 223 | 3; // max_stack |
aoqi@0 | 224 | 4; // max_locals |
aoqi@0 | 225 | Bytes[26]{ |
aoqi@0 | 226 | 0x2BC7000DBB002759; |
aoqi@0 | 227 | 0x1229B7002CBF2A2B; |
aoqi@0 | 228 | 0x1CB7002F2A2DB500; |
aoqi@0 | 229 | 0x21B1; |
aoqi@0 | 230 | }; |
aoqi@0 | 231 | [0] { // Traps |
aoqi@0 | 232 | } // end Traps |
aoqi@0 | 233 | [2] { // Attributes |
aoqi@0 | 234 | Attr(#69, 22) { // LocalVariableTable at 0x04BB |
aoqi@0 | 235 | [2] { // LocalVariableTable |
aoqi@0 | 236 | 14 12 34 8 0; // at 0x04CD |
aoqi@0 | 237 | 14 12 29 12 3; // at 0x04D7 |
aoqi@0 | 238 | } |
aoqi@0 | 239 | } // end LocalVariableTable |
aoqi@0 | 240 | ; |
aoqi@0 | 241 | Attr(#68, 14) { // LineNumberTable at 0x04D7 |
aoqi@0 | 242 | [3] { // LineNumberTable |
aoqi@0 | 243 | 14 20; // at 0x04E3 |
aoqi@0 | 244 | 20 21; // at 0x04E7 |
aoqi@0 | 245 | 25 22; // at 0x04EB |
aoqi@0 | 246 | } |
aoqi@0 | 247 | } // end LineNumberTable |
aoqi@0 | 248 | } // Attributes |
aoqi@0 | 249 | } // end Code |
aoqi@0 | 250 | ; |
aoqi@0 | 251 | Attr(#70, 2) { // Signature at 0x04EB |
aoqi@0 | 252 | #42; |
aoqi@0 | 253 | } // end Signature |
aoqi@0 | 254 | ; |
aoqi@0 | 255 | Attr(#71, 11) { // RuntimeInvisibleParameterAnnotations at 0x04F3 |
aoqi@0 | 256 | [3]b { // parameters |
aoqi@0 | 257 | [1] { // annotations |
aoqi@0 | 258 | { // annotation |
aoqi@0 | 259 | #37; |
aoqi@0 | 260 | [0] { // element_value_pairs |
aoqi@0 | 261 | } // element_value_pairs |
aoqi@0 | 262 | } // annotation |
aoqi@0 | 263 | } |
aoqi@0 | 264 | ; |
aoqi@0 | 265 | [0] { // annotations |
aoqi@0 | 266 | } |
aoqi@0 | 267 | ; |
aoqi@0 | 268 | [0] { // annotations |
aoqi@0 | 269 | } |
aoqi@0 | 270 | } |
aoqi@0 | 271 | } // end RuntimeInvisibleParameterAnnotations |
aoqi@0 | 272 | } // Attributes |
aoqi@0 | 273 | } // Member |
aoqi@0 | 274 | ; |
aoqi@0 | 275 | { // Member at 0x0504 |
aoqi@0 | 276 | 0x0008; // access |
aoqi@0 | 277 | #48; // name_cpx |
aoqi@0 | 278 | #49; // sig_cpx |
aoqi@0 | 279 | [1] { // Attributes |
aoqi@0 | 280 | Attr(#67, 107) { // Code at 0x050C |
aoqi@0 | 281 | 5; // max_stack |
aoqi@0 | 282 | 0; // max_locals |
aoqi@0 | 283 | Bytes[71]{ |
aoqi@0 | 284 | 0xBB00025912320312; |
aoqi@0 | 285 | 0x34B70036B30038BB; |
aoqi@0 | 286 | 0x000259123904123B; |
aoqi@0 | 287 | 0xB70036B3003DBB00; |
aoqi@0 | 288 | 0x0259123E051240B7; |
aoqi@0 | 289 | 0x0036B3004206BD00; |
aoqi@0 | 290 | 0x025903B200385359; |
aoqi@0 | 291 | 0x04B2003D535905B2; |
aoqi@0 | 292 | 0x004253B30012B1; |
aoqi@0 | 293 | }; |
aoqi@0 | 294 | [0] { // Traps |
aoqi@0 | 295 | } // end Traps |
aoqi@0 | 296 | [1] { // Attributes |
aoqi@0 | 297 | Attr(#68, 18) { // LineNumberTable at 0x0565 |
aoqi@0 | 298 | [4] { // LineNumberTable |
aoqi@0 | 299 | 0 10; // at 0x0571 |
aoqi@0 | 300 | 15 11; // at 0x0575 |
aoqi@0 | 301 | 30 12; // at 0x0579 |
aoqi@0 | 302 | 45 9; // at 0x057D |
aoqi@0 | 303 | } |
aoqi@0 | 304 | } // end LineNumberTable |
aoqi@0 | 305 | } // Attributes |
aoqi@0 | 306 | } // end Code |
aoqi@0 | 307 | } // Attributes |
aoqi@0 | 308 | } // Member |
aoqi@0 | 309 | } // methods |
aoqi@0 | 310 | |
aoqi@0 | 311 | [2] { // Attributes |
aoqi@0 | 312 | Attr(#70, 2) { // Signature at 0x057F |
aoqi@0 | 313 | #3; |
aoqi@0 | 314 | } // end Signature |
aoqi@0 | 315 | ; |
aoqi@0 | 316 | Attr(#72, 2) { // SourceFile at 0x0587 |
aoqi@0 | 317 | #6; |
aoqi@0 | 318 | } // end SourceFile |
aoqi@0 | 319 | } // Attributes |
aoqi@0 | 320 | } // end class T |