diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/files/run/t7852.check | 34 | ||||
-rw-r--r-- | test/files/run/t7852.scala | 21 |
2 files changed, 48 insertions, 7 deletions
diff --git a/test/files/run/t7852.check b/test/files/run/t7852.check index 008639075a..648f464aa2 100644 --- a/test/files/run/t7852.check +++ b/test/files/run/t7852.check @@ -1,4 +1,4 @@ -class scala.tools.asm.tree.MethodNode +string LDC "" ALOAD 0 INVOKEVIRTUAL java/lang/Object.toString ()Ljava/lang/String; @@ -16,3 +16,35 @@ class scala.tools.asm.tree.MethodNode MAXSTACK = 2 MAXLOCALS = 1 + +module + GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$; + ALOAD 0 + INVOKEVIRTUAL java/lang/Object.toString ()Ljava/lang/String; + ASTORE 1 + DUP + IFNONNULL L0 + POP + ALOAD 1 + IFNULL L1 + GOTO L2 + L0 + FRAME FULL [Lean java/lang/String] [scala/collection/immutable/Nil$] + ALOAD 1 + INVOKEVIRTUAL java/lang/Object.equals (Ljava/lang/Object;)Z + IFEQ L2 + L1 + FRAME SAME + ICONST_1 + GOTO L3 + L2 + FRAME SAME + ICONST_0 + L3 + FRAME SAME1 I + POP + RETURN + MAXSTACK = 2 + MAXLOCALS = 2 + + diff --git a/test/files/run/t7852.scala b/test/files/run/t7852.scala index eed211c7bc..3c930fbbc1 100644 --- a/test/files/run/t7852.scala +++ b/test/files/run/t7852.scala @@ -5,16 +5,25 @@ import scala.tools.nsc.util.stringFromWriter object Test extends BytecodeTest { def show { val classNode = loadClassNode("Lean") - val meth = getMethod(classNode, "foo") - println(meth.getClass) - val textifier = new Textifier() - meth.accept(new TraceMethodVisitor(textifier)) - println(stringFromWriter(w => textifier.print(w))) + def showMethod(name: String) { + val meth = getMethod(classNode, name) + println(name) + val textifier = new Textifier() + meth.accept(new TraceMethodVisitor(textifier)) + println(stringFromWriter(w => textifier.print(w))) + println() + } + showMethod("string") + showMethod("module") } } class Lean { - def foo { + def string { "" == toString } + + def module { + Nil == (toString: Any) + } } |