Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/mobile
Path: blob/master/test/hotspot/jtreg/vmTestbase/nsk/jdi/ArrayReference/length/length001a.java
41161 views
1
/*
2
* Copyright (c) 2001, 2021, 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
25
package nsk.jdi.ArrayReference.length;
26
27
import nsk.share.*;
28
import nsk.share.jpda.*;
29
import nsk.share.jdi.*;
30
31
32
public class length001a {
33
public static void main (String argv[]) {
34
ArgumentHandler argHandler = new ArgumentHandler(argv);
35
Log log = new Log(System.err, argHandler);
36
IOPipe pipe = argHandler.createDebugeeIOPipe(log);
37
ClassToCheck classToCheck = new ClassToCheck();
38
39
log.display("DEBUGEE> debugee started.");
40
pipe.println("ready");
41
String instruction = pipe.readln();
42
if (instruction.equals("quit")) {
43
log.display("DEBUGEE> \"quit\" signal recieved.");
44
log.display("DEBUGEE> completed succesfully.");
45
System.exit(95);
46
}
47
log.complain("DEBUGEE FAILURE> unexpected signal "
48
+ "(no \"quit\") - " + instruction);
49
log.complain("DEBUGEE FAILURE> TEST FAILED");
50
System.exit(97);
51
}
52
}
53
54
class ClassToCheck {
55
// User class and interface
56
static class Class {}
57
static interface Inter {}
58
59
static boolean z1[]={};
60
static boolean z2[][]={z1, z1, z1, z1, z1, z1, z1};
61
static byte b1[]={0};
62
static byte b2[][]={b1, b1, b1, b1, b1, b1};
63
static char c1[]={'\u00ff', '\u0f0f'};
64
static char c2[][]={c1, c1, c1, c1, c1};
65
static double d1[]={0, 1, -2};
66
static double d2[][]={d1, d1, d1, d1};
67
static float f1[]={0, 1, -2, 3};
68
static float f2[][]={f1, f1, f1};
69
static int i1[]={0, 1, -2, 3, -4};
70
static int i2[][]={i1, i1};
71
static long l1[]={0, 1, -2, 3, -4, 5};
72
static long l2[][]={l1};
73
static short r1[]={0, 1, -2, 3, -4, 5, -6};
74
static short r2[][]={};
75
76
static final long lF1[]={1, -2, 3};
77
static private long lP1[][]={{1}, {-2}, {3}};
78
static public long lU1[][][]={{{1}}, {{-2}}};
79
static protected long lR1[][][][]={{{{1}}}, {{{-2}}}};
80
static transient long lT1[][][][][]={{{{{1}}}}};
81
static volatile long lV1[][][][][][]={{{{{{1}}}}}};
82
83
static Inter E1[]={};
84
static Inter E2[][]={E1, E1};
85
static Class X1[]={new Class()};
86
static Class X2[][]={X1};
87
static Object O1[]={new Object(), new Object()};
88
static Object O2[][]={};
89
90
static final Long LF1[]={Long.valueOf(1), Long.valueOf(-2), Long.valueOf(3)};
91
static private Long LP1[][]={{Long.valueOf(1)}, {Long.valueOf(2)}, {Long.valueOf(3)}};
92
static public Long LU1[][][]={{{Long.valueOf(1)}}, {{Long.valueOf(-2)}}};
93
static protected Long LR1[][][][]={{{{Long.valueOf(1)}}}, {{{Long.valueOf(-2)}}}};
94
static transient Long LT1[][][][][]={{{{{Long.valueOf(1)}}}}};
95
static volatile Long LV1[][][][][][]={{{{{{Long.valueOf(1)}}}}}};
96
97
static final Inter EF1[]={};
98
static private Inter EP1[][]={{}};
99
static public Inter EU1[][][]={{{}}};
100
static protected Inter ER1[][][][]={{{{}}}};
101
static transient Inter ET1[][][][][]={{{{{}}}}};
102
static volatile Inter EV1[][][][][][]={{{{{{}}}}}};
103
}
104
105