summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorIulian Dragos <jaguarul@gmail.com>2009-04-22 15:01:05 +0000
committerIulian Dragos <jaguarul@gmail.com>2009-04-22 15:01:05 +0000
commitd1d54c6f8d616b13bca6c6a5bf91ae46f119e0d1 (patch)
treef6822274d31fb70754891d6e4ab4e9e4fff87af2 /test
parent0adcf1fd865737ce72fca3460234dc4a1bd27639 (diff)
downloadscala-d1d54c6f8d616b13bca6c6a5bf91ae46f119e0d1.tar.gz
scala-d1d54c6f8d616b13bca6c6a5bf91ae46f119e0d1.tar.bz2
scala-d1d54c6f8d616b13bca6c6a5bf91ae46f119e0d1.zip
Added test for java signatures
Diffstat (limited to 'test')
-rw-r--r--test/files/pos5/signatures/Test.java11
-rw-r--r--test/files/pos5/signatures/sig.scala12
2 files changed, 23 insertions, 0 deletions
diff --git a/test/files/pos5/signatures/Test.java b/test/files/pos5/signatures/Test.java
new file mode 100644
index 0000000000..ac34bcea0c
--- /dev/null
+++ b/test/files/pos5/signatures/Test.java
@@ -0,0 +1,11 @@
+import scala.RandomAccessSeq.Mutable;
+import test.Outer;
+
+/* Test correct generation of java signatures. The Outer class should not
+ * have a Java signature attribute for the inner method definition. Trait
+ * Mutable should have one, even though it is also a nested definition.
+ * (but for classes there is a way to tell about nesting to the JVM).
+ */
+class Test {
+ Outer o = new Outer();
+} \ No newline at end of file
diff --git a/test/files/pos5/signatures/sig.scala b/test/files/pos5/signatures/sig.scala
new file mode 100644
index 0000000000..4236f27bed
--- /dev/null
+++ b/test/files/pos5/signatures/sig.scala
@@ -0,0 +1,12 @@
+package test
+
+/* Tests correct generation of Java signatures. The local method 'bar' should
+ * not get a generic signature, as it may refer to type parameters of the enclosing
+ * method, and the JVM does not know about nested methods.
+ */
+class Outer {
+ def foo[A, B](x: A, y: B) = {
+ def bar[X](x1: A, y1: B, z1: X) = z1
+ bar(x, y, 10)
+ }
+}