Interger <* Comparable<Integer> #258

Open
opened 2018-03-28 22:22:29 +00:00 by pl · 1 comment
Owner

Problem: Für Integer <. A wird vermutlich für in greater { Integer, Comparable, Comparable<? extends Integer>, Comparable<? extends Comparable>, usw.} erzeugt.

Lösungsansatz (geht aber nicht)
für rekursiven Klassendeklarations-Vererbungen sollte für

Integer <. A

immer nur A = Integer und A = Comparable generiert werden.

Wenn dann

A <. Comparable<? extends Comparable>

gelöst werden muss, wird mit den adapt-Regeln eine Lösung gefunden.

Aber mit

Comparable<? extends Integer> <. A

klappt es nicht mehr.

Problem: Für Integer <. A wird vermutlich für in greater { Integer, Comparable<Integer>, Comparable<? extends Integer>, Comparable<? extends Comparable<Integer>>, usw.} erzeugt. Lösungsansatz (geht aber nicht) für rekursiven Klassendeklarations-Vererbungen sollte für Integer <. A immer nur A = Integer und A = Comparable<Integer> generiert werden. Wenn dann A <. Comparable<? extends Comparable<Integer>> gelöst werden muss, wird mit den adapt-Regeln eine Lösung gefunden. Aber mit Comparable<? extends Integer> <. A klappt es nicht mehr.
Author
Owner

Das Problem ist behoben, in dem rekursive Aufruf in der Methode greater ausgeschlosen sind.

Das reduziert Lösungen

Integer <. Comparable<Comparable>

müsste über adapt gehen

Aber
Integer <. a
Comparable <. a

würde zu einem Fehler führen, da

Integer <. a wird zu a =. Integer,

dann wird

Comparable <. a zu Comparable <. Integer

=> Fehler

Das Problem ist behoben, in dem rekursive Aufruf in der Methode greater ausgeschlosen sind. Das reduziert Lösungen Integer <. Comparable<Comparable<Integer>> müsste über adapt gehen Aber Integer <. a Comparable<Integer> <. a würde zu einem Fehler führen, da Integer <. a wird zu a =. Integer, dann wird Comparable<Integer> <. a zu Comparable<Integer> <. Integer => Fehler
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: JavaTX/JavaCompilerCore#258
No description provided.