wave N+15: aeo EF var7-var12 copies in visit lambda (guard fix)
This commit is contained in:
parent
ae97ccf38c
commit
4749ef4bac
3 changed files with 142 additions and 14 deletions
66
build-logs/vfbuild31.log
Normal file
66
build-logs/vfbuild31.log
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
/storage/aboba/evovis-client/src/main/java/defpackage/aeo.java:311: error: local variables referenced from a lambda expression must be final or effectively final
|
||||
((MutableComponent)var10).append(Component.literal(var10x.substring(var13x)).setStyle(var9x));
|
||||
^
|
||||
/storage/aboba/evovis-client/src/main/java/defpackage/aeo.java:329: error: local variables referenced from a lambda expression must be final or effectively final
|
||||
((MutableComponent)var10).append(
|
||||
^
|
||||
/storage/aboba/evovis-client/src/main/java/defpackage/aeo.java:336: error: local variables referenced from a lambda expression must be final or effectively final
|
||||
var11x = var11[0];
|
||||
^
|
||||
/storage/aboba/evovis-client/src/main/java/defpackage/aeo.java:337: error: local variables referenced from a lambda expression must be final or effectively final
|
||||
var11[0] = var11x + var10x.length();
|
||||
^
|
||||
/storage/aboba/evovis-client/src/main/java/defpackage/aeo.java:346: error: local variables referenced from a lambda expression must be final or effectively final
|
||||
((MutableComponent)var10).append(Component.literal(var10x.substring(var14x, var14x + var15x)).setStyle(var9x.withColor(var0.rgb(var16x, var4))));
|
||||
^
|
||||
/storage/aboba/evovis-client/src/main/java/defpackage/aeo.java:347: error: local variables referenced from a lambda expression must be final or effectively final
|
||||
var12[0] = var12[0]
|
||||
^
|
||||
/storage/aboba/evovis-client/src/main/java/defpackage/aeo.java:347: error: local variables referenced from a lambda expression must be final or effectively final
|
||||
var12[0] = var12[0]
|
||||
^
|
||||
/storage/aboba/evovis-client/src/main/java/defpackage/aeo.java:354: error: local variables referenced from a lambda expression must be final or effectively final
|
||||
if (var9 > (-2085610572 ^ 2085610573) + ((-2085610572 & 2085610573) << 1)) {
|
||||
^
|
||||
/storage/aboba/evovis-client/src/main/java/defpackage/aeo.java:361: error: local variables referenced from a lambda expression must be final or effectively final
|
||||
if (var11x >= var8) {
|
||||
^
|
||||
/storage/aboba/evovis-client/src/main/java/defpackage/aeo.java:378: error: local variables referenced from a lambda expression must be final or effectively final
|
||||
var18x = (float)var12[0]
|
||||
^
|
||||
/storage/aboba/evovis-client/src/main/java/defpackage/aeo.java:379: error: local variables referenced from a lambda expression must be final or effectively final
|
||||
/ (var9 - ((-1767184395 ^ 1767184396) + ((-1767184395 & 1767184396) << 1)));
|
||||
^
|
||||
/storage/aboba/evovis-client/src/main/java/defpackage/aeo.java:383: error: local variables referenced from a lambda expression must be final or effectively final
|
||||
((MutableComponent)var10).append(Component.literal(var10x).setStyle(var9x));
|
||||
^
|
||||
/storage/aboba/evovis-client/src/main/java/defpackage/aeo.java:386: error: local variables referenced from a lambda expression must be final or effectively final
|
||||
if (var11x + var10x.length() > var7) {
|
||||
^
|
||||
/storage/aboba/evovis-client/src/main/java/defpackage/aeo.java:395: error: local variables referenced from a lambda expression must be final or effectively final
|
||||
var12x = Math.max(var7 - var11x, (-1863041614 ^ 1863041614) + ((-1863041614 & 1863041614) << 1));
|
||||
^
|
||||
/storage/aboba/evovis-client/src/main/java/defpackage/aeo.java:396: error: local variables referenced from a lambda expression must be final or effectively final
|
||||
var13x = Math.min(var8 - var11x, var10x.length());
|
||||
^
|
||||
Note: Some input files use or override a deprecated API.
|
||||
Note: Recompile with -Xlint:deprecation for details.
|
||||
Note: Some input files use unchecked or unsafe operations.
|
||||
Note: Recompile with -Xlint:unchecked for details.
|
||||
15 errors
|
||||
|
||||
FAILURE: Build failed with an exception.
|
||||
|
||||
* What went wrong:
|
||||
Execution failed for task ':compileJava' (registered by plugin class 'org.gradle.api.plugins.JavaBasePlugin').
|
||||
> Compilation failed; see the compiler output below.
|
||||
/storage/aboba/evovis-client/src/main/java/defpackage/aeo.java:311: error: local variables referenced from a lambda expression must be final or effectively final
|
||||
((MutableComponent)var10).append(Component.literal(var10x.substring(var13x)).setStyle(var9x));
|
||||
^
|
||||
15 errors
|
||||
|
||||
* Try:
|
||||
> Check your code and dependencies to fix the compilation error(s)
|
||||
> Run with --scan to get full insights from a Build Scan (powered by Develocity).
|
||||
|
||||
BUILD FAILED in 7s
|
||||
|
|
@ -294,6 +294,12 @@ public final class aeo {
|
|||
var10000 = new int[1];
|
||||
var10000[0] = 0;
|
||||
var12 = var10000;
|
||||
final int var7f = var7;
|
||||
final int var8f = var8;
|
||||
final int var9f = var9;
|
||||
final Component var10f = var10;
|
||||
final int[] var11f = var11;
|
||||
final int[] var12f = var12;
|
||||
var1.visit(
|
||||
(var9x, var10x) -> {
|
||||
int var11x = 0;
|
||||
|
|
@ -308,7 +314,7 @@ public final class aeo {
|
|||
while (true) {
|
||||
switch (var17x) {
|
||||
case -1675164980:
|
||||
((MutableComponent)var10).append(Component.literal(var10x.substring(var13x)).setStyle(var9x));
|
||||
((MutableComponent)var10f).append(Component.literal(var10x.substring(var13x)).setStyle(var9x));
|
||||
var17x = 363616346;
|
||||
break;
|
||||
case -1591882668:
|
||||
|
|
@ -326,15 +332,15 @@ public final class aeo {
|
|||
}
|
||||
break;
|
||||
case -1318474814:
|
||||
((MutableComponent)var10).append(
|
||||
((MutableComponent)var10f).append(
|
||||
Component.literal(var10x.substring(0, var12x)).setStyle(var9x)
|
||||
);
|
||||
var17x = 444915518;
|
||||
break;
|
||||
case -1289355717:
|
||||
default:
|
||||
var11x = var11[0];
|
||||
var11[0] = var11x + var10x.length();
|
||||
var11x = var11f[0];
|
||||
var11f[0] = var11x + var10x.length();
|
||||
if (var10x.isEmpty()) {
|
||||
var17x = 1896251337;
|
||||
} else {
|
||||
|
|
@ -343,22 +349,22 @@ public final class aeo {
|
|||
break;
|
||||
case -1153576793:
|
||||
var16x = var18x;
|
||||
((MutableComponent)var10).append(Component.literal(var10x.substring(var14x, var14x + var15x)).setStyle(var9x.withColor(var0.rgb(var16x, var4))));
|
||||
var12[0] = var12[0]
|
||||
((MutableComponent)var10f).append(Component.literal(var10x.substring(var14x, var14x + var15x)).setStyle(var9x.withColor(var0.rgb(var16x, var4))));
|
||||
var12f[0] = var12f[0]
|
||||
+ 1;
|
||||
var14x += var15x;
|
||||
var17x = -1465796259;
|
||||
break;
|
||||
case -645589875:
|
||||
var15x = Character.charCount(var10x.codePointAt(var14x));
|
||||
if (var9 > (-2085610572 ^ 2085610573) + ((-2085610572 & 2085610573) << 1)) {
|
||||
if (var9f > (-2085610572 ^ 2085610573) + ((-2085610572 & 2085610573) << 1)) {
|
||||
var17x = 925096840;
|
||||
} else {
|
||||
var17x = 895433517;
|
||||
}
|
||||
break;
|
||||
case 30620942:
|
||||
if (var11x >= var8) {
|
||||
if (var11x >= var8f) {
|
||||
var17x = 987313897;
|
||||
} else {
|
||||
var17x = 1960178560;
|
||||
|
|
@ -375,15 +381,15 @@ public final class aeo {
|
|||
var17x = -1153576793;
|
||||
break;
|
||||
case 925096840:
|
||||
var18x = (float)var12[0]
|
||||
/ (var9 - ((-1767184395 ^ 1767184396) + ((-1767184395 & 1767184396) << 1)));
|
||||
var18x = (float)var12f[0]
|
||||
/ (var9f - ((-1767184395 ^ 1767184396) + ((-1767184395 & 1767184396) << 1)));
|
||||
var17x = -1153576793;
|
||||
break;
|
||||
case 987313897:
|
||||
((MutableComponent)var10).append(Component.literal(var10x).setStyle(var9x));
|
||||
((MutableComponent)var10f).append(Component.literal(var10x).setStyle(var9x));
|
||||
return Optional.empty();
|
||||
case 1487115970:
|
||||
if (var11x + var10x.length() > var7) {
|
||||
if (var11x + var10x.length() > var7f) {
|
||||
var17x = 30620942;
|
||||
} else {
|
||||
var17x = 987313897;
|
||||
|
|
@ -392,8 +398,8 @@ public final class aeo {
|
|||
case 1896251337:
|
||||
return Optional.empty();
|
||||
case 1960178560:
|
||||
var12x = Math.max(var7 - var11x, (-1863041614 ^ 1863041614) + ((-1863041614 & 1863041614) << 1));
|
||||
var13x = Math.min(var8 - var11x, var10x.length());
|
||||
var12x = Math.max(var7f - var11x, (-1863041614 ^ 1863041614) + ((-1863041614 & 1863041614) << 1));
|
||||
var13x = Math.min(var8f - var11x, var10x.length());
|
||||
if (var12x > 0) {
|
||||
var17x = -1318474814;
|
||||
} else {
|
||||
|
|
|
|||
56
tools/waves_n15.py
Normal file
56
tools/waves_n15.py
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
"""Волна N+15: vfbuild31 — 15 EF в aemo-подобном aeo.java (var7-var12 в visit lambda).
|
||||
Запуск: python3 tools/waves_n15.py"""
|
||||
|
||||
import os, sys
|
||||
|
||||
ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
||||
JAVA = os.path.join(ROOT, "src/main/java")
|
||||
p = os.path.join(JAVA, "defpackage/aeo.java")
|
||||
L = open(p, encoding="utf-8", errors="replace").read().splitlines()
|
||||
ok = True
|
||||
|
||||
|
||||
def edit(ln, old, new):
|
||||
global ok
|
||||
i = ln - 1
|
||||
if i < len(L) and old in L[i]:
|
||||
L[i] = L[i].replace(old, new, 1)
|
||||
elif i < len(L) and new in L[i]:
|
||||
pass
|
||||
else:
|
||||
ok = False
|
||||
print(f"MISS {ln}: {old!r} got {(L[i] if i < len(L) else '<oob>').strip()!r}")
|
||||
|
||||
|
||||
edit(396, "Math.min(var8 - var11x,", "Math.min(var8f - var11x,")
|
||||
edit(395, "Math.max(var7 - var11x,", "Math.max(var7f - var11x,")
|
||||
edit(386, "> var7)", "> var7f)")
|
||||
edit(383, "((MutableComponent)var10).append(", "((MutableComponent)var10f).append(")
|
||||
edit(379, "/ (var9 - ", "/ (var9f - ")
|
||||
edit(378, "(float)var12[0]", "(float)var12f[0]")
|
||||
edit(361, ">= var8)", ">= var8f)")
|
||||
edit(354, "if (var9 > ", "if (var9f > ")
|
||||
edit(347, "var12[0] = var12[0]", "var12f[0] = var12f[0]")
|
||||
edit(346, "((MutableComponent)var10).append(", "((MutableComponent)var10f).append(")
|
||||
edit(337, "var11[0] = var11x +", "var11f[0] = var11x +")
|
||||
edit(336, "var11x = var11[0];", "var11x = var11f[0];")
|
||||
edit(329, "((MutableComponent)var10).append(", "((MutableComponent)var10f).append(")
|
||||
edit(311, "((MutableComponent)var10).append(", "((MutableComponent)var10f).append(")
|
||||
|
||||
INS = [
|
||||
" final int var7f = var7;",
|
||||
" final int var8f = var8;",
|
||||
" final int var9f = var9;",
|
||||
" final Component var10f = var10;",
|
||||
" final int[] var11f = var11;",
|
||||
" final int[] var12f = var12;",
|
||||
]
|
||||
if L[296].strip().startswith("var10.visit(") and "final int var7f" not in L[290:297]:
|
||||
L[296:296] = INS
|
||||
else:
|
||||
ok = False
|
||||
print(f"INSERT-MISS: L297 = {L[296].strip()[:60]!r}")
|
||||
|
||||
open(p, "w", encoding="utf-8").write("\n".join(L) + "\n")
|
||||
print("OK" if ok else "PROBLEMS")
|
||||
sys.exit(0 if ok else 1)
|
||||
Loading…
Add table
Add a link
Reference in a new issue