marko asplund created JRUBY-6643:
------------------------------------
Summary: jrubyc AOT Java compilation doesn't identify failure cause
Key: JRUBY-6643
URL: https://jira.codehaus.org/browse/JRUBY-6643
Project: JRuby
Issue Type: Improvement
Components: Compiler
Affects Versions: JRuby 1.6.7
Reporter: marko asplund
I'm trying to compile a Ruby script to Java source using jrubyc.
The compilation fails and i'd like to be able to identify the piece of script
code that causes the compiler to fail.
The compiler error message doesn't currently provide enough information for
identifying the erroneous line from the compiler
error output.
jrubyc --verbose --java ruby
Failure during compilation of file src/main/ruby/foo.rb:
org.jruby.parser.ParserSyntaxException: syntax error, unexpected QUESTION
org/jruby/parser/JavaSignatureParser.java:324:in `yyerror'
org/jruby/parser/JavaSignatureParser.java:431:in `yyparse'
org/jruby/parser/JavaSignatureParser.java:28:in `parse'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:142:in
`build_signature'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:219:in
`ClassNodeWalker'
org/jruby/RubyKernel.java:2045:in `instance_eval'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:35:in
`visit_args_node'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:179:in
`with_node'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:34:in
`visit_args_node'
org/jruby/RubyProc.java:270:in `call'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:231:in
`ClassNodeWalker'
org/jruby/RubyKernel.java:2045:in `instance_eval'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:35:in
`visit_defn_node'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:179:in
`with_node'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:34:in
`visit_defn_node'
org/jruby/RubyProc.java:270:in `call'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:263:in
`ClassNodeWalker'
org/jruby/RubyKernel.java:2045:in `instance_eval'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:35:in
`visit_newline_node'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:179:in
`with_node'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:34:in
`visit_newline_node'
org/jruby/RubyProc.java:270:in `call'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:259:in
`ClassNodeWalker'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/builtin/java/java.util.rb:7:in `each'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:259:in
`ClassNodeWalker'
org/jruby/RubyKernel.java:2045:in `instance_eval'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:35:in
`visit_block_node'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:179:in
`with_node'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:34:in
`visit_block_node'
org/jruby/RubyProc.java:270:in `call'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:225:in
`ClassNodeWalker'
org/jruby/RubyKernel.java:2045:in `instance_eval'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:35:in
`visit_class_node'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:179:in
`with_node'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:34:in
`visit_class_node'
org/jruby/RubyProc.java:270:in `call'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:263:in
`ClassNodeWalker'
org/jruby/RubyKernel.java:2045:in `instance_eval'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:35:in
`visit_newline_node'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:179:in
`with_node'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:34:in
`visit_newline_node'
org/jruby/RubyProc.java:270:in `call'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:259:in
`ClassNodeWalker'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/builtin/java/java.util.rb:7:in `each'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:259:in
`ClassNodeWalker'
org/jruby/RubyKernel.java:2045:in `instance_eval'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:35:in
`visit_block_node'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:179:in
`with_node'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:34:in
`visit_block_node'
org/jruby/RubyProc.java:270:in `call'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:270:in
`ClassNodeWalker'
org/jruby/RubyKernel.java:2045:in `instance_eval'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:35:in
`visit_root_node'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:179:in
`with_node'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:34:in
`visit_root_node'
org/jruby/RubyProc.java:270:in `call'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler/java_class.rb:8:in
`generate_java'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler.rb:138:in
`compile_files_with_options'
org/jruby/RubyProc.java:270:in `call'
org/jruby/RubyProc.java:220:in `call'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler.rb:208:in
`compile_files_with_options'
org/jruby/RubyArray.java:1615:in `each'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler.rb:207:in
`compile_files_with_options'
org/jruby/RubyArray.java:1615:in `each'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler.rb:198:in
`compile_files_with_options'
/opt/jruby-1.6.7/lib/ruby/site_ruby/shared/jruby/compiler.rb:90:in
`compile_argv'
/opt/jruby-1.6.7/bin/jrubyc:5:in `(root)'
Compilation FAILED: 1 error(s) encountered
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://jira.codehaus.org/secure/ContactAdministrators!default.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