Project

General

Profile

Actions

Bug #12900

closed

TestSyntax#test_block_after_cmdarg_in_paren fails on PPC64

Added by vo.x (Vit Ondruch) over 7 years ago. Updated over 7 years ago.

Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby -v: ruby 2.4.0dev (2016-11-04 trunk 56558) [powerpc64-linux]
[ruby-core:77920]

Description

Trying to build r56558 on Fedora Rawhide, the build fails on PPC64 with following message:

  1) Failure:
TestSyntax#test_block_after_cmdarg_in_paren [/builddir/build/BUILD/ruby-2.4.0-r56558/test/ruby/test_syntax.rb:897]:
[ruby-core:72482] [Bug #11873].
[LocalJumpError] exception expected, not.
Class: <SyntaxError>
Message: <"should not be passed to tap">
---Backtrace---
/builddir/build/BUILD/ruby-2.4.0-r56558/test/ruby/test_syntax.rb:900:in `block (3 levels) in test_block_after_cmdarg_in_paren'
/builddir/build/BUILD/ruby-2.4.0-r56558/test/ruby/test_syntax.rb:899:in `tap'
/builddir/build/BUILD/ruby-2.4.0-r56558/test/ruby/test_syntax.rb:899:in `block (2 levels) in test_block_after_cmdarg_in_paren'
/builddir/build/BUILD/ruby-2.4.0-r56558/test/ruby/test_syntax.rb:898:in `instance_eval'
/builddir/build/BUILD/ruby-2.4.0-r56558/test/ruby/test_syntax.rb:898:in `block in test_block_after_cmdarg_in_paren'
/builddir/build/BUILD/ruby-2.4.0-r56558/test/lib/test/unit/assertions.rb:74:in `assert_raise'
/builddir/build/BUILD/ruby-2.4.0-r56558/test/ruby/test_syntax.rb:897:in `test_block_after_cmdarg_in_paren'
/builddir/build/BUILD/ruby-2.4.0-r56558/test/lib/test/unit.rb:1029:in `run_test'
---------------

This works just fine on x86_64.


Related issues 1 (0 open1 closed)

Related to Ruby master - Bug #11873: Syntax error and parse problem when calling a method without parenthesesClosedActions
Actions #1

Updated by vo.x (Vit Ondruch) over 7 years ago

  • Related to Bug #11873: Syntax error and parse problem when calling a method without parentheses added

Updated by vo.x (Vit Ondruch) over 7 years ago

It actually passes on PPC64LE. Isn't it something related to different endianness of PPC64?

Updated by ngoto (Naohisa Goto) over 7 years ago

The same error is observed on sparc64-solaris2.10, running on 64-bit big-endian CPU.

Actions #4

Updated by nobu (Nobuyoshi Nakada) over 7 years ago

  • Status changed from Open to Closed

Applied in changeset r56574.


parse.y: fix restored cmdarg_stack

  • parse.y (brace_body, do_body): since cmdarg_stack is saved in
    VALUE val, should restore from the same member. on big-endian
    platforms where VALUE is larger than int, it restored 0 in the
    upper word. [ruby-core:77920] [Bug #12900]
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0