Issue #16382 has been updated by yuki24 (Yuki Nishijima).

Backport changed from 2.5: UNKNOWN, 2.6: UNKNOWN to 2.5: REQUIRED, 2.6: DONTNEED

2.6.5 seems to be working fine:

```
~/GitHub/ruby/did_you_mean/テスト$ ruby -v
ruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-darwin18]
~/GitHub/ruby/did_you_mean/テスト$ echo "puts 'ok'" > a.rb
~/GitHub/ruby/did_you_mean/テスト$ LC_ALL="C" RUBYLIB=".:" ruby -E cp932:utf-8 a.rb
ok
```

while 2.5.5 seems to have the same issue:

```
~/GitHub/ruby/did_you_mean/テスト$ ruby -v
ruby 2.5.5p157 (2019-03-15 revision 67260) [x86_64-darwin18]
~/GitHub/ruby/did_you_mean/テスト$ LC_ALL="C" RUBYLIB=".:" ruby -E cp932:utf-8 a.rb
Traceback (most recent call last):
	2: from <internal:gem_prelude>:5:in `<internal:gem_prelude>'
	1: from /Users/yuki/.rbenv/versions/2.5.5/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
/Users/yuki/.rbenv/versions/2.5.5/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require': stack level too deep (SystemStackError)
```

And Interestingly enough, 2.5.6 and 2.5.7 seem to be running into a different issue:

```
~/GitHub/ruby/did_you_mean/テスト$ ruby -v
ruby 2.5.6p201 (2019-08-28 revision 67796) [x86_64-darwin18]
~/GitHub/ruby/did_you_mean/テスト$ LC_ALL="C" RUBYLIB=".:" ruby -E cp932:utf-8 a.rb
Illegal instruction: 4

~/GitHub/ruby/did_you_mean/テスト$ ruby -v
ruby 2.5.7p206 (2019-10-01 revision 67816) [x86_64-darwin18]
~/GitHub/ruby/did_you_mean/テスト$ LC_ALL="C" RUBYLIB=".:" ruby -E cp932:utf-8 a.rb
Illegal instruction: 4
```

----------------------------------------
Bug #16382: SystemStackError thrown when running `LC_ALL="C" RUBYLIB=".:" ruby -E cp932:utf-8 aaa.rb` from where the current dir contains Japanese characters
https://bugs.ruby-lang.org/issues/16382#change-82882

* Author: yuki24 (Yuki Nishijima)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: ruby 2.7.0dev (2019-11-29T23:00:40Z master 0b1b2f2442) [x86_64-darwin18]
* Backport: 2.5: REQUIRED, 2.6: DONTNEED
----------------------------------------
## Steps to reproduce

```
~/GitHub/ruby/did_you_mean/テスト$ LC_ALL="C" RUBYLIB=".:" ruby -E cp932:utf-8 aaa.rb
Traceback (most recent call last):
	2: from <internal:gem_prelude>:5:in `<internal:gem_prelude>'
	1: from /Users/yuki/.rbenv/versions/2.7.0-dev/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:72:in `require'
/Users/yuki/.rbenv/versions/2.7.0-dev/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:72:in `require': stack level too deep (SystemStackError)
```

The key points are:

 * The current directory contains one or more Japanese character (perhaps non-alphabet char is what's causing the issue, but I'm unfamiliar with other types of chars)
 * Only happens when `LC_ALL="C" RUBYLIB=".:"` environment variables and the option `-E cp932:utf-8` are given
 * The existing of the file that is supposed to be run by the executable does not seem to matter

## Actual

A `SystemStackError` is thrown.

## Expected

The file specified should be run or Ruby should throw a `No such file or directory -- aaa.rb (LoadError)` error.



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>