summaryrefslogtreecommitdiff
path: root/test/files/neg/main1.check
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2011-08-01 17:46:48 +0000
committerPaul Phillips <paulp@improving.org>2011-08-01 17:46:48 +0000
commitdaa26379ceae60b441f49dab49f367ebea027529 (patch)
tree42ab375e1071ccc625258241f876c1a4d0b75cc7 /test/files/neg/main1.check
parent8c0fa605fba819d6ad8714a488d404e966d224b3 (diff)
downloadscala-daa26379ceae60b441f49dab49f367ebea027529.tar.gz
scala-daa26379ceae60b441f49dab49f367ebea027529.tar.bz2
scala-daa26379ceae60b441f49dab49f367ebea027529.zip
Working on jar creation infrastructure.
output generation (but only then, since otherwise we're not creating the jar): 1) -Xmain-class foo.Bar will give the jar a Main-Class of foo.Bar 2) Alternatively, if there is only one runnable program, that will be the Main-Class 3) Always, the jar's manifest will have an entry for Scala-Compiler-Version. Not very relatedly, a warning is now issued when a module has a main method but a runnable program will not be generated. Closes SI-4861. This represents an opening step toward automatically recognizing mismatched bytecode situations: coarse, but useful and safe. Review by mirco.
Diffstat (limited to 'test/files/neg/main1.check')
-rw-r--r--test/files/neg/main1.check26
1 files changed, 26 insertions, 0 deletions
diff --git a/test/files/neg/main1.check b/test/files/neg/main1.check
new file mode 100644
index 0000000000..734c78e54d
--- /dev/null
+++ b/test/files/neg/main1.check
@@ -0,0 +1,26 @@
+main1.scala:3: error: Foo has a main method, but foo1.Foo will not be a runnable program.
+ Its companion is a trait, which means no static forwarder can be generated.
+
+ object Foo { // companion is trait
+ ^
+main1.scala:10: error: Foo has a main method, but foo2.Foo will not be a runnable program.
+ Its companion contains its own main method, which means no static forwarder can be generated.
+
+ object Foo { // companion has its own main
+ ^
+main1.scala:22: error: Foo has a main method, but foo3.Foo will not be a runnable program.
+ Its companion contains its own main method (implementation restriction: no main is allowed, regardless of signature), which means no static forwarder can be generated.
+
+ object Foo { // Companion contains main, but not an interfering main.
+ ^
+main1.scala:31: error: Foo has a main method, but foo4.Foo will not be a runnable program.
+ Its companion contains its own main method (implementation restriction: no main is allowed, regardless of signature), which means no static forwarder can be generated.
+
+ object Foo extends Foo { // Inherits main from the class
+ ^
+main1.scala:39: error: Foo has a main method, but foo5.Foo will not be a runnable program.
+ Its companion contains its own main method (implementation restriction: no main is allowed, regardless of signature), which means no static forwarder can be generated.
+
+ object Foo extends Foo { // Overrides main from the class
+ ^
+5 errors found