Skip to content

Commit 02f59fb

Browse files
committed
Don't emit mixin forwarders as final
They're emitted as bridge since scala#7843 and a final bridge is a weird concept that never comes up in Java (in particular, according to scala/bug#11485 ByteBuddy assumes that it can always override bridges). So let's just drop the "final" part which is not essential for interop. Fixes scala/bug#11485. Note: the final flag cannot be dropped before the backend because the inliner relies on this flag being present to know what can be inlined.
1 parent 7eb314c commit 02f59fb

3 files changed

Lines changed: 25 additions & 8 deletions

File tree

src/compiler/scala/tools/nsc/backend/jvm/BTypesFromSymbols.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -695,6 +695,7 @@ abstract class BTypesFromSymbols[G <: Global](val global: G) extends BTypes {
695695
val finalFlag = (
696696
(sym.isFinal || isTopLevelModuleClass(sym))
697697
&& !sym.enclClass.isTrait
698+
&& !sym.isBridge // Mixin forwarders are bridges and can be final, but final bridges confuse some frameworks (scala/bug#11485)
698699
&& !sym.isClassConstructor
699700
&& (!sym.isMutable || nme.isTraitSetterName(sym.name)) // lazy vals and vars and their setters cannot be final, but trait setters are
700701
)

test/files/run/t11485.scala

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import java.lang.reflect.Modifier
2+
3+
trait HaveFinalMethod {
4+
final def finalMethod: String = "final"
5+
}
6+
7+
class Child extends HaveFinalMethod
8+
9+
object Test {
10+
def main(args: Array[String]): Unit = {
11+
val meth = classOf[Child].getMethod("finalMethod")
12+
assert(meth.isBridge)
13+
val mods = meth.getModifiers
14+
assert(!Modifier.isFinal(mods))
15+
}
16+
}

test/junit/scala/SerializationStabilityTest.scala

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ object SerializationStability {
9292
}
9393
}
9494

95-
// Generated on 20190315-14:51:52 with Scala version 2.13.0-20190312-061029-e390b10)
95+
// Generated on 20190415-10:34:13 with Scala version 2.13.0-20190414-151852-f2e640e)
9696
def main(args: Array[String]): Unit = {
9797
overwrite.foreach(updateComment)
9898
def g = Thread.currentThread.getStackTrace
@@ -193,7 +193,7 @@ object SerializationStability {
193193
// TODO scala/bug#8576 Uninitialized field: IndexedSeqLike.scala: 56
194194
// check(g)(immutable.Stream(1, 2, 3))( "rO0ABXNyACZzY2FsYS5jb2xsZWN0aW9uLmltbXV0YWJsZS5TdHJlYW0kQ29uc/ekjBXM3TlFAgADTAACaGR0ABJMamF2YS9sYW5nL09iamVjdDtMAAV0bEdlbnQAEUxzY2FsYS9GdW5jdGlvbjA7TAAFdGxWYWx0ACNMc2NhbGEvY29sbGVjdGlvbi9pbW11dGFibGUvU3RyZWFtO3hyACFzY2FsYS5jb2xsZWN0aW9uLmltbXV0YWJsZS5TdHJlYW0552RDntM42gIAAHhwc3IAEWphdmEubGFuZy5JbnRlZ2VyEuKgpPeBhzgCAAFJAAV2YWx1ZXhyABBqYXZhLmxhbmcuTnVtYmVyhqyVHQuU4IsCAAB4cAAAAAFzcgAtc2NhbGEuY29sbGVjdGlvbi5JdGVyYXRvciQkYW5vbmZ1biR0b1N0cmVhbSQxRWR4We0SX0UCAAFMAAYkb3V0ZXJ0ABtMc2NhbGEvY29sbGVjdGlvbi9JdGVyYXRvcjt4cHNyAChzY2FsYS5jb2xsZWN0aW9uLkluZGV4ZWRTZXFMaWtlJEVsZW1lbnRzGF+1cBwmcx0CAANJAANlbmRJAAVpbmRleEwABiRvdXRlcnQAIUxzY2FsYS9jb2xsZWN0aW9uL0luZGV4ZWRTZXFMaWtlO3hwAAAAAwAAAAFzcgArc2NhbGEuY29sbGVjdGlvbi5tdXRhYmxlLldyYXBwZWRBcnJheSRvZkludMmRLBcI15VjAgABWwAFYXJyYXl0AAJbSXhwdXIAAltJTbpgJnbqsqUCAAB4cAAAAAMAAAABAAAAAgAAAANw")
195195

196-
check(g)(immutable.TreeSet[Int]())( "rO0ABXNyADJzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuRGVmYXVsdFNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAADAwABTAAHZmFjdG9yeXQAGkxzY2FsYS9jb2xsZWN0aW9uL0ZhY3Rvcnk7eHBzcgAyc2NhbGEuY29sbGVjdGlvbi5FdmlkZW5jZUl0ZXJhYmxlRmFjdG9yeSRUb0ZhY3RvcnkAAAAAAAAAAwIAAkwAC2V2aWRlbmNlJDE1dAASTGphdmEvbGFuZy9PYmplY3Q7TAAHZmFjdG9yeXQAKkxzY2FsYS9jb2xsZWN0aW9uL0V2aWRlbmNlSXRlcmFibGVGYWN0b3J5O3hwc3IAJnNjYWxhLnJ1bnRpbWUuTW9kdWxlU2VyaWFsaXphdGlvblByb3h5AAAAAAAAAAECAAFMAAttb2R1bGVDbGFzc3QAEUxqYXZhL2xhbmcvQ2xhc3M7eHB2cgAYc2NhbGEubWF0aC5PcmRlcmluZyRJbnQkiz96UGruasMCAAB4cHNxAH4AB3ZyACNzY2FsYS5jb2xsZWN0aW9uLmltbXV0YWJsZS5UcmVlU2V0JAAAAAAAAAADAgAAeHB3BP////9zcQB+AAd2cgAmc2NhbGEuY29sbGVjdGlvbi5nZW5lcmljLlNlcmlhbGl6ZUVuZCQAAAAAAAAAAwIAAHhweA==")
196+
check(g)(immutable.TreeSet[Int]())( "rO0ABXNyADJzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuRGVmYXVsdFNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAADAwABTAAHZmFjdG9yeXQAGkxzY2FsYS9jb2xsZWN0aW9uL0ZhY3Rvcnk7eHBzcgAyc2NhbGEuY29sbGVjdGlvbi5FdmlkZW5jZUl0ZXJhYmxlRmFjdG9yeSRUb0ZhY3RvcnkAAAAAAAAAAwIAAkwAC2V2aWRlbmNlJDE1dAASTGphdmEvbGFuZy9PYmplY3Q7TAAHZmFjdG9yeXQAKkxzY2FsYS9jb2xsZWN0aW9uL0V2aWRlbmNlSXRlcmFibGVGYWN0b3J5O3hwc3IAJnNjYWxhLnJ1bnRpbWUuTW9kdWxlU2VyaWFsaXphdGlvblByb3h5AAAAAAAAAAECAAFMAAttb2R1bGVDbGFzc3QAEUxqYXZhL2xhbmcvQ2xhc3M7eHB2cgAYc2NhbGEubWF0aC5PcmRlcmluZyRJbnQkKg0CrSTojEYCAAB4cHNxAH4AB3ZyACNzY2FsYS5jb2xsZWN0aW9uLmltbXV0YWJsZS5UcmVlU2V0JAAAAAAAAAADAgAAeHB3BP////9zcQB+AAd2cgAmc2NhbGEuY29sbGVjdGlvbi5nZW5lcmljLlNlcmlhbGl6ZUVuZCQAAAAAAAAAAwIAAHhweA==")
197197

198198
// TODO scala/bug#8576 unstable under -Xcheckinit
199199
// check(g)(immutable.TreeSet(1, 2, 3))( "rO0ABXNyACJzY2FsYS5jb2xsZWN0aW9uLmltbXV0YWJsZS5UcmVlU2V0sRdVIDjbWAsCAAJMAAhvcmRlcmluZ3QAFUxzY2FsYS9tYXRoL09yZGVyaW5nO0wABHRyZWV0AC5Mc2NhbGEvY29sbGVjdGlvbi9pbW11dGFibGUvUmVkQmxhY2tUcmVlJFRyZWU7eHBzcgAYc2NhbGEubWF0aC5PcmRlcmluZyRJbnQkC4BMdr1Z51wCAAB4cHNyADFzY2FsYS5jb2xsZWN0aW9uLmltbXV0YWJsZS5SZWRCbGFja1RyZWUkQmxhY2tUcmVlzRxnCKenVAECAAB4cgAsc2NhbGEuY29sbGVjdGlvbi5pbW11dGFibGUuUmVkQmxhY2tUcmVlJFRyZWVrqCSyHJbsMgIABUkABWNvdW50TAADa2V5dAASTGphdmEvbGFuZy9PYmplY3Q7TAAEbGVmdHEAfgACTAAFcmlnaHRxAH4AAkwABXZhbHVlcQB+AAh4cAAAAANzcgARamF2YS5sYW5nLkludGVnZXIS4qCk94GHOAIAAUkABXZhbHVleHIAEGphdmEubGFuZy5OdW1iZXKGrJUdC5TgiwIAAHhwAAAAAnNxAH4ABgAAAAFzcQB+AAoAAAABcHBzcgAXc2NhbGEucnVudGltZS5Cb3hlZFVuaXR0pn1HHezLmgIAAHhwc3EAfgAGAAAAAXNxAH4ACgAAAANwcHEAfgAQcQB+ABA=")
@@ -209,12 +209,12 @@ object SerializationStability {
209209
check(g)(mutable.HashMap())( "rO0ABXNyADJzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuRGVmYXVsdFNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAADAwABTAAHZmFjdG9yeXQAGkxzY2FsYS9jb2xsZWN0aW9uL0ZhY3Rvcnk7eHBzcgA3c2NhbGEuY29sbGVjdGlvbi5tdXRhYmxlLkhhc2hNYXAkRGVzZXJpYWxpemF0aW9uRmFjdG9yeQAAAAAAAAADAgACRAAKbG9hZEZhY3RvckkAC3RhYmxlTGVuZ3RoeHA/6AAAAAAAAAAAABB3BAAAAAB4")
210210
check(g)(mutable.HashMap(1 -> 1))( "rO0ABXNyADJzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuRGVmYXVsdFNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAADAwABTAAHZmFjdG9yeXQAGkxzY2FsYS9jb2xsZWN0aW9uL0ZhY3Rvcnk7eHBzcgA3c2NhbGEuY29sbGVjdGlvbi5tdXRhYmxlLkhhc2hNYXAkRGVzZXJpYWxpemF0aW9uRmFjdG9yeQAAAAAAAAADAgACRAAKbG9hZEZhY3RvckkAC3RhYmxlTGVuZ3RoeHA/6AAAAAAAAAAAAAh3BAAAAAFzcgAMc2NhbGEuVHVwbGUyAfvdzSLnNHoCAAJMAAJfMXQAEkxqYXZhL2xhbmcvT2JqZWN0O0wAAl8ycQB+AAZ4cHNyABFqYXZhLmxhbmcuSW50ZWdlchLioKT3gYc4AgABSQAFdmFsdWV4cgAQamF2YS5sYW5nLk51bWJlcoaslR0LlOCLAgAAeHAAAAABcQB+AAp4")
211211
check(g)(mutable.HashSet(1, 2, 3))( "rO0ABXNyADJzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuRGVmYXVsdFNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAADAwABTAAHZmFjdG9yeXQAGkxzY2FsYS9jb2xsZWN0aW9uL0ZhY3Rvcnk7eHBzcgA3c2NhbGEuY29sbGVjdGlvbi5tdXRhYmxlLkhhc2hTZXQkRGVzZXJpYWxpemF0aW9uRmFjdG9yeQAAAAAAAAADAgACRAAKbG9hZEZhY3RvckkAC3RhYmxlTGVuZ3RoeHA/6AAAAAAAAAAAAAh3BAAAAANzcgARamF2YS5sYW5nLkludGVnZXIS4qCk94GHOAIAAUkABXZhbHVleHIAEGphdmEubGFuZy5OdW1iZXKGrJUdC5TgiwIAAHhwAAAAAXNxAH4ABQAAAAJzcQB+AAUAAAADeA==")
212-
check(g)(mutable.TreeMap[Int, Int]())( "rO0ABXNyADJzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuRGVmYXVsdFNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAADAwABTAAHZmFjdG9yeXQAGkxzY2FsYS9jb2xsZWN0aW9uL0ZhY3Rvcnk7eHBzcgArc2NhbGEuY29sbGVjdGlvbi5Tb3J0ZWRNYXBGYWN0b3J5JFRvRmFjdG9yeQAAAAAAAAADAgACTAALZXZpZGVuY2UkNDJ0ABVMc2NhbGEvbWF0aC9PcmRlcmluZztMAAdmYWN0b3J5dAAjTHNjYWxhL2NvbGxlY3Rpb24vU29ydGVkTWFwRmFjdG9yeTt4cHNyACZzY2FsYS5ydW50aW1lLk1vZHVsZVNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAABAgABTAALbW9kdWxlQ2xhc3N0ABFMamF2YS9sYW5nL0NsYXNzO3hwdnIAGHNjYWxhLm1hdGguT3JkZXJpbmckSW50JIs/elBq7mrDAgAAeHBzcQB+AAd2cgAhc2NhbGEuY29sbGVjdGlvbi5tdXRhYmxlLlRyZWVNYXAkAAAAAAAAAAMCAAB4cHcEAAAAAHg=")
213-
check(g)(mutable.TreeMap(1 -> 1, 3 -> 6))( "rO0ABXNyADJzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuRGVmYXVsdFNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAADAwABTAAHZmFjdG9yeXQAGkxzY2FsYS9jb2xsZWN0aW9uL0ZhY3Rvcnk7eHBzcgArc2NhbGEuY29sbGVjdGlvbi5Tb3J0ZWRNYXBGYWN0b3J5JFRvRmFjdG9yeQAAAAAAAAADAgACTAALZXZpZGVuY2UkNDJ0ABVMc2NhbGEvbWF0aC9PcmRlcmluZztMAAdmYWN0b3J5dAAjTHNjYWxhL2NvbGxlY3Rpb24vU29ydGVkTWFwRmFjdG9yeTt4cHNyACZzY2FsYS5ydW50aW1lLk1vZHVsZVNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAABAgABTAALbW9kdWxlQ2xhc3N0ABFMamF2YS9sYW5nL0NsYXNzO3hwdnIAGHNjYWxhLm1hdGguT3JkZXJpbmckSW50JIs/elBq7mrDAgAAeHBzcQB+AAd2cgAhc2NhbGEuY29sbGVjdGlvbi5tdXRhYmxlLlRyZWVNYXAkAAAAAAAAAAMCAAB4cHcEAAAAAnNyAAxzY2FsYS5UdXBsZTIB+93NIuc0egIAAkwAAl8xdAASTGphdmEvbGFuZy9PYmplY3Q7TAACXzJxAH4AEHhwc3IAEWphdmEubGFuZy5JbnRlZ2VyEuKgpPeBhzgCAAFJAAV2YWx1ZXhyABBqYXZhLmxhbmcuTnVtYmVyhqyVHQuU4IsCAAB4cAAAAAFxAH4AFHNxAH4AD3NxAH4AEgAAAANzcQB+ABIAAAAGeA==")
214-
check(g)(mutable.TreeMap(1 -> 1, 3 -> 6).range(1, 2))( "rO0ABXNyADJzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuRGVmYXVsdFNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAADAwABTAAHZmFjdG9yeXQAGkxzY2FsYS9jb2xsZWN0aW9uL0ZhY3Rvcnk7eHBzcgArc2NhbGEuY29sbGVjdGlvbi5Tb3J0ZWRNYXBGYWN0b3J5JFRvRmFjdG9yeQAAAAAAAAADAgACTAALZXZpZGVuY2UkNDJ0ABVMc2NhbGEvbWF0aC9PcmRlcmluZztMAAdmYWN0b3J5dAAjTHNjYWxhL2NvbGxlY3Rpb24vU29ydGVkTWFwRmFjdG9yeTt4cHNyACZzY2FsYS5ydW50aW1lLk1vZHVsZVNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAABAgABTAALbW9kdWxlQ2xhc3N0ABFMamF2YS9sYW5nL0NsYXNzO3hwdnIAGHNjYWxhLm1hdGguT3JkZXJpbmckSW50JIs/elBq7mrDAgAAeHBzcQB+AAd2cgAhc2NhbGEuY29sbGVjdGlvbi5tdXRhYmxlLlRyZWVNYXAkAAAAAAAAAAMCAAB4cHcE/////3NyAAxzY2FsYS5UdXBsZTIB+93NIuc0egIAAkwAAl8xdAASTGphdmEvbGFuZy9PYmplY3Q7TAACXzJxAH4AEHhwc3IAEWphdmEubGFuZy5JbnRlZ2VyEuKgpPeBhzgCAAFJAAV2YWx1ZXhyABBqYXZhLmxhbmcuTnVtYmVyhqyVHQuU4IsCAAB4cAAAAAFxAH4AFHNxAH4AB3ZyACZzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuU2VyaWFsaXplRW5kJAAAAAAAAAADAgAAeHB4")
215-
check(g)(mutable.TreeSet[Int]())( "rO0ABXNyADJzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuRGVmYXVsdFNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAADAwABTAAHZmFjdG9yeXQAGkxzY2FsYS9jb2xsZWN0aW9uL0ZhY3Rvcnk7eHBzcgAyc2NhbGEuY29sbGVjdGlvbi5FdmlkZW5jZUl0ZXJhYmxlRmFjdG9yeSRUb0ZhY3RvcnkAAAAAAAAAAwIAAkwAC2V2aWRlbmNlJDE1dAASTGphdmEvbGFuZy9PYmplY3Q7TAAHZmFjdG9yeXQAKkxzY2FsYS9jb2xsZWN0aW9uL0V2aWRlbmNlSXRlcmFibGVGYWN0b3J5O3hwc3IAJnNjYWxhLnJ1bnRpbWUuTW9kdWxlU2VyaWFsaXphdGlvblByb3h5AAAAAAAAAAECAAFMAAttb2R1bGVDbGFzc3QAEUxqYXZhL2xhbmcvQ2xhc3M7eHB2cgAYc2NhbGEubWF0aC5PcmRlcmluZyRJbnQkiz96UGruasMCAAB4cHNxAH4AB3ZyACFzY2FsYS5jb2xsZWN0aW9uLm11dGFibGUuVHJlZVNldCQAAAAAAAAAAwIAAHhwdwQAAAAAeA==")
216-
check(g)(mutable.TreeSet(1, 3))( "rO0ABXNyADJzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuRGVmYXVsdFNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAADAwABTAAHZmFjdG9yeXQAGkxzY2FsYS9jb2xsZWN0aW9uL0ZhY3Rvcnk7eHBzcgAyc2NhbGEuY29sbGVjdGlvbi5FdmlkZW5jZUl0ZXJhYmxlRmFjdG9yeSRUb0ZhY3RvcnkAAAAAAAAAAwIAAkwAC2V2aWRlbmNlJDE1dAASTGphdmEvbGFuZy9PYmplY3Q7TAAHZmFjdG9yeXQAKkxzY2FsYS9jb2xsZWN0aW9uL0V2aWRlbmNlSXRlcmFibGVGYWN0b3J5O3hwc3IAJnNjYWxhLnJ1bnRpbWUuTW9kdWxlU2VyaWFsaXphdGlvblByb3h5AAAAAAAAAAECAAFMAAttb2R1bGVDbGFzc3QAEUxqYXZhL2xhbmcvQ2xhc3M7eHB2cgAYc2NhbGEubWF0aC5PcmRlcmluZyRJbnQkiz96UGruasMCAAB4cHNxAH4AB3ZyACFzY2FsYS5jb2xsZWN0aW9uLm11dGFibGUuVHJlZVNldCQAAAAAAAAAAwIAAHhwdwQAAAACc3IAEWphdmEubGFuZy5JbnRlZ2VyEuKgpPeBhzgCAAFJAAV2YWx1ZXhyABBqYXZhLmxhbmcuTnVtYmVyhqyVHQuU4IsCAAB4cAAAAAFzcQB+AA8AAAADeA==")
217-
check(g)(mutable.TreeSet(1, 3).range(1, 2))( "rO0ABXNyADJzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuRGVmYXVsdFNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAADAwABTAAHZmFjdG9yeXQAGkxzY2FsYS9jb2xsZWN0aW9uL0ZhY3Rvcnk7eHBzcgAyc2NhbGEuY29sbGVjdGlvbi5FdmlkZW5jZUl0ZXJhYmxlRmFjdG9yeSRUb0ZhY3RvcnkAAAAAAAAAAwIAAkwAC2V2aWRlbmNlJDE1dAASTGphdmEvbGFuZy9PYmplY3Q7TAAHZmFjdG9yeXQAKkxzY2FsYS9jb2xsZWN0aW9uL0V2aWRlbmNlSXRlcmFibGVGYWN0b3J5O3hwc3IAJnNjYWxhLnJ1bnRpbWUuTW9kdWxlU2VyaWFsaXphdGlvblByb3h5AAAAAAAAAAECAAFMAAttb2R1bGVDbGFzc3QAEUxqYXZhL2xhbmcvQ2xhc3M7eHB2cgAYc2NhbGEubWF0aC5PcmRlcmluZyRJbnQkiz96UGruasMCAAB4cHNxAH4AB3ZyACFzY2FsYS5jb2xsZWN0aW9uLm11dGFibGUuVHJlZVNldCQAAAAAAAAAAwIAAHhwdwT/////c3IAEWphdmEubGFuZy5JbnRlZ2VyEuKgpPeBhzgCAAFJAAV2YWx1ZXhyABBqYXZhLmxhbmcuTnVtYmVyhqyVHQuU4IsCAAB4cAAAAAFzcQB+AAd2cgAmc2NhbGEuY29sbGVjdGlvbi5nZW5lcmljLlNlcmlhbGl6ZUVuZCQAAAAAAAAAAwIAAHhweA==")
212+
check(g)(mutable.TreeMap[Int, Int]())( "rO0ABXNyADJzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuRGVmYXVsdFNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAADAwABTAAHZmFjdG9yeXQAGkxzY2FsYS9jb2xsZWN0aW9uL0ZhY3Rvcnk7eHBzcgArc2NhbGEuY29sbGVjdGlvbi5Tb3J0ZWRNYXBGYWN0b3J5JFRvRmFjdG9yeQAAAAAAAAADAgACTAALZXZpZGVuY2UkNDJ0ABVMc2NhbGEvbWF0aC9PcmRlcmluZztMAAdmYWN0b3J5dAAjTHNjYWxhL2NvbGxlY3Rpb24vU29ydGVkTWFwRmFjdG9yeTt4cHNyACZzY2FsYS5ydW50aW1lLk1vZHVsZVNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAABAgABTAALbW9kdWxlQ2xhc3N0ABFMamF2YS9sYW5nL0NsYXNzO3hwdnIAGHNjYWxhLm1hdGguT3JkZXJpbmckSW50JCoNAq0k6IxGAgAAeHBzcQB+AAd2cgAhc2NhbGEuY29sbGVjdGlvbi5tdXRhYmxlLlRyZWVNYXAkAAAAAAAAAAMCAAB4cHcEAAAAAHg=")
213+
check(g)(mutable.TreeMap(1 -> 1, 3 -> 6))( "rO0ABXNyADJzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuRGVmYXVsdFNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAADAwABTAAHZmFjdG9yeXQAGkxzY2FsYS9jb2xsZWN0aW9uL0ZhY3Rvcnk7eHBzcgArc2NhbGEuY29sbGVjdGlvbi5Tb3J0ZWRNYXBGYWN0b3J5JFRvRmFjdG9yeQAAAAAAAAADAgACTAALZXZpZGVuY2UkNDJ0ABVMc2NhbGEvbWF0aC9PcmRlcmluZztMAAdmYWN0b3J5dAAjTHNjYWxhL2NvbGxlY3Rpb24vU29ydGVkTWFwRmFjdG9yeTt4cHNyACZzY2FsYS5ydW50aW1lLk1vZHVsZVNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAABAgABTAALbW9kdWxlQ2xhc3N0ABFMamF2YS9sYW5nL0NsYXNzO3hwdnIAGHNjYWxhLm1hdGguT3JkZXJpbmckSW50JCoNAq0k6IxGAgAAeHBzcQB+AAd2cgAhc2NhbGEuY29sbGVjdGlvbi5tdXRhYmxlLlRyZWVNYXAkAAAAAAAAAAMCAAB4cHcEAAAAAnNyAAxzY2FsYS5UdXBsZTIB+93NIuc0egIAAkwAAl8xdAASTGphdmEvbGFuZy9PYmplY3Q7TAACXzJxAH4AEHhwc3IAEWphdmEubGFuZy5JbnRlZ2VyEuKgpPeBhzgCAAFJAAV2YWx1ZXhyABBqYXZhLmxhbmcuTnVtYmVyhqyVHQuU4IsCAAB4cAAAAAFxAH4AFHNxAH4AD3NxAH4AEgAAAANzcQB+ABIAAAAGeA==")
214+
check(g)(mutable.TreeMap(1 -> 1, 3 -> 6).range(1, 2))( "rO0ABXNyADJzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuRGVmYXVsdFNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAADAwABTAAHZmFjdG9yeXQAGkxzY2FsYS9jb2xsZWN0aW9uL0ZhY3Rvcnk7eHBzcgArc2NhbGEuY29sbGVjdGlvbi5Tb3J0ZWRNYXBGYWN0b3J5JFRvRmFjdG9yeQAAAAAAAAADAgACTAALZXZpZGVuY2UkNDJ0ABVMc2NhbGEvbWF0aC9PcmRlcmluZztMAAdmYWN0b3J5dAAjTHNjYWxhL2NvbGxlY3Rpb24vU29ydGVkTWFwRmFjdG9yeTt4cHNyACZzY2FsYS5ydW50aW1lLk1vZHVsZVNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAABAgABTAALbW9kdWxlQ2xhc3N0ABFMamF2YS9sYW5nL0NsYXNzO3hwdnIAGHNjYWxhLm1hdGguT3JkZXJpbmckSW50JCoNAq0k6IxGAgAAeHBzcQB+AAd2cgAhc2NhbGEuY29sbGVjdGlvbi5tdXRhYmxlLlRyZWVNYXAkAAAAAAAAAAMCAAB4cHcE/////3NyAAxzY2FsYS5UdXBsZTIB+93NIuc0egIAAkwAAl8xdAASTGphdmEvbGFuZy9PYmplY3Q7TAACXzJxAH4AEHhwc3IAEWphdmEubGFuZy5JbnRlZ2VyEuKgpPeBhzgCAAFJAAV2YWx1ZXhyABBqYXZhLmxhbmcuTnVtYmVyhqyVHQuU4IsCAAB4cAAAAAFxAH4AFHNxAH4AB3ZyACZzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuU2VyaWFsaXplRW5kJAAAAAAAAAADAgAAeHB4")
215+
check(g)(mutable.TreeSet[Int]())( "rO0ABXNyADJzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuRGVmYXVsdFNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAADAwABTAAHZmFjdG9yeXQAGkxzY2FsYS9jb2xsZWN0aW9uL0ZhY3Rvcnk7eHBzcgAyc2NhbGEuY29sbGVjdGlvbi5FdmlkZW5jZUl0ZXJhYmxlRmFjdG9yeSRUb0ZhY3RvcnkAAAAAAAAAAwIAAkwAC2V2aWRlbmNlJDE1dAASTGphdmEvbGFuZy9PYmplY3Q7TAAHZmFjdG9yeXQAKkxzY2FsYS9jb2xsZWN0aW9uL0V2aWRlbmNlSXRlcmFibGVGYWN0b3J5O3hwc3IAJnNjYWxhLnJ1bnRpbWUuTW9kdWxlU2VyaWFsaXphdGlvblByb3h5AAAAAAAAAAECAAFMAAttb2R1bGVDbGFzc3QAEUxqYXZhL2xhbmcvQ2xhc3M7eHB2cgAYc2NhbGEubWF0aC5PcmRlcmluZyRJbnQkKg0CrSTojEYCAAB4cHNxAH4AB3ZyACFzY2FsYS5jb2xsZWN0aW9uLm11dGFibGUuVHJlZVNldCQAAAAAAAAAAwIAAHhwdwQAAAAAeA==")
216+
check(g)(mutable.TreeSet(1, 3))( "rO0ABXNyADJzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuRGVmYXVsdFNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAADAwABTAAHZmFjdG9yeXQAGkxzY2FsYS9jb2xsZWN0aW9uL0ZhY3Rvcnk7eHBzcgAyc2NhbGEuY29sbGVjdGlvbi5FdmlkZW5jZUl0ZXJhYmxlRmFjdG9yeSRUb0ZhY3RvcnkAAAAAAAAAAwIAAkwAC2V2aWRlbmNlJDE1dAASTGphdmEvbGFuZy9PYmplY3Q7TAAHZmFjdG9yeXQAKkxzY2FsYS9jb2xsZWN0aW9uL0V2aWRlbmNlSXRlcmFibGVGYWN0b3J5O3hwc3IAJnNjYWxhLnJ1bnRpbWUuTW9kdWxlU2VyaWFsaXphdGlvblByb3h5AAAAAAAAAAECAAFMAAttb2R1bGVDbGFzc3QAEUxqYXZhL2xhbmcvQ2xhc3M7eHB2cgAYc2NhbGEubWF0aC5PcmRlcmluZyRJbnQkKg0CrSTojEYCAAB4cHNxAH4AB3ZyACFzY2FsYS5jb2xsZWN0aW9uLm11dGFibGUuVHJlZVNldCQAAAAAAAAAAwIAAHhwdwQAAAACc3IAEWphdmEubGFuZy5JbnRlZ2VyEuKgpPeBhzgCAAFJAAV2YWx1ZXhyABBqYXZhLmxhbmcuTnVtYmVyhqyVHQuU4IsCAAB4cAAAAAFzcQB+AA8AAAADeA==")
217+
check(g)(mutable.TreeSet(1, 3).range(1, 2))( "rO0ABXNyADJzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuRGVmYXVsdFNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAADAwABTAAHZmFjdG9yeXQAGkxzY2FsYS9jb2xsZWN0aW9uL0ZhY3Rvcnk7eHBzcgAyc2NhbGEuY29sbGVjdGlvbi5FdmlkZW5jZUl0ZXJhYmxlRmFjdG9yeSRUb0ZhY3RvcnkAAAAAAAAAAwIAAkwAC2V2aWRlbmNlJDE1dAASTGphdmEvbGFuZy9PYmplY3Q7TAAHZmFjdG9yeXQAKkxzY2FsYS9jb2xsZWN0aW9uL0V2aWRlbmNlSXRlcmFibGVGYWN0b3J5O3hwc3IAJnNjYWxhLnJ1bnRpbWUuTW9kdWxlU2VyaWFsaXphdGlvblByb3h5AAAAAAAAAAECAAFMAAttb2R1bGVDbGFzc3QAEUxqYXZhL2xhbmcvQ2xhc3M7eHB2cgAYc2NhbGEubWF0aC5PcmRlcmluZyRJbnQkKg0CrSTojEYCAAB4cHNxAH4AB3ZyACFzY2FsYS5jb2xsZWN0aW9uLm11dGFibGUuVHJlZVNldCQAAAAAAAAAAwIAAHhwdwT/////c3IAEWphdmEubGFuZy5JbnRlZ2VyEuKgpPeBhzgCAAFJAAV2YWx1ZXhyABBqYXZhLmxhbmcuTnVtYmVyhqyVHQuU4IsCAAB4cAAAAAFzcQB+AAd2cgAmc2NhbGEuY29sbGVjdGlvbi5nZW5lcmljLlNlcmlhbGl6ZUVuZCQAAAAAAAAAAwIAAHhweA==")
218218
// TODO scala/bug#8576 Uninitialized field under -Xcheckinit
219219
// check(g)(new mutable.History())( "rO0ABXNyACBzY2FsYS5jb2xsZWN0aW9uLm11dGFibGUuSGlzdG9yeUhuXxDIFJrsAgACSQAKbWF4SGlzdG9yeUwAA2xvZ3QAIExzY2FsYS9jb2xsZWN0aW9uL211dGFibGUvUXVldWU7eHAAAAPoc3IAHnNjYWxhLmNvbGxlY3Rpb24ubXV0YWJsZS5RdWV1ZbjMURVfOuHHAgAAeHIAJHNjYWxhLmNvbGxlY3Rpb24ubXV0YWJsZS5NdXRhYmxlTGlzdFJpnjJ+gFbAAgADSQADbGVuTAAGZmlyc3QwdAAlTHNjYWxhL2NvbGxlY3Rpb24vbXV0YWJsZS9MaW5rZWRMaXN0O0wABWxhc3QwcQB+AAV4cAAAAABzcgAjc2NhbGEuY29sbGVjdGlvbi5tdXRhYmxlLkxpbmtlZExpc3Sak+nGCZHaUQIAAkwABGVsZW10ABJMamF2YS9sYW5nL09iamVjdDtMAARuZXh0dAAeTHNjYWxhL2NvbGxlY3Rpb24vbXV0YWJsZS9TZXE7eHBwcQB+AApxAH4ACg==")
220220
check(g)(mutable.LinkedHashMap(1 -> 2))( "rO0ABXNyADJzY2FsYS5jb2xsZWN0aW9uLmdlbmVyaWMuRGVmYXVsdFNlcmlhbGl6YXRpb25Qcm94eQAAAAAAAAADAwABTAAHZmFjdG9yeXQAGkxzY2FsYS9jb2xsZWN0aW9uL0ZhY3Rvcnk7eHBzcgAlc2NhbGEuY29sbGVjdGlvbi5NYXBGYWN0b3J5JFRvRmFjdG9yeQAAAAAAAAADAgABTAAHZmFjdG9yeXQAHUxzY2FsYS9jb2xsZWN0aW9uL01hcEZhY3Rvcnk7eHBzcgAmc2NhbGEucnVudGltZS5Nb2R1bGVTZXJpYWxpemF0aW9uUHJveHkAAAAAAAAAAQIAAUwAC21vZHVsZUNsYXNzdAARTGphdmEvbGFuZy9DbGFzczt4cHZyACdzY2FsYS5jb2xsZWN0aW9uLm11dGFibGUuTGlua2VkSGFzaE1hcCQAAAAAAAAAAwIAAHhwdwQAAAABc3IADHNjYWxhLlR1cGxlMgH73c0i5zR6AgACTAACXzF0ABJMamF2YS9sYW5nL09iamVjdDtMAAJfMnEAfgAMeHBzcgARamF2YS5sYW5nLkludGVnZXIS4qCk94GHOAIAAUkABXZhbHVleHIAEGphdmEubGFuZy5OdW1iZXKGrJUdC5TgiwIAAHhwAAAAAXNxAH4ADgAAAAJ4")

0 commit comments

Comments
 (0)