diff options
author | Lukas Rytz <lukas.rytz@typesafe.com> | 2014-11-10 11:02:09 +0100 |
---|---|---|
committer | Lukas Rytz <lukas.rytz@typesafe.com> | 2014-11-10 11:02:09 +0100 |
commit | 22bc1f89c13eceaf5d19821995a255e43ebabd77 (patch) | |
tree | dff9d5d6504de8e5e9655fc485fa3dcc552fa250 /test | |
parent | fad969e211965b10313611436832ca8066d690ef (diff) | |
parent | 8d84b62fc9ca2bc01c7e3119088ddac185695124 (diff) | |
download | scala-22bc1f89c13eceaf5d19821995a255e43ebabd77.tar.gz scala-22bc1f89c13eceaf5d19821995a255e43ebabd77.tar.bz2 scala-22bc1f89c13eceaf5d19821995a255e43ebabd77.zip |
Merge pull request #4095 from retronym/ticket/8933
Fix problems in Symbol Literal static caching
Diffstat (limited to 'test')
-rw-r--r-- | test/files/run/t8933.check | 1 | ||||
-rw-r--r-- | test/files/run/t8933/A_1.scala | 6 | ||||
-rw-r--r-- | test/files/run/t8933/Test_2.scala | 10 | ||||
-rw-r--r-- | test/files/run/t8933b/A.scala | 4 | ||||
-rw-r--r-- | test/files/run/t8933b/Test.scala | 9 | ||||
-rw-r--r-- | test/files/run/t8933c.scala | 14 |
6 files changed, 44 insertions, 0 deletions
diff --git a/test/files/run/t8933.check b/test/files/run/t8933.check new file mode 100644 index 0000000000..d5ef468b98 --- /dev/null +++ b/test/files/run/t8933.check @@ -0,0 +1 @@ +'traitSymbol diff --git a/test/files/run/t8933/A_1.scala b/test/files/run/t8933/A_1.scala new file mode 100644 index 0000000000..996e3b4a2c --- /dev/null +++ b/test/files/run/t8933/A_1.scala @@ -0,0 +1,6 @@ +class MotherClass + +trait MixinWithSymbol { + self: MotherClass => + def symbolFromTrait: Symbol = 'traitSymbol +} diff --git a/test/files/run/t8933/Test_2.scala b/test/files/run/t8933/Test_2.scala new file mode 100644 index 0000000000..c506a7c51f --- /dev/null +++ b/test/files/run/t8933/Test_2.scala @@ -0,0 +1,10 @@ +class MotherClass extends MixinWithSymbol { + val classSymbol = 'classSymbol +} + +object Test { + def main(args: Array[String]) { + val symbol = (new MotherClass).symbolFromTrait + println(symbol) + } +} diff --git a/test/files/run/t8933b/A.scala b/test/files/run/t8933b/A.scala new file mode 100644 index 0000000000..d25d893c6f --- /dev/null +++ b/test/files/run/t8933b/A.scala @@ -0,0 +1,4 @@ +trait MixinWithSymbol { + self: MotherClass => + def symbolFromTrait: Any = 'traitSymbol +} diff --git a/test/files/run/t8933b/Test.scala b/test/files/run/t8933b/Test.scala new file mode 100644 index 0000000000..46eedd660f --- /dev/null +++ b/test/files/run/t8933b/Test.scala @@ -0,0 +1,9 @@ +class MotherClass extends MixinWithSymbol { + def foo = 'sym1 +} + +object Test { + def main(args: Array[String]) { + (new MotherClass).symbolFromTrait + } +} diff --git a/test/files/run/t8933c.scala b/test/files/run/t8933c.scala new file mode 100644 index 0000000000..22011bc323 --- /dev/null +++ b/test/files/run/t8933c.scala @@ -0,0 +1,14 @@ +object Test { + def main(args: Array[String]): Unit = { + try { + {throw T; Symbol}.apply("a") + assert(false, "exception not thrown") + } catch { + case T => // ok + case t: Throwable => + assert(false, "wrong not thrown: " + t) + } + } +} + +object T extends Throwable |