Project

General

Profile

Actions

Bug #12540

closed

test failures when SHARABLE_MIDDLE_SUBSTRING=1

Bug #12540: test failures when SHARABLE_MIDDLE_SUBSTRING=1

Added by znz (Kazuhiro NISHIYAMA) over 9 years ago. Updated over 4 years ago.

Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby 2.4.0dev (2016-07-02 trunk 55562) [x86_64-linux]
[ruby-dev:49704]
Tags:

Description

SHARABLE_MIDDLE_SUBSTRING=1 でビルドすると Test_StringCStr#test_wchar_lstrip!,Test_StringCStr#test_wchar_rstrip! が失敗します。

[16604/16757] Test_StringCStr#test_wchar_lstrip! = 0.00 s 3) Failure: Test_StringCStr#test_wchar_lstrip! [/home/vagrant/ruby/test/-ext-/string/test_cstr.rb:81]: Expected {#<Encoding:UTF-16BE>=>"a", #<Encoding:UTF-16LE>=>"a", #<Encoding:UTF-32BE>=>"a", #<Encoding:UTF-32LE>=>"a"} to be empty. [16606/16757] Test_StringCStr#test_wchar_rstrip! = 0.00 s 4) Failure: Test_StringCStr#test_wchar_rstrip! [/home/vagrant/ruby/test/-ext-/string/test_cstr.rb:85]: Expected {#<Encoding:UTF-16BE>=>" ", #<Encoding:UTF-16LE>=>" ", #<Encoding:UTF-32BE>=>" ", #<Encoding:UTF-32LE>=>" "} to be empty. 

原因を調べてみたところ、lstrip!,rstrip! だけ !SHARABLE_MIDDLE_SUBSTRING で TERM_FILL をくくっているからのようでした。

調べていて思ったのですが、個別に TERM_FILL を呼ぶかどうかを分岐するよりも、 SHARABLE_MIDDLE_SUBSTRING の値によって TERM_FILL 自体の定義を変更するようにした方が良いのではないでしょうか?

Actions

Also available in: PDF Atom