mirror of
https://github.com/Eaglercraft-TeaVM-Fork/eagler-teavm.git
synced 2024-12-22 16:14:10 -08:00
Fixes illegal processing of DUP2, DUP_X1, DUP_X2m, DUP2_X2 instructions.
Makes more fancy list of missing items
This commit is contained in:
parent
253b882d3e
commit
6c903a916c
24
pom.xml
24
pom.xml
|
@ -22,17 +22,19 @@
|
||||||
</modules>
|
</modules>
|
||||||
|
|
||||||
<build>
|
<build>
|
||||||
<plugins>
|
<pluginManagement>
|
||||||
<plugin>
|
<plugins>
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
<plugin>
|
||||||
<artifactId>maven-compiler-plugin</artifactId>
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
<version>2.5.1</version>
|
<artifactId>maven-compiler-plugin</artifactId>
|
||||||
<configuration>
|
<version>2.5.1</version>
|
||||||
<source>1.7</source>
|
<configuration>
|
||||||
<target>1.7</target>
|
<source>1.7</source>
|
||||||
</configuration>
|
<target>1.7</target>
|
||||||
</plugin>
|
</configuration>
|
||||||
</plugins>
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</pluginManagement>
|
||||||
</build>
|
</build>
|
||||||
|
|
||||||
<profiles>
|
<profiles>
|
||||||
|
|
|
@ -355,24 +355,19 @@ public class DependencyChecker implements DependencyInformation {
|
||||||
if (missingClasses.isEmpty() && missingMethods.isEmpty() && missingFields.isEmpty()) {
|
if (missingClasses.isEmpty() && missingMethods.isEmpty() && missingFields.isEmpty()) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
List<String> items = new ArrayList<>();
|
||||||
|
items.addAll(missingClasses);
|
||||||
|
for (MethodReference method : missingMethods) {
|
||||||
|
items.add(method.toString());
|
||||||
|
}
|
||||||
|
for (FieldReference field : missingFields) {
|
||||||
|
items.add(field.toString());
|
||||||
|
}
|
||||||
|
Collections.sort(items);
|
||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
if (!missingClasses.isEmpty()) {
|
sb.append("Can't compile due to the following items missing:\n");
|
||||||
sb.append("Missing classes:\n");
|
for (String item : items) {
|
||||||
for (String cls : missingClasses) {
|
sb.append(" ").append(item).append("\n");
|
||||||
sb.append(" ").append(cls).append("\n");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (!missingMethods.isEmpty()) {
|
|
||||||
sb.append("Missing methods:\n");
|
|
||||||
for (MethodReference method : missingMethods) {
|
|
||||||
sb.append(" ").append(method).append("\n");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (!missingMethods.isEmpty()) {
|
|
||||||
sb.append("Missing fields:\n");
|
|
||||||
for (FieldReference field : missingFields) {
|
|
||||||
sb.append(" ").append(field).append("\n");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
throw new IllegalStateException(sb.toString());
|
throw new IllegalStateException(sb.toString());
|
||||||
}
|
}
|
||||||
|
|
|
@ -52,4 +52,9 @@ public class FieldReference {
|
||||||
FieldReference other = (FieldReference)obj;
|
FieldReference other = (FieldReference)obj;
|
||||||
return className.equals(other.className) && fieldName.equals(other.fieldName);
|
return className.equals(other.className) && fieldName.equals(other.fieldName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return className + "." + fieldName;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user