Skip to content

Commit 0f7d251

Browse files
committed
Make dotty compile with 2.12.2
1 parent 91d3ec1 commit 0f7d251

26 files changed

+124
-72
lines changed

compiler/test/dotty/tools/ShowClassTests.scala

+8-8
Original file line numberDiff line numberDiff line change
@@ -64,14 +64,14 @@ class ShowClassTests extends DottyTest {
6464
if (blackList contains path)
6565
debug_println(s"blacklisted package: $path")
6666
else {
67-
for (
68-
sym <- pkg.info.decls if sym.owner == pkg.moduleClass && !(sym.name.toString contains '$')
69-
) {
70-
debug_println(s"showing $sym in ${pkg.fullName}")
71-
if (sym is PackageVal) showPackage(sym.asTerm)
72-
else if (sym.isClass && !(sym is Module)) showClass(sym)
73-
else if (sym is ModuleVal) showClass(sym.moduleClass)
74-
}
67+
pkg.info.decls
68+
.filter(sym => sym.owner == pkg.moduleClass && !(sym.name.toString contains '$'))
69+
.foreach { sym =>
70+
debug_println(s"showing $sym in ${pkg.fullName}")
71+
if (sym is PackageVal) showPackage(sym.asTerm)
72+
else if (sym.isClass && !(sym is Module)) showClass(sym)
73+
else if (sym is ModuleVal) showClass(sym.moduleClass)
74+
}
7575
}
7676
}
7777

library/src/dotty/runtime/LazyVals.scala

+13-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,19 @@ import scala.annotation.tailrec
66
* Helper methods used in thread-safe lazy vals.
77
*/
88
object LazyVals {
9-
private val unsafe = scala.concurrent.util.Unsafe.instance
9+
private val unsafe: sun.misc.Unsafe =
10+
classOf[sun.misc.Unsafe].getDeclaredFields.find { field =>
11+
field.getType == classOf[sun.misc.Unsafe] && {
12+
field.setAccessible(true)
13+
true
14+
}
15+
}
16+
.map(_.get(null).asInstanceOf[sun.misc.Unsafe])
17+
.getOrElse {
18+
throw new ExceptionInInitializerError {
19+
new IllegalStateException("Can't find instance of sun.misc.Unsafe")
20+
}
21+
}
1022

1123
final val BITS_PER_LAZY_VAL = 2L
1224
final val LAZY_VAL_MASK = 3L

library/src/scala/compat/java8/JFunction1.java

+2-3
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,12 @@ public interface JFunction1<T1, R> extends scala.Function1<T1, R> {
1313
@Override
1414
@SuppressWarnings("unchecked")
1515
default <A> scala.Function1<T1, A> andThen(scala.Function1<R, A> g) {
16-
return scala.Function1$class.andThen(this, g);
16+
return x -> g.apply(this.apply(x));
1717
}
18-
1918
@Override
2019
@SuppressWarnings("unchecked")
2120
default <A> scala.Function1<A, R> compose(scala.Function1<A, T1> g) {
22-
return scala.Function1$class.compose(this, g);
21+
return x -> this.apply(g.apply(x));
2322
}
2423
@SuppressWarnings("unchecked")
2524
default void apply$mcVI$sp(int v1) {

library/src/scala/compat/java8/JFunction10.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ public interface JFunction10<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, R> extends
1212

1313
@SuppressWarnings("unchecked")
1414
default scala.Function1<T1, scala.Function1<T2, scala.Function1<T3, scala.Function1<T4, scala.Function1<T5, scala.Function1<T6, scala.Function1<T7, scala.Function1<T8, scala.Function1<T9, scala.Function1<T10, R>>>>>>>>>> curried() {
15-
return scala.Function10$class.curried(this);
15+
throw new UnsupportedOperationException("todo");
1616
}
1717

1818
@SuppressWarnings("unchecked")
1919
default scala.Function1<scala.Tuple10<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>, R> tupled() {
20-
return scala.Function10$class.tupled(this);
20+
throw new UnsupportedOperationException("todo");
2121
}
2222

2323

library/src/scala/compat/java8/JFunction11.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ public interface JFunction11<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, R> ex
1212

1313
@SuppressWarnings("unchecked")
1414
default scala.Function1<T1, scala.Function1<T2, scala.Function1<T3, scala.Function1<T4, scala.Function1<T5, scala.Function1<T6, scala.Function1<T7, scala.Function1<T8, scala.Function1<T9, scala.Function1<T10, scala.Function1<T11, R>>>>>>>>>>> curried() {
15-
return scala.Function11$class.curried(this);
15+
throw new UnsupportedOperationException("todo");
1616
}
1717

1818
@SuppressWarnings("unchecked")
1919
default scala.Function1<scala.Tuple11<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>, R> tupled() {
20-
return scala.Function11$class.tupled(this);
20+
throw new UnsupportedOperationException("todo");
2121
}
2222

2323

library/src/scala/compat/java8/JFunction12.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ public interface JFunction12<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12,
1212

1313
@SuppressWarnings("unchecked")
1414
default scala.Function1<T1, scala.Function1<T2, scala.Function1<T3, scala.Function1<T4, scala.Function1<T5, scala.Function1<T6, scala.Function1<T7, scala.Function1<T8, scala.Function1<T9, scala.Function1<T10, scala.Function1<T11, scala.Function1<T12, R>>>>>>>>>>>> curried() {
15-
return scala.Function12$class.curried(this);
15+
throw new UnsupportedOperationException("todo");
1616
}
1717

1818
@SuppressWarnings("unchecked")
1919
default scala.Function1<scala.Tuple12<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>, R> tupled() {
20-
return scala.Function12$class.tupled(this);
20+
throw new UnsupportedOperationException("todo");
2121
}
2222

2323

library/src/scala/compat/java8/JFunction13.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ public interface JFunction13<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12,
1212

1313
@SuppressWarnings("unchecked")
1414
default scala.Function1<T1, scala.Function1<T2, scala.Function1<T3, scala.Function1<T4, scala.Function1<T5, scala.Function1<T6, scala.Function1<T7, scala.Function1<T8, scala.Function1<T9, scala.Function1<T10, scala.Function1<T11, scala.Function1<T12, scala.Function1<T13, R>>>>>>>>>>>>> curried() {
15-
return scala.Function13$class.curried(this);
15+
throw new UnsupportedOperationException("todo");
1616
}
1717

1818
@SuppressWarnings("unchecked")
1919
default scala.Function1<scala.Tuple13<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>, R> tupled() {
20-
return scala.Function13$class.tupled(this);
20+
throw new UnsupportedOperationException("todo");
2121
}
2222

2323

library/src/scala/compat/java8/JFunction14.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ public interface JFunction14<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12,
1212

1313
@SuppressWarnings("unchecked")
1414
default scala.Function1<T1, scala.Function1<T2, scala.Function1<T3, scala.Function1<T4, scala.Function1<T5, scala.Function1<T6, scala.Function1<T7, scala.Function1<T8, scala.Function1<T9, scala.Function1<T10, scala.Function1<T11, scala.Function1<T12, scala.Function1<T13, scala.Function1<T14, R>>>>>>>>>>>>>> curried() {
15-
return scala.Function14$class.curried(this);
15+
throw new UnsupportedOperationException("todo");
1616
}
1717

1818
@SuppressWarnings("unchecked")
1919
default scala.Function1<scala.Tuple14<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>, R> tupled() {
20-
return scala.Function14$class.tupled(this);
20+
throw new UnsupportedOperationException("todo");
2121
}
2222

2323

library/src/scala/compat/java8/JFunction15.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ public interface JFunction15<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12,
1212

1313
@SuppressWarnings("unchecked")
1414
default scala.Function1<T1, scala.Function1<T2, scala.Function1<T3, scala.Function1<T4, scala.Function1<T5, scala.Function1<T6, scala.Function1<T7, scala.Function1<T8, scala.Function1<T9, scala.Function1<T10, scala.Function1<T11, scala.Function1<T12, scala.Function1<T13, scala.Function1<T14, scala.Function1<T15, R>>>>>>>>>>>>>>> curried() {
15-
return scala.Function15$class.curried(this);
15+
throw new UnsupportedOperationException("todo");
1616
}
1717

1818
@SuppressWarnings("unchecked")
1919
default scala.Function1<scala.Tuple15<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>, R> tupled() {
20-
return scala.Function15$class.tupled(this);
20+
throw new UnsupportedOperationException("todo");
2121
}
2222

2323

library/src/scala/compat/java8/JFunction16.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ public interface JFunction16<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12,
1212

1313
@SuppressWarnings("unchecked")
1414
default scala.Function1<T1, scala.Function1<T2, scala.Function1<T3, scala.Function1<T4, scala.Function1<T5, scala.Function1<T6, scala.Function1<T7, scala.Function1<T8, scala.Function1<T9, scala.Function1<T10, scala.Function1<T11, scala.Function1<T12, scala.Function1<T13, scala.Function1<T14, scala.Function1<T15, scala.Function1<T16, R>>>>>>>>>>>>>>>> curried() {
15-
return scala.Function16$class.curried(this);
15+
throw new UnsupportedOperationException("todo");
1616
}
1717

1818
@SuppressWarnings("unchecked")
1919
default scala.Function1<scala.Tuple16<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16>, R> tupled() {
20-
return scala.Function16$class.tupled(this);
20+
throw new UnsupportedOperationException("todo");
2121
}
2222

2323

library/src/scala/compat/java8/JFunction17.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ public interface JFunction17<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12,
1212

1313
@SuppressWarnings("unchecked")
1414
default scala.Function1<T1, scala.Function1<T2, scala.Function1<T3, scala.Function1<T4, scala.Function1<T5, scala.Function1<T6, scala.Function1<T7, scala.Function1<T8, scala.Function1<T9, scala.Function1<T10, scala.Function1<T11, scala.Function1<T12, scala.Function1<T13, scala.Function1<T14, scala.Function1<T15, scala.Function1<T16, scala.Function1<T17, R>>>>>>>>>>>>>>>>> curried() {
15-
return scala.Function17$class.curried(this);
15+
throw new UnsupportedOperationException("todo");
1616
}
1717

1818
@SuppressWarnings("unchecked")
1919
default scala.Function1<scala.Tuple17<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17>, R> tupled() {
20-
return scala.Function17$class.tupled(this);
20+
throw new UnsupportedOperationException("todo");
2121
}
2222

2323

library/src/scala/compat/java8/JFunction18.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ public interface JFunction18<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12,
1212

1313
@SuppressWarnings("unchecked")
1414
default scala.Function1<T1, scala.Function1<T2, scala.Function1<T3, scala.Function1<T4, scala.Function1<T5, scala.Function1<T6, scala.Function1<T7, scala.Function1<T8, scala.Function1<T9, scala.Function1<T10, scala.Function1<T11, scala.Function1<T12, scala.Function1<T13, scala.Function1<T14, scala.Function1<T15, scala.Function1<T16, scala.Function1<T17, scala.Function1<T18, R>>>>>>>>>>>>>>>>>> curried() {
15-
return scala.Function18$class.curried(this);
15+
throw new UnsupportedOperationException("todo");
1616
}
1717

1818
@SuppressWarnings("unchecked")
1919
default scala.Function1<scala.Tuple18<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18>, R> tupled() {
20-
return scala.Function18$class.tupled(this);
20+
throw new UnsupportedOperationException("todo");
2121
}
2222

2323

library/src/scala/compat/java8/JFunction19.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ public interface JFunction19<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12,
1212

1313
@SuppressWarnings("unchecked")
1414
default scala.Function1<T1, scala.Function1<T2, scala.Function1<T3, scala.Function1<T4, scala.Function1<T5, scala.Function1<T6, scala.Function1<T7, scala.Function1<T8, scala.Function1<T9, scala.Function1<T10, scala.Function1<T11, scala.Function1<T12, scala.Function1<T13, scala.Function1<T14, scala.Function1<T15, scala.Function1<T16, scala.Function1<T17, scala.Function1<T18, scala.Function1<T19, R>>>>>>>>>>>>>>>>>>> curried() {
15-
return scala.Function19$class.curried(this);
15+
throw new UnsupportedOperationException("todo");
1616
}
1717

1818
@SuppressWarnings("unchecked")
1919
default scala.Function1<scala.Tuple19<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19>, R> tupled() {
20-
return scala.Function19$class.tupled(this);
20+
throw new UnsupportedOperationException("todo");
2121
}
2222

2323

library/src/scala/compat/java8/JFunction2.java

+13-2
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,30 @@
55

66
package scala.compat.java8;
77

8+
import scala.MatchError;
9+
810
@FunctionalInterface
911
public interface JFunction2<T1, T2, R> extends scala.Function2<T1, T2, R> {
1012
default void $init$() {
1113
};
1214

1315
@SuppressWarnings("unchecked")
1416
default scala.Function1<T1, scala.Function1<T2, R>> curried() {
15-
return scala.Function2$class.curried(this);
17+
return x1 -> x2 -> apply(x1, x2);
1618
}
1719

1820
@SuppressWarnings("unchecked")
1921
default scala.Function1<scala.Tuple2<T1, T2>, R> tupled() {
20-
return scala.Function2$class.tupled(this);
22+
return x0$1 -> {
23+
if (x0$1 == null) {
24+
throw new MatchError(x0$1);
25+
}
26+
T1 x1 = x0$1._1();
27+
T2 x2 = x0$1._2();
28+
R r = this.apply(x1, x2);
29+
return r;
30+
}
31+
;
2132
}
2233

2334
@SuppressWarnings("unchecked")

library/src/scala/compat/java8/JFunction20.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ public interface JFunction20<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12,
1212

1313
@SuppressWarnings("unchecked")
1414
default scala.Function1<T1, scala.Function1<T2, scala.Function1<T3, scala.Function1<T4, scala.Function1<T5, scala.Function1<T6, scala.Function1<T7, scala.Function1<T8, scala.Function1<T9, scala.Function1<T10, scala.Function1<T11, scala.Function1<T12, scala.Function1<T13, scala.Function1<T14, scala.Function1<T15, scala.Function1<T16, scala.Function1<T17, scala.Function1<T18, scala.Function1<T19, scala.Function1<T20, R>>>>>>>>>>>>>>>>>>>> curried() {
15-
return scala.Function20$class.curried(this);
15+
throw new UnsupportedOperationException("todo");
1616
}
1717

1818
@SuppressWarnings("unchecked")
1919
default scala.Function1<scala.Tuple20<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20>, R> tupled() {
20-
return scala.Function20$class.tupled(this);
20+
throw new UnsupportedOperationException("todo");
2121
}
2222

2323

library/src/scala/compat/java8/JFunction21.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ public interface JFunction21<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12,
1212

1313
@SuppressWarnings("unchecked")
1414
default scala.Function1<T1, scala.Function1<T2, scala.Function1<T3, scala.Function1<T4, scala.Function1<T5, scala.Function1<T6, scala.Function1<T7, scala.Function1<T8, scala.Function1<T9, scala.Function1<T10, scala.Function1<T11, scala.Function1<T12, scala.Function1<T13, scala.Function1<T14, scala.Function1<T15, scala.Function1<T16, scala.Function1<T17, scala.Function1<T18, scala.Function1<T19, scala.Function1<T20, scala.Function1<T21, R>>>>>>>>>>>>>>>>>>>>> curried() {
15-
return scala.Function21$class.curried(this);
15+
throw new UnsupportedOperationException("todo");
1616
}
1717

1818
@SuppressWarnings("unchecked")
1919
default scala.Function1<scala.Tuple21<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21>, R> tupled() {
20-
return scala.Function21$class.tupled(this);
20+
throw new UnsupportedOperationException("todo");
2121
}
2222

2323

library/src/scala/compat/java8/JFunction22.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ public interface JFunction22<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12,
1212

1313
@SuppressWarnings("unchecked")
1414
default scala.Function1<T1, scala.Function1<T2, scala.Function1<T3, scala.Function1<T4, scala.Function1<T5, scala.Function1<T6, scala.Function1<T7, scala.Function1<T8, scala.Function1<T9, scala.Function1<T10, scala.Function1<T11, scala.Function1<T12, scala.Function1<T13, scala.Function1<T14, scala.Function1<T15, scala.Function1<T16, scala.Function1<T17, scala.Function1<T18, scala.Function1<T19, scala.Function1<T20, scala.Function1<T21, scala.Function1<T22, R>>>>>>>>>>>>>>>>>>>>>> curried() {
15-
return scala.Function22$class.curried(this);
15+
throw new UnsupportedOperationException("todo");
1616
}
1717

1818
@SuppressWarnings("unchecked")
1919
default scala.Function1<scala.Tuple22<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22>, R> tupled() {
20-
return scala.Function22$class.tupled(this);
20+
throw new UnsupportedOperationException("todo");
2121
}
2222

2323

library/src/scala/compat/java8/JFunction3.java

+14-2
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,31 @@
55

66
package scala.compat.java8;
77

8+
import scala.MatchError;
9+
810
@FunctionalInterface
911
public interface JFunction3<T1, T2, T3, R> extends scala.Function3<T1, T2, T3, R> {
1012
default void $init$() {
1113
};
1214

1315
@SuppressWarnings("unchecked")
1416
default scala.Function1<T1, scala.Function1<T2, scala.Function1<T3, R>>> curried() {
15-
return scala.Function3$class.curried(this);
17+
return x1 -> x2 -> x3 -> apply(x1, x2, x3);
1618
}
1719

1820
@SuppressWarnings("unchecked")
1921
default scala.Function1<scala.Tuple3<T1, T2, T3>, R> tupled() {
20-
return scala.Function3$class.tupled(this);
22+
return x0$1 -> {
23+
if (x0$1 == null) {
24+
throw new MatchError(x0$1);
25+
}
26+
T1 x1 = x0$1._1();
27+
T2 x2 = x0$1._2();
28+
T3 x3 = x0$1._3();
29+
R r = this.apply(x1, x2, x3);
30+
return r;
31+
}
32+
;
2133
}
2234

2335

library/src/scala/compat/java8/JFunction4.java

+15-2
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,32 @@
55

66
package scala.compat.java8;
77

8+
import scala.MatchError;
9+
810
@FunctionalInterface
911
public interface JFunction4<T1, T2, T3, T4, R> extends scala.Function4<T1, T2, T3, T4, R> {
1012
default void $init$() {
1113
};
1214

1315
@SuppressWarnings("unchecked")
1416
default scala.Function1<T1, scala.Function1<T2, scala.Function1<T3, scala.Function1<T4, R>>>> curried() {
15-
return scala.Function4$class.curried(this);
17+
return x1 -> x2 -> x3 -> x4 -> apply(x1, x2, x3, x4);
1618
}
1719

1820
@SuppressWarnings("unchecked")
1921
default scala.Function1<scala.Tuple4<T1, T2, T3, T4>, R> tupled() {
20-
return scala.Function4$class.tupled(this);
22+
return x0$1 -> {
23+
if (x0$1 == null) {
24+
throw new MatchError(x0$1);
25+
}
26+
T1 x1 = x0$1._1();
27+
T2 x2 = x0$1._2();
28+
T3 x3 = x0$1._3();
29+
T4 x4 = x0$1._4();
30+
R r = this.apply(x1, x2, x3, x4);
31+
return r;
32+
}
33+
;
2134
}
2235

2336

library/src/scala/compat/java8/JFunction5.java

+4-2
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,21 @@
55

66
package scala.compat.java8;
77

8+
import scala.MatchError;
9+
810
@FunctionalInterface
911
public interface JFunction5<T1, T2, T3, T4, T5, R> extends scala.Function5<T1, T2, T3, T4, T5, R> {
1012
default void $init$() {
1113
};
1214

1315
@SuppressWarnings("unchecked")
1416
default scala.Function1<T1, scala.Function1<T2, scala.Function1<T3, scala.Function1<T4, scala.Function1<T5, R>>>>> curried() {
15-
return scala.Function5$class.curried(this);
17+
throw new UnsupportedOperationException("todo");
1618
}
1719

1820
@SuppressWarnings("unchecked")
1921
default scala.Function1<scala.Tuple5<T1, T2, T3, T4, T5>, R> tupled() {
20-
return scala.Function5$class.tupled(this);
22+
throw new UnsupportedOperationException("todo");
2123
}
2224

2325

0 commit comments

Comments
 (0)