1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

1.1b8pre1

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/v1_1r@76 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
matz 1998-02-18 01:56:47 +00:00
parent 14aa2e8dda
commit a9662810df
26 changed files with 775 additions and 290 deletions

19
array.c
View file

@ -115,7 +115,12 @@ ary_new4(n, elts)
VALUE ary;
ary = ary_new2(n);
MEMCPY(RARRAY(ary)->ptr, elts, VALUE, n);
if (elts) {
MEMCPY(RARRAY(ary)->ptr, elts, VALUE, n);
}
else {
memclear(RARRAY(ary)->ptr, n);
}
RARRAY(ary)->len = n;
return ary;
@ -136,14 +141,14 @@ assoc_new(car, cdr)
}
static VALUE
ary_s_new(argc, argv, class)
ary_s_new(argc, argv, klass)
int argc;
VALUE *argv;
VALUE class;
VALUE klass;
{
VALUE size;
NEWOBJ(ary, struct RArray);
OBJSETUP(ary, class, T_ARRAY);
OBJSETUP(ary, klass, T_ARRAY);
rb_scan_args(argc, argv, "01", &size);
ary->len = 0;
@ -155,13 +160,13 @@ ary_s_new(argc, argv, class)
}
static VALUE
ary_s_create(argc, argv, class)
ary_s_create(argc, argv, klass)
int argc;
VALUE *argv;
VALUE class;
VALUE klass;
{
NEWOBJ(ary, struct RArray);
OBJSETUP(ary, class, T_ARRAY);
OBJSETUP(ary, klass, T_ARRAY);
ary->len = argc;
ary->capa = argc;