@matz any chance I can get this enhancement into 4.1? I think it helps usability a fair amount: ``` 10001 $ ./build/miniruby tool/runruby.rb --extout=build --archdir=build -- -E Available Encodings: ASCII-8BIT, Big5, Big5-HK...zenspider (Ryan Davis)
Quick and dirty patch: https://github.com/ruby/ruby/compare/master...zenspider:ruby:zenspider__encodings?expand=1 This is rough. I'm faking an eval early in the option handling. There is probably a better C way to do this. It is proba...zenspider (Ryan Davis)
Eregon (Benoit Daloze) wrote in #note-2: > I think a better fix, related to this issue, would be to stop checking the class of rescue clauses, I think any expression should be allowed and just call `===` on them. > ... so what should `...zenspider (Ryan Davis)
The actual place where this showed up is in `assert_raises(*exp)` (edited for succinctness): ```ruby def assert_raises *exp msg = "#{exp.pop}.\n" if String === exp.last exp << StandardError if exp.empty? be...zenspider (Ryan Davis)
this works fine (but I don't think it should): ```ruby begin raise "nope" rescue RuntimeError, /why am I allowed?/, "or me?" => e # yay end ``` whereas this version shows a type error, which seems right: ```ruby begin be...zenspider (Ryan Davis)