From c5a231465cd3ea26f2b48ccd2cc48a493d3a3fff Mon Sep 17 00:00:00 2001 From: loki5512344 Date: Sat, 3 Oct 2026 15:37:22 +0200 Subject: [PATCH] wave N+5: vfbuild20 fixes (zh EF var2 in 4 removeIf lambdas) --- build-logs/vfbuild20.log | 33 +++++++++++++++++++++++++++ src/main/java/defpackage/zh.java | 9 ++++---- tools/waves_n5.py | 38 ++++++++++++++++++++++++++++++++ 3 files changed, 76 insertions(+), 4 deletions(-) create mode 100644 build-logs/vfbuild20.log create mode 100644 tools/waves_n5.py diff --git a/build-logs/vfbuild20.log b/build-logs/vfbuild20.log new file mode 100644 index 0000000..7fb0a91 --- /dev/null +++ b/build-logs/vfbuild20.log @@ -0,0 +1,33 @@ +/storage/aboba/evovis-client/src/main/java/defpackage/zh.java:1072: error: local variables referenced from a lambda expression must be final or effectively final + if (!var2.contains(var1x)) { + ^ +/storage/aboba/evovis-client/src/main/java/defpackage/zh.java:1095: error: local variables referenced from a lambda expression must be final or effectively final + if (!var2.contains(var1x)) { + ^ +/storage/aboba/evovis-client/src/main/java/defpackage/zh.java:1122: error: local variables referenced from a lambda expression must be final or effectively final + if (!var2.contains(var1x)) { + ^ +/storage/aboba/evovis-client/src/main/java/defpackage/zh.java:1158: error: local variables referenced from a lambda expression must be final or effectively final + if (!var2.contains(var1x)) { + ^ +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. +4 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/zh.java:1072: error: local variables referenced from a lambda expression must be final or effectively final + if (!var2.contains(var1x)) { + ^ + 4 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 6s diff --git a/src/main/java/defpackage/zh.java b/src/main/java/defpackage/zh.java index 015d3fe..c8b9651 100644 --- a/src/main/java/defpackage/zh.java +++ b/src/main/java/defpackage/zh.java @@ -1057,6 +1057,7 @@ public final class zh { case -1832322580: this.knownVersion = var1.version(); var2 = var1.getThemes(); + final List var2f = var2; this.physics.keySet().removeIf(var1x -> { int var3x = 0; int var2x = -762662513; @@ -1069,7 +1070,7 @@ public final class zh { break; case -762662513: default: - if (!var2.contains(var1x)) { + if (!var2f.contains(var1x)) { var2x = -803275119; } else { var2x = -422643490; @@ -1092,7 +1093,7 @@ public final class zh { switch (var2x) { case 713869619: default: - if (!var2.contains(var1x)) { + if (!var2f.contains(var1x)) { var2x = 909700049; } else { var2x = 939847377; @@ -1119,7 +1120,7 @@ public final class zh { switch (var2x) { case -467296252: default: - if (!var2.contains(var1x)) { + if (!var2f.contains(var1x)) { var2x = 2084960832; } else { var2x = 1695298005; @@ -1155,7 +1156,7 @@ public final class zh { return (boolean)((var3x) != 0); case 1957571895: default: - if (!var2.contains(var1x)) { + if (!var2f.contains(var1x)) { var2x = -1851697449; } else { var2x = -1851907591; diff --git a/tools/waves_n5.py b/tools/waves_n5.py new file mode 100644 index 0000000..8bd5bf6 --- /dev/null +++ b/tools/waves_n5.py @@ -0,0 +1,38 @@ +"""Волна N+5: vfbuild20 — 4 EF в zh.java (var2 в 4 removeIf-лямбдах). Запуск: python3 tools/waves_n5.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/zh.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 '').strip()!r}") + + +for ln in (1158, 1122, 1095, 1072): + edit(ln, "if (!var2.contains(var1x)) {", "if (!var2f.contains(var1x)) {") +# insert before 1060 (after var2 = var1.getThemes(); at 1059) +if ( + L[1059].strip().startswith("this.physics.keySet().removeIf(") + and "final List var2f" not in L[1057:1060] +): + L.insert(1059, " final List var2f = var2;") +else: + ok = False + print(f"INSERT-MISS: line1060 = {L[1059].strip()!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)