Skip to content

Commit 8573c1b

Browse files
authoredJun 22, 2021
CODETOOLS-7902984: jcstress: Fix lint warnings in generated code and utilities
1 parent c4f2415 commit 8573c1b

File tree

13 files changed

+48
-23
lines changed

13 files changed

+48
-23
lines changed
 

‎jcstress-core/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ questions.
5151
<configuration>
5252
<proc>none</proc>
5353
<compilerArgs>
54-
<arg>-Xlint:all</arg>
54+
<arg>-Xlint:all,-options,-serial</arg>
5555
<arg>-Werror</arg>
5656
</compilerArgs>
5757
</configuration>

‎jcstress-core/src/main/java/org/openjdk/jcstress/Main.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ public static void main(String[] args) throws Exception {
6262
}
6363

6464
static void printVersion(PrintStream out) {
65-
Class clazz = Main.class;
65+
Class<?> clazz = Main.class;
6666
String className = clazz.getSimpleName() + ".class";
6767
String classPath = clazz.getResource(className).toString();
6868
if (!classPath.startsWith("jar")) {

‎jcstress-core/src/main/java/org/openjdk/jcstress/annotations/JCStressMeta.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,6 @@
4040
@Retention(RetentionPolicy.RUNTIME)
4141
public @interface JCStressMeta {
4242

43-
Class value();
43+
Class<?> value();
4444

4545
}

‎jcstress-core/src/main/java/org/openjdk/jcstress/infra/processors/JCStressTestProcessor.java

+21-2
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,26 @@ public SourceVersion getSupportedSourceVersion() {
6565

6666
@Override
6767
public Set<String> getSupportedAnnotationTypes() {
68-
return Collections.singleton(JCStressTest.class.getName());
68+
List<Class<?>> classes = Arrays.asList(
69+
JCStressTest.class,
70+
JCStressMeta.class,
71+
State.class,
72+
Result.class,
73+
Actor.class,
74+
Arbiter.class,
75+
Signal.class,
76+
Outcome.class,
77+
Outcome.Outcomes.class,
78+
Ref.class,
79+
Ref.Refs.class,
80+
Description.class
81+
);
82+
83+
HashSet<String> set = new HashSet<>();
84+
for (Class<?> cl : classes) {
85+
set.add(cl.getCanonicalName());
86+
}
87+
return set;
6988
}
7089

7190
@Override
@@ -480,7 +499,7 @@ private void generateContinuous(TestInfo info) {
480499
pw.println(" }});");
481500
}
482501
pw.println();
483-
pw.println(" for (CounterThread t : threads) {");
502+
pw.println(" for (CounterThread<" + r + "> t : threads) {");
484503
pw.println(" t.start();");
485504
pw.println(" }");
486505
pw.println();

‎jcstress-core/src/main/java/org/openjdk/jcstress/os/Scheduler.java

+1
Original file line numberDiff line numberDiff line change
@@ -524,6 +524,7 @@ private List<SchedulingClass> noneOrGlobalAffinityFor(AffinityMode mode, int thr
524524
return Collections.singletonList(scl);
525525
}
526526

527+
@SuppressWarnings("fallthrough")
527528
public List<SchedulingClass> scheduleClasses(int actorThreads, int threadLimit, AffinityMode mode) {
528529
switch (mode) {
529530
case LOCAL:

‎jcstress-core/src/main/java/org/openjdk/jcstress/util/ResultUtils.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public class ResultUtils {
2828

2929
public static String resultName(Class<?>... args) {
3030
String name = "";
31-
for (Class k : args) {
31+
for (Class<?> k : args) {
3232
if (k.isPrimitive()) {
3333
if (k == boolean.class) name += "Z";
3434
if (k == byte.class) name += "B";

‎jcstress-core/src/main/java/sun/misc/Unsafe.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -246,9 +246,9 @@ public static Unsafe getUnsafe() {
246246

247247
public abstract void putByte(java.lang.Object o, long l, byte l1);
248248

249-
public abstract int arrayBaseOffset(java.lang.Class aClass);
249+
public abstract int arrayBaseOffset(java.lang.Class<?> aClass);
250250

251-
public abstract int arrayIndexScale(java.lang.Class aClass);
251+
public abstract int arrayIndexScale(java.lang.Class<?> aClass);
252252

253253
public abstract int getAndAddInt(Object o, long offset, int delta);
254254

‎jcstress-result-gen/src/main/java/org/openjdk/jcstress/ResultGenerator.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ public ResultGenerator(String srcRoot) {
4343
public String generateResult(Class<?>... args) {
4444
boolean allPrimitive = true;
4545
String name = "";
46-
for (Class k : args) {
46+
for (Class<?> k : args) {
4747
if (k.isPrimitive()) {
4848
if (k == boolean.class) name += "Z";
4949
if (k == byte.class) name += "B";
@@ -88,7 +88,7 @@ public String generateResult(Class<?>... args) {
8888

8989
{
9090
int n = 1;
91-
for (Class k : args) {
91+
for (Class<?> k : args) {
9292
pw.println(" @sun.misc.Contended");
9393
pw.println(" @jdk.internal.vm.annotation.Contended");
9494
pw.println(" public " + k.getSimpleName() + " r" + n + ";");
@@ -108,7 +108,7 @@ public String generateResult(Class<?>... args) {
108108
pw.println(" return ");
109109
{
110110
int n = 1;
111-
for (Class k : args) {
111+
for (Class<?> k : args) {
112112
pw.print(" ");
113113
if (n != 1) {
114114
pw.print(" + ");
@@ -147,7 +147,7 @@ public String generateResult(Class<?>... args) {
147147

148148
{
149149
int n = 1;
150-
for (Class k : args) {
150+
for (Class<?> k : args) {
151151
if (k == boolean.class || k == byte.class || k == short.class || k == char.class
152152
|| k == int.class || k == long.class) {
153153
pw.println(" if (r" + n + " != that.r" + n + ") return false;");
@@ -170,7 +170,7 @@ public String generateResult(Class<?>... args) {
170170
pw.print(" return \"\" + ");
171171
{
172172
int n = 1;
173-
for (Class k : args) {
173+
for (Class<?> k : args) {
174174
if (n != 1)
175175
pw.print(" + \", \" + ");
176176
pw.print("r" + n);

‎jcstress-test-gen/src/main/java/org/openjdk/jcstress/generator/TestGenerator.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -227,7 +227,7 @@ public Class<?> type(int index) {
227227
return types[index];
228228
}
229229

230-
public Class[] all() {
230+
public Class<?>[] all() {
231231
return types;
232232
}
233233

‎jcstress-test-gen/src/main/java/org/openjdk/jcstress/generator/seqcst/SeqCstTraceGenerator.java

+2-4
Original file line numberDiff line numberDiff line change
@@ -185,10 +185,8 @@ private void check(Set<String> ids, String id, String info) {
185185
private void emit(MultiThread mt, Collection<TraceResult> scResults) {
186186
String klass = mt.canonicalId() + "_Test";
187187

188-
Class[] klasses = new Class[mt.loadCount() + mt.allVariables().size()];
189-
for (int c = 0; c < klasses.length; c++) {
190-
klasses[c] = int.class;
191-
}
188+
Class<?>[] klasses = new Class<?>[mt.loadCount() + mt.allVariables().size()];
189+
Arrays.fill(klasses, int.class);
192190

193191
String resultName = ResultUtils.resultName(klasses);
194192

‎jcstress-test-gen/src/main/resources/fences/X-LoadStoreFenceTest1.java.template

+3-2
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,8 @@ public class $TestClassName$ {
5252

5353
@Actor
5454
public void actor2($T$$T$_Result r) {
55-
r.r1 = field;
56-
x = ($type$) r.r1;
55+
$type$ t = field;
56+
x = t;
57+
r.r1 = t;
5758
}
5859
}

‎jcstress-test-gen/src/main/resources/fences/X-LoadStoreFenceTest2.java.template

+3-2
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,8 @@ public class $TestClassName$ {
5252

5353
@Actor
5454
public void actor2($T$$T$_Result r) {
55-
r.r1 = y;
56-
field = ($type$) r.r1;
55+
$type$ t = y;
56+
field = t;
57+
r.r1 = t;
5758
}
5859
}

‎pom.xml

+6-1
Original file line numberDiff line numberDiff line change
@@ -78,10 +78,15 @@ questions.
7878
<plugin>
7979
<groupId>org.apache.maven.plugins</groupId>
8080
<artifactId>maven-compiler-plugin</artifactId>
81-
<version>3.8.0</version>
81+
<version>3.8.1</version>
8282
<configuration>
8383
<source>1.8</source>
8484
<target>1.8</target>
85+
<compilerArgs>
86+
<arg>-Xlint:all,-deprecation,-options,-serial,-processing</arg>
87+
<arg>-Werror</arg>
88+
</compilerArgs>
89+
<showWarnings>true</showWarnings>
8590
</configuration>
8691
</plugin>
8792
<plugin>

0 commit comments

Comments
 (0)
Please sign in to comment.