Skip to content

Commit bb7069c

Browse files
committed
More reshuffling of scala-collections lists
1 parent 1f2f227 commit bb7069c

File tree

2 files changed

+25
-96
lines changed

2 files changed

+25
-96
lines changed

compiler/test/dotc/scala-collections.blacklist

Lines changed: 12 additions & 94 deletions
Original file line numberDiff line numberDiff line change
@@ -7,47 +7,8 @@
77
# (This is intended)
88

99
../scala-scala/src/library/scala/collection/generic/ParSetFactory.scala
10-
11-
#../scala-scala/src/library/scala/collection/mutable/DefaultEntry.scala
12-
# 22 | "(kv: " + key + ", " + value + ")" + (if (next != null) " -> " + next.toString else "")
13-
# | ^^^^
14-
# | cyclic reference involving method toString
15-
# (Fixed by adding type annotation to DefaultEntry)
16-
17-
#../scala-scala/src/library/scala/collection/mutable/LinkedHashMap.scala
18-
# 102 | protected class FilteredKeys(p: A => Boolean) extends super.FilteredKeys(p) {
19-
# | ^^^^^^^^^^^^^^^^^^^^
20-
# | cyclic inheritance: class FilteredKeys extends itself
21-
# ...
22-
# (Fixed by rewriring inner class names in LinkedHashMap)
23-
24-
#../scala-scala/src/library/scala/collection/mutable/ObservableMap.scala
25-
# assertion failed
26-
27-
#../scala-scala/src/library/scala/collection/mutable/ObservableSet.scala
28-
# 35 | publish(new Include(elem) with Undoable { def undo = -=(elem) })
29-
# | ^
30-
# | overriding method undo in trait Undoable of type ()Unit;
31-
# | method undo of type => scala.collection.mutable.ObservableSet[A] has incompatible type
32-
33-
#../scala-scala/src/library/scala/collection/mutable/SynchronizedQueue.scala
34-
# 102 | override def toString() = synchronized { super.toString() }
35-
# | ^^^^^^^^^^^^^^^^
36-
# | missing argument for parameter index of method apply: (index: Int)Char
37-
38-
#../scala-scala/src/library/scala/collection/mutable/UnrolledBuffer.scala
39-
# 347 | override def toString = array.take(size).mkString("Unrolled[" + array.length + "](", ", ", ")") + " -> " + (if (next ne null) next.toString else "")
40-
# | ^^^^
41-
# | cyclic reference involving method toString
42-
43-
#../scala-scala/src/library/scala/collection/mutable/SynchronizedBuffer.scala
44-
# assertion failed
45-
46-
../scala-scala/src/library/scala/collection/parallel/mutable/ParArray.scala
47-
# 648 | class Map[S](f: T => S, targetarr: Array[Any], offset: Int, howmany: Int) extends Task[Unit, Map[S]] {
48-
# | ^
49-
# | overriding class Map in trait ParIterableLike;
50-
# | class Map cannot be used here - class definitions cannot be overridden
10+
# This gives a deep subtype violation when run with the rest of the whitelist.
11+
# Works without -Yno-deep-subtypes, though.
5112

5213
../scala-scala/src/library/scala/collection/parallel/mutable/ParMap.scala
5314
# 42 | override def updated [U >: V](key: K, value: U): ParMap[K, U] = this + ((key, value))
@@ -59,67 +20,35 @@
5920
# | ParMap' is a trait in package mutable
6021

6122

62-
../scala-scala/src/library/scala/collection/parallel/mutable/ResizableParArrayCombiner.scala
63-
# 91 | new { val chain = c } with ResizableParArrayCombiner[T] // was: with EnvironmentPassingCombiner[T, ParArray[T]]
64-
# | ^
65-
# | early definitions are not supported; use trait parameters instead
66-
6723
../scala-scala/src/library/scala/collection/parallel/mutable/ParTrieMap.scala
6824
# 136 | it.iterated = this.iterated
6925
# | ^^^^^^^^^^^
7026
# | value `iterated` is not a member of scala.collection.concurrent.TrieMapIterator[K, V](it)
7127

72-
../scala-scala/src/library/scala/collection/parallel/package.scala
73-
# 75 | implicit def factory2ops[From, Elem, To](bf: CanBuildFrom[From, Elem, To]) = new FactoryOps[From, Elem, To] {
74-
# | ^
75-
# | result type of implicit definition needs to be given explicitly
76-
77-
../scala-scala/src/library/scala/collection/parallel/ParIterable.scala
78-
# 304 | protected implicit def task2ops[R, Tp](tsk: SSCTask[R, Tp]) = new TaskOps[R, Tp] {
79-
# | ^
80-
# | result type of implicit definition needs to be given explicitly
8128

8229
../scala-scala/src/library/scala/collection/parallel/ParIterableLike.scala
83-
# 324 | protected implicit def delegatedSignalling2ops[PI <: DelegatedSignalling](it: PI) = new SignallingOps[PI] {
84-
# | ^
85-
# | result type of implicit definition needs to be given explicitly
30+
# -Ycheck:classOf fails
8631

8732
../scala-scala/src/library/scala/collection/parallel/ParMap.scala
33+
# -Yno-deep-subtypes fails
34+
8835
../scala-scala/src/library/scala/collection/parallel/ParMapLike.scala
36+
# -Yno-deep-subtypes fails
8937

9038
../scala-scala/src/library/scala/collection/parallel/ParSeqLike.scala
91-
# 334 | protected trait Accessor[R, Tp] extends super.Accessor[R, Tp] {
92-
# | ^^^^^^^^^^^^^^^^^^^^^
93-
# | cyclic inheritance: trait Accessor extends itself
39+
# -Ycheck:classOf fails
9440

9541
../scala-scala/src/library/scala/collection/parallel/RemainsIterator.scala
96-
# 617 | class Zipped[S](ti: SeqSplitter[S]) extends super.Zipped[S](ti) with SeqSplitter[(T, S)] {
97-
# | ^^^^^^^^^^^^^^^^^^
98-
# | cyclic inheritance: class Zipped extends itself
99-
100-
../scala-scala/src/library/scala/collection/parallel/Tasks.scala
101-
# 429 | fjtask.body.result
102-
# | ^^^^^^^^^^^
103-
# | value `body` is not a member of ForkJoinTasks.this.WrappedTask[R, Tp](fjtask)
104-
105-
#../scala-scala/src/library/scala/concurrent/Future.scala
106-
# 188 | implicit val ec = internalExecutor
107-
# | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
108-
# | type of implicit definition needs to be given explicitly
109-
110-
#../scala-scala/src/library/scala/concurrent/SyncChannel.scala
111-
# 45 | writeReq.get
112-
# | ^^^^^^^^^^^^
113-
# | none of the overloaded alternatives of method get in class SyncVar with types
114-
# | (timeout: Long)Option[Boolean]
115-
# | => Boolean
116-
# | match expected type Unit
42+
# 467 | def dup: IterableSplitter[S] = self.dup map f
43+
# | ^^^^^^^^^^^^^^
44+
# | found: scala.collection.Iterator[S]
45+
# | required: scala.collection.parallel.IterableSplitter[S]
11746

11847
../scala-scala/src/library/scala/concurrent/impl/ExecutionContextImpl.scala
11948
# assertion failed
12049

12150
../scala-scala/src/library/scala/concurrent/package.scala
122-
# assertion failed
51+
# -Ycheck:arrayConstructors failure
12352

12453
../scala-scala/src/library/scala/Function1.scala
12554
../scala-scala/src/library/scala/Function2.scala
@@ -144,17 +73,6 @@
14473
../scala-scala/src/library/scala/Function21.scala
14574
../scala-scala/src/library/scala/Function22.scala
14675

147-
../scala-scala/src/library/scala/io/BufferedSource.scala
148-
# 38 | override lazy val iter = (
149-
# | ^
150-
# | overriding getter iter in class Source of type => collection.Iterator[Char];
151-
# | lazy value iter of type collection.Iterator[Char] may not override a non-lazy value
152-
153-
../scala-scala/src/library/scala/io/Source.scala
154-
# 303 | report(pos, msg, out)
155-
# | ^^^
156-
# | not found: msg
157-
15876
../scala-scala/src/library/scala/reflect/ClassManifestDeprecatedApis.scala
15977
# 51 | import Manifest._
16078
# | ^^^^^^^^

compiler/test/dotc/scala-collections.whitelist

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -272,10 +272,9 @@
272272
../scala-scala/src/library/scala/collection/generic/SetFactory.scala
273273
../scala-scala/src/library/scala/collection/generic/ParFactory.scala
274274

275-
# https://github.com/lampepfl/dotty/issues/974 -> @smarter
276275
../scala-scala/src/library/scala/collection/generic/MutableSortedSetFactory.scala
277276

278-
# cyclic reference, maybe related to #974 -> @smarter
277+
# deep subtype
279278
#../scala-scala/src/library/scala/collection/generic/ParSetFactory.scala
280279

281280
../scala-scala/src/library/scala/collection/generic/OrderedTraversableFactory.scala
@@ -423,6 +422,8 @@
423422
../scala-scala/src/library/scala/io/Codec.scala
424423
../scala-scala/src/library/scala/io/Position.scala
425424
../scala-scala/src/library/scala/io/StdIn.scala
425+
../scala-scala/src/library/scala/io/BufferedSource.scala
426+
../scala-scala/src/library/scala/io/Source.scala
426427

427428
../scala-scala/src/library/scala/math/BigDecimal.scala
428429
../scala-scala/src/library/scala/math/BigInt.scala
@@ -470,8 +471,15 @@
470471
../scala-scala/src/library/scala/concurrent/SyncChannel.scala
471472
#../scala-scala/src/library/scala/concurrent/impl/ExecutionContextImpl.scala
472473

474+
../scala-scala/src/library/scala/collection/parallel/package.scala
475+
../scala-scala/src/library/scala/collection/parallel/ParIterable.scala
476+
#../scala-scala/src/library/scala/collection/parallel/ParMap.scala
477+
#../scala-scala/src/library/scala/collection/parallel/ParMapLike.scala
478+
#../scala-scala/src/library/scala/collection/parallel/ParIterableLike.scala
479+
#../scala-scala/src/library/scala/collection/parallel/ParSeqLike.scala
473480
../scala-scala/src/library/scala/collection/parallel/Combiner.scala
474481
../scala-scala/src/library/scala/collection/parallel/mutable/LazyCombiner.scala
482+
../scala-scala/src/library/scala/collection/parallel/mutable/ResizableParArrayCombiner.scala
475483
../scala-scala/src/library/scala/collection/parallel/mutable/package.scala
476484
../scala-scala/src/library/scala/collection/parallel/mutable/ParFlatHashTable.scala
477485
../scala-scala/src/library/scala/collection/parallel/mutable/ParHashMap.scala
@@ -483,12 +491,15 @@
483491
../scala-scala/src/library/scala/collection/parallel/mutable/ParSet.scala
484492
../scala-scala/src/library/scala/collection/parallel/mutable/ParSetLike.scala
485493
../scala-scala/src/library/scala/collection/parallel/mutable/UnrolledParArrayCombiner.scala
494+
../scala-scala/src/library/scala/collection/parallel/mutable/ParArray.scala
495+
#../scala-scala/src/library/scala/collection/parallel/mutable/ParMap.scala
486496
../scala-scala/src/library/scala/collection/parallel/ParSeq.scala
487497
../scala-scala/src/library/scala/collection/parallel/ParSet.scala
488498
../scala-scala/src/library/scala/collection/parallel/ParSetLike.scala
489499
../scala-scala/src/library/scala/collection/parallel/PreciseSplitter.scala
490500
../scala-scala/src/library/scala/collection/parallel/Splitter.scala
491501
../scala-scala/src/library/scala/collection/parallel/TaskSupport.scala
502+
../scala-scala/src/library/scala/collection/parallel/Tasks.scala
492503

493504
../scala-scala/src/library/scala/Console.scala
494505
../scala-scala/src/library/scala/Enumeration.scala

0 commit comments

Comments
 (0)