wave N+15: aeo EF var7-var12 copies in visit lambda (guard fix)

This commit is contained in:
loki5512344 2026-10-03 15:58:14 +02:00
parent ae97ccf38c
commit 4749ef4bac
Signed by: boba
GPG key ID: 253067914055423B
3 changed files with 142 additions and 14 deletions

66
build-logs/vfbuild31.log Normal file
View 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

View file

@ -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
View 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)