JRuby does not handle empty variable argument list nicely
---------------------------------------------------------
Key: JRUBY-3383
URL: http://jira.codehaus.org/browse/JRUBY-3383
Project: JRuby
Issue Type: Bug
Components: Java Integration
Affects Versions: JRuby 1.1.6
Environment: jruby 1.1.6 (ruby 1.8.6 patchlevel 114) (2008-12-17 rev
8388) [i386-java], Mac OS X 10.5.6 (9G55)
Reporter: Benjamin Bock
Java allows empty variable arguments while JRuby throws an Exception.
An example class with expected result and Exception is given below:
$ cat VariableArgumentOptionalTest.java
public class VariableArgumentOptionalTest {
public static void testVariableArgumentOptional(String somestring, String...
somethingoptional) {
System.out.println("Some String:" + somestring);
System.out.println(somethingoptional);
}
public static void main(String[] args) {
testVariableArgumentOptional("a");
}
}
$ javac VariableArgumentOptionalTest.java
$ java VariableArgumentOptionalTest
Some String:a
[Ljava.lang.String;@e09713
$ jirb
irb(main):001:0> require 'VariableArgumentOptionalTest'
=> true
irb(main):002:0>
Java::VariableArgumentOptionalTest.testVariableArgumentOptional("a")
ArgumentError: wrong # of arguments(1 for 2)
from (irb):3
irb(main):003:0>
Java::VariableArgumentOptionalTest.testVariableArgumentOptional("a",[])
TypeError: for method testVariableArgumentOptional expected [java.lang.String,
[Ljava.lang.String;]; got: [java.lang.String,org.jruby.RubyArray]; error:
argument type mismatch
from (irb):4
irb(main):004:0>
Java::VariableArgumentOptionalTest.testVariableArgumentOptional("a",[].to_java(:String))
Some String:a
[Ljava.lang.String;@7f673b
=> nil
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email