[Closed] Ruby option -Ke and -KE doesn't work well on Mac OSX 10.9.2

Issue #9825 has been updated by Nobuyoshi N…

Status changed from Open to Closed
% Done changed from 0 to 100

Applied in changeset r45904.


dir.c: match in UTF-8

  • dir.c (push_glob): match in UTF-8 on Mac OS X.
    [ruby-dev:48213] [Bug #9825]

Bug #9825: Ruby option -Ke and -KE doesn’t work well on Mac OSX 10.9.2

  • Author: Ayumu AIZAWA
  • Status: Closed
  • Priority: Normal
  • Assignee:
  • Category:
  • Target version: current: 2.2.0
  • ruby -v: ruby 2.2.0dev (2014-05-10 trunk 45900) [x86_64-darwin13]
  • Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN

手元の環境でビルドした環境でテストしたころ、TestRubyOptions#test_kanji で EUC-JP が invalid byte
sequence in EUC-JP と判定されて失敗します。
その他のエンコード(Windows-31J、UTF-8、ASCII-8BIT)は問題なく通るようです。

$ make test-all TESTS=‘-vn /test_kanji/ test/ruby/test_rubyoptions.rb’
CC = clang
LD = ld
LDSHARED = clang -dynamic -bundle
CFLAGS = -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter
-Wno-parentheses -Wno-long-long -Wno-missing-field-initializers
-Wunused-variable -Werror=pointer-arith -Werror=write-strings
-Werror=declaration-after-statement -Werror=shorten-64-to-32
-Werror=implicit-function-declaration -Werror=division-by-zero
-Werror=deprecated-declarations -Werror=extra-tokens -pipe -arch x86_64
XCFLAGS = -D_FORTIFY_SOURCE=2 -fstack-protector -fno-strict-overflow
-fvisibility=hidden -DRUBY_EXPORT -fPIE
CPPFLAGS = -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE
-D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -I.
-I.ext/include/x86_64-darwin13 -I./include -I.
DLDFLAGS = -Wl,-undefined,dynamic_lookup
-Wl,-multiply_defined,suppress -fstack-protector -Wl,-u,_objc_msgSend
-Wl,-pie -framework CoreFoundation -arch x86_64
SOLIBS =
Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn)
Target: x86_64-apple-darwin13.1.0
Thread model: posix
./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext
– --disable-gems “./test/runner.rb” --ruby=“./miniruby -I./lib -I.
-I.ext/common ./tool/runruby.rb --extout=.ext – --disable-gems” -vn
/test_kanji/ test/ruby/test_rubyoptions.rb
Run options: “–ruby=./miniruby -I./lib -I. -I.ext/common
./tool/runruby.rb --extout=.ext – --disable-gems” -vn /test_kanji/

Running tests:

TestRubyOptions#test_kanji = 0.07 s = F

Finished tests in 0.080113s, 12.4824 tests/s, 62.4118 assertions/s.

  1. Failure:
    TestRubyOptions#test_kanji
    [/Users/ayumin/github/ruby/test/ruby/test_rubyoptions.rb:131]:
    <[“EUC-JP”]> expected but was
    <[]>.

<[]> expected but was
<[“/Users/ayumin/github/ruby/lib/rubygems/specification.rb:710:in `[]':
invalid byte sequence in EUC-JP (ArgumentError)”,
“\tfrom /Users/ayumin/github/ruby/lib/rubygems/specification.rb:710:in
`block in each_gemspec’”,
“\tfrom /Users/ayumin/github/ruby/lib/rubygems/specification.rb:709:in
`each’”,
“\tfrom /Users/ayumin/github/ruby/lib/rubygems/specification.rb:709:in
`each_gemspec’”,
“\tfrom /Users/ayumin/github/ruby/lib/rubygems/specification.rb:724:in
`each_spec’”,
“\tfrom /Users/ayumin/github/ruby/lib/rubygems/specification.rb:758:in
`load_defaults’”,
“\tfrom /Users/ayumin/github/ruby/lib/rubygems.rb:1211:in `<top
(required)>'”,
“\tfrom internal:gem_prelude:1:in `require’”,
“\tfrom internal:gem_prelude:1:in `'”]>.

1 tests, 5 assertions, 1 failures, 0 errors, 0 skips

ruby -v: ruby 2.2.0dev (2014-05-10 trunk 45900) [x86_64-darwin13]
make: *** [yes-test-all] Error 1