Es ist SI-6948, einen Fehler , der durch fundamentale verursacht wurde Scala Gebrochenheit.
Hier ist eine schöne lange Commit-Nachricht mit einigen zusätzlichen Erklärungen.
Aus irgendeinem Grund erzeugt die Inferenz für shuffle
ein anderes Ergebnis für Inclusive
als für Range
.
Der Grund, warum toSeq
in Range
resultiert, ist, dass seine Definition den Typ unschuldig verengt:
Es gibt ein offenes Problem, stattdessen den Ergebnistyp der überschriebenen Methode abzuleiten.
Zeigen, dass die REPL nicht lügt:
%Vor%Snippen, um zu sehen, was gefolgert wurde und was implizit verwendet wurde:
%Vor%statt, was du gehofft hast:
%Vor% Mit -Ytyper-debug
gibt es einen zusätzlichen Typ param A
, der es für Inclusive
weiterlaufen lässt, aber ich weiß nicht, woher das kommt.
Ist es ein Fehler oder ein Verhalten?
Machen Sie es deutlich:
%Vor%