summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorGrzegorz Kossakowski <grzegorz.kossakowski@gmail.com>2013-09-12 10:18:38 -0700
committerGrzegorz Kossakowski <grzegorz.kossakowski@gmail.com>2013-09-12 10:18:38 -0700
commit5f7d7259452662937740147162e9c3c4e9a53e5d (patch)
tree34b0b7cf0aeafb450521daaede5922a4855dc951 /test
parent289fbcb15f2bbab3db1a5ef7df340c7e48d8ab2d (diff)
parentfdd860df184f4c8bc6997ce2c1045b23c9fb61aa (diff)
downloadscala-5f7d7259452662937740147162e9c3c4e9a53e5d.tar.gz
scala-5f7d7259452662937740147162e9c3c4e9a53e5d.tar.bz2
scala-5f7d7259452662937740147162e9c3c4e9a53e5d.zip
Merge pull request #2905 from retronym/ticket/7801
SI-7801 Fix a nightmarish bug in Symbols#adaptInfos
Diffstat (limited to 'test')
-rw-r--r--test/files/run/t7801.check11
-rw-r--r--test/files/run/t7801.scala12
2 files changed, 23 insertions, 0 deletions
diff --git a/test/files/run/t7801.check b/test/files/run/t7801.check
new file mode 100644
index 0000000000..d72060c684
--- /dev/null
+++ b/test/files/run/t7801.check
@@ -0,0 +1,11 @@
+Type in expressions to have them evaluated.
+Type :help for more information.
+
+scala> val g: scala.reflect.internal.SymbolTable = null; import g.abort
+g: scala.reflect.internal.SymbolTable = null
+import g.abort
+
+scala> class C(val a: Any) extends AnyVal
+defined class C
+
+scala>
diff --git a/test/files/run/t7801.scala b/test/files/run/t7801.scala
new file mode 100644
index 0000000000..3a3cc97a51
--- /dev/null
+++ b/test/files/run/t7801.scala
@@ -0,0 +1,12 @@
+import scala.tools.partest.ReplTest
+
+// was crashing due to a subtle interaction of the Namer entering packages into
+// enclosing packages by mutating the scope in place without invalidating later
+// entries in the enclosing package class symbols type history.
+//
+// Sadly, I couldn't whittle the test case down further.
+object Test extends ReplTest {
+ override def code = """val g: scala.reflect.internal.SymbolTable = null; import g.abort
+ |class C(val a: Any) extends AnyVal""".stripMargin
+
+}