git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17064 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
tadf 2008-06-09 15:13:45 +00:00
parent 5265458754
commit 4879ae65fd
2 changed files with 19 additions and 13 deletions

View File

@ -1132,7 +1132,7 @@ static VALUE comp_pat1, comp_pat2, a_slash, a_dot_and_an_e,
#define DENOMINATOR "[-+]?" DIGITS #define DENOMINATOR "[-+]?" DIGITS
#define NUMBER "[-+]?" NUMERATOR "(?:\\/" DENOMINATOR ")?" #define NUMBER "[-+]?" NUMERATOR "(?:\\/" DENOMINATOR ")?"
#define NUMBERNOS NUMERATOR "(?:\\/" DENOMINATOR ")?" #define NUMBERNOS NUMERATOR "(?:\\/" DENOMINATOR ")?"
#define PATTERN1 "\\A(" NUMBER "|\\(" NUMBER "\\))?[iIjJ]" #define PATTERN1 "\\A((" NUMBER ")|\\((" NUMBER ")\\))?[iIjJ]"
#define PATTERN2 "\\A(" NUMBER ")(([-+])(?:(" NUMBERNOS ")|\\((" NUMBER ")\\))?[iIjJ])?" #define PATTERN2 "\\A(" NUMBER ")(([-+])(?:(" NUMBERNOS ")|\\((" NUMBER ")\\))?[iIjJ])?"
static void static void
@ -1210,6 +1210,11 @@ string_to_c_internal(VALUE self)
si = f_aref(m, INT2FIX(1)); si = f_aref(m, INT2FIX(1));
if (NIL_P(si)) if (NIL_P(si))
si = rb_str_new2("1"); si = rb_str_new2("1");
else {
si = f_aref(m, INT2FIX(2));
if (NIL_P(si))
si = f_aref(m, INT2FIX(3));
}
re = f_post_match(m); re = f_post_match(m);
} }
if (NIL_P(m)) { if (NIL_P(m)) {

View File

@ -1422,8 +1422,9 @@ nurat_s_convert(int argc, VALUE *argv, VALUE klass)
{ {
VALUE a1, a2; VALUE a1, a2;
if (rb_scan_args(argc, argv, "02", &a1, &a2) == 1) a1 = Qnil;
a2 = ONE; a2 = Qnil;
rb_scan_args(argc, argv, "02", &a1, &a2);
switch (TYPE(a1)) { switch (TYPE(a1)) {
case T_COMPLEX: case T_COMPLEX: