GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing github.com — Internal error "Expr cannot be cast to BoolExpr" on a local assigned from an array element (`Res r = rs[0]`) · Issue #437 · liquid-java/liquidjava Open Labels bugSomething isn't workingSomething isn't working DescriptionImpact: internal error on any check that involves a local holding an array element. A check that should pass fails (false error), and a real violation there is shown as an internal error instead of a refinement or state error. Description
Minimal reproducer (typestate) import liquidjava.specification.StateRefinement; import liquidjava.specification.StateSet; @StateSet({"open", "closed"}) class Res { @StateRefinement(to = "open(this)") public Res() {} @StateRefinement(from = "open(this)") public void read() {} @StateRefinement(from = "open(this)", to = "closed(this)") public void close() {} } public class Repro { void f(Res[] rs) { Res r = rs[0]; r.close(); r.read(); } } Expected A State Refinement Error at Actual Control: the same calls on a parameter Smaller form, without typestate import liquidjava.specification.Refinement; public class Repro { static void positive(@Refinement("_ > 0") int x) {} void f(int[] xs) { int c = xs[0]; positive(c); } } The reviewers' forms Reproduced on Context Found while reviewing #432. Related: #425 (crash on an array read whose element type cannot be resolved). 🤖 Generated with Claude Code ActivityMetadataMetadataAssigneesLabelsbugSomething isn't workingSomething isn't working TypeProjectsMilestoneRelationshipsDevelopmentIssue actions |
| You are visitor 01402503 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |