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 — No state hints when an overload with the same arity hides an inherited refinement · Issue #463 · liquid-java/liquidjava Open Labels bugSomething isn't workingSomething isn't working DescriptionImpact: a refinement in a superclass's spec is not used for hints on a subclass receiver when some class in between declares an overload with the same name and number of parameters. The error has no hints at all, although the fix is a single call the spec describes. Minimal reproducer // Refs.java @StateSet({"noPopup", "hasPopup"}) @ExternalRefinementsFor("java.awt.Component") public interface Refs { @StateRefinement(to = "hasPopup(this)") void add(java.awt.PopupMenu popup); } @ExternalRefinementsFor("java.awt.Frame") interface FrameRefs { @StateRefinement(to = "noPopup(this)") void Frame(String title); @StateRefinement(from = "hasPopup(this)") void setState(int state); } // Use.java public class Use { static void hint() { Frame f = new Frame("x"); f.setState(0); // error, no hints } static void followHint() { Frame f = new Frame("x"); f.add(new PopupMenu()); f.setState(0); // verifies } } Actual (main @ 19991d3, and with the PR for #456): Expected: To get there, Depends on the PR for #456. Activity
MetadataMetadataAssigneesLabelsbugSomething 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. |