aboutsummaryrefslogtreecommitdiff
path: root/test/test/transform
diff options
context:
space:
mode:
authorDmitry Petrashko <dmitry.petrashko@gmail.com>2014-03-31 16:10:24 +0200
committerDmitry Petrashko <dmitry.petrashko@gmail.com>2014-03-31 16:12:38 +0200
commit60310106c2378535c847ddd98170d8c130243c24 (patch)
tree4cf5ec63254284c55d14a7752585fd05e6cd5521 /test/test/transform
parent5d9feeffbf0cdbb93db9d82b1a11202e6943e950 (diff)
downloaddotty-60310106c2378535c847ddd98170d8c130243c24.tar.gz
dotty-60310106c2378535c847ddd98170d8c130243c24.tar.bz2
dotty-60310106c2378535c847ddd98170d8c130243c24.zip
Test that lazy val doesn't rewrite module definitions.
Diffstat (limited to 'test/test/transform')
-rw-r--r--test/test/transform/LazyValsTest.scala9
1 files changed, 9 insertions, 0 deletions
diff --git a/test/test/transform/LazyValsTest.scala b/test/test/transform/LazyValsTest.scala
index edcc7ce0c..6e44f3b15 100644
--- a/test/test/transform/LazyValsTest.scala
+++ b/test/test/transform/LazyValsTest.scala
@@ -7,6 +7,15 @@ import org.junit.Assert
class LazyValsTest extends DottyTest {
@Test
+ def doNotRewriteObjects = {
+ checkCompile("LazyVals", "object O"){ (tree, ctx) =>
+ Assert.assertTrue("local lazy shouldn't rewrite module instance definitions", tree.toString.contains(
+ "ValDef(Modifiers(final module <stable>,,List()),O,Ident(O$),Apply(Select(New(Ident(O$)),<init>),List()))"
+ ))
+ }
+ }
+
+ @Test
def localInt = {
checkCompile("LazyVals", "class LocalLV { def m = { lazy val s = 1; s }}"){ (tree, ctx) =>
Assert.assertTrue("local lazy int rewritten to class creation", tree.toString.contains(