Code Review: bugfixes9

tfpt review /shelveset:bugfixes9;REDMOND\jflam

Ruby only bug fixes:

Passes all local tests.

#19804: Inheriting from Numeric

  • added a default ctor

#19806: Wrong number or type of arguments for Regexp

  • added overloads and trivially implemented Regexp.compile as well
  • removed ctor for Regexp that takes a string - not necessary because we
    have implicit conversion operator for MutableString to String

#19887: Array#reverse_each not implemented

  • implemented and verified that all specs pass

#19893: String#ljust not implemented

  • implemented ljust - all specs pass
  • also trivially implemented rjust - all specs pass

#19842: undef_method overload

  • added overload that accepts a string

#19891: Module comparison methods unimplemented

  • implemented <, <=, >, >=, <=> - all specs pass

#19845: syntax error - unexpected BLOCK_DO

  • fixed by patch #19880

Patches applied:

#19879: Implements the RUBY_ENGINE constant (Michael L.)

#19880: Fix for Parser CmdArg bug #19845