Verifier crashes on a call to a varargs method with two or more arguments
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 55/100
Rechercherichtung
Start by running the minimal reproducer in main and trace how the verifier checks the count("a", "b") invocation against the varargs method. The issue does not name a source file or test, so locate the invocation-checking code and its existing tests. Done means the reproducer prints Correct! Passed Verification. instead of crashing.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Impact: verification stops with an internal error. Found while building a test fixture; no example blocked yet.
Description
Calling a user-defined varargs method with two or more arguments crashes (Index 1 out of bounds for length 1): the arguments are matched one-to-one with the single array parameter.
Minimal reproducer
public class Repro {
static int count(String... names) {
return names.length;
}
public static void main(String[] args) {
int n = count("a", "b");
System.out.println(n);
}
}
Expected
Correct! Passed Verification.
Actual
Exception in thread "main" java.lang.RuntimeException:
Error while checking CtMethodImpl
on main(String[] args) {
with
Error while checking CtBlockImpl
on {
with
Error while checking CtLocalVariableImpl
on n = count("a", "b");
with
Error while checking CtInvocationImpl
on count("a", "b");
with Index 1 out of bounds for length 1
Caused by: java.lang.RuntimeException:
Reproduced on main at 0472025e (liquidjava-verifier 0.0.35); also on fbfb4e23 and 0.0.33 in the original form.
Context
Found while turning bugs mined from real open-source Java (fixed upstream or still present) into study examples for the error-message study.
- Vorherrschende Sprache
- Java
- Sterne
- 67
- Forks
- 36
- Ø Merge
- 2 T. 3 Std.
- Gemergte PRs (30 T.)
- 29
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus liquid-java/liquidjava
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
liquid-java/liquidjava#388 ·
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
liquid-java/liquidjava#373 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
liquid-java/liquidjava#321 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 62/100
liquid-java/liquidjava#390 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Verifier crashes on `!` (or another unary operator) applied to a call whose type cannot be resolvedOffenbug
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 65/100
liquid-java/liquidjava#389 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in liquid-java/liquidjava
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 85/100
objectionary/eo-graphs#80 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
-
enhancement good first issue
Schwierigkeit 2/5 Ein halber Tag Anfängerfreundlichkeit 66/100
apache/fineract-consumer-facing#175 ·
Maintainer antworten meist innerhalb von 1 Tag
-
[BUG] 订单:会员凭订单号即可取消其他会员的待付款订单(取消接口不校验订单归属)Evtl. vergeben @dadiyang hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
macrozheng/mall#1016 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100