Bug 18: ? ext/sup ty1 = ? ext/sup ty2 wird reduziert zu ty1 = ty2

This commit is contained in:
Martin Plümicke 2015-04-01 01:28:15 +02:00
parent f66150a1e7
commit c080f452ae

View File

@ -622,7 +622,7 @@ public class Unify
//Schritt 4, Teil 2: Kartesisches Produkt bilden.
//Hier wird aus den in Schritt 4, Teil 1 erzeugten Vektoren das Kartesische Produkt gebilden.
Vector<Pair> helpvp;
Vector<Vector<Pair>> bigCartProductErg = new Vector<Vector<Pair>>();
Vector<Vector<Pair>> bigCartProductErg = new Vector<Vector<Pair>>();
bigCartProductErg.addElement(copyVectorPair(Eq1));
for (Vector<Vector<Pair>> vecvecpair : cartProduktSets)
@ -1282,6 +1282,13 @@ throws MatchException
//erledigt 15-02-03
if(P.OperatorEqual())
{
if((P.TA1 instanceof ExtendsWildcardType && P.TA2 instanceof ExtendsWildcardType) || //PL 15-03-31 eingefuegt
(P.TA1 instanceof SuperWildcardType && P.TA2 instanceof SuperWildcardType))
{
H.add(new Pair(((WildcardType)P.TA1).GetWildcardType(), ((WildcardType)P.TA2).GetWildcardType(), PairOperator.Equal));
bRegel = true;
continue;
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//PL 15-03-05: Ich halte dies fuer falsch
////PL 15-02-08 bisher mit keinem Beispiel getestet