aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-07-27 14:30:09 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-07-27 14:30:09 +0000
commitbd3404ced0af1a368e070b6c0fde63290a3e54a8 (patch)
treedf2abda7036a17c288f1837320dfc6360174f833
parent1dbd5e6a3e499c41bc434743b794ce3ddb660756 (diff)
downloadruby-bd3404ced0af1a368e070b6c0fde63290a3e54a8.tar.gz
* gc.c (obj_free): make message formant consistent with one from
gc_mark(). [ruby-talk:149668] * sprintf.c (quad_t): prepare quad_t as well. [ruby-talk:149668] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8852 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog7
-rw-r--r--gc.c6
-rw-r--r--parse.y23
-rw-r--r--sprintf.c1
4 files changed, 23 insertions, 14 deletions
diff --git a/ChangeLog b/ChangeLog
index d245b21e70..2b18fb0d8b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Wed Jul 27 23:23:54 2005 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * gc.c (obj_free): make message formant consistent with one from
+ gc_mark(). [ruby-talk:149668]
+
+ * sprintf.c (quad_t): prepare quad_t as well. [ruby-talk:149668]
+
Wed Jul 27 22:11:37 2005 Kouhei Sutou <kou@cozmixng.org>
* sample/rss/tdiary_plugin: removed. because the plugin
diff --git a/gc.c b/gc.c
index a29b7c7d92..9929eaf328 100644
--- a/gc.c
+++ b/gc.c
@@ -984,7 +984,7 @@ gc_mark_children(ptr, lev)
break;
default:
- rb_bug("rb_gc_mark(): unknown data type %p(%p) %s",
+ rb_bug("rb_gc_mark(): unknown data type 0x%lx(%p) %s",
obj->as.basic.flags & T_MASK, obj,
is_pointer_to_heap(obj) ? "corrupted object" : "non object");
}
@@ -1236,8 +1236,8 @@ obj_free(obj)
break;
default:
- rb_bug("gc_sweep(): unknown data type %p(%ld)", obj,
- RANY(obj)->as.basic.flags & T_MASK);
+ rb_bug("gc_sweep(): unknown data type 0x%lx(%p)",
+ RANY(obj)->as.basic.flags & T_MASK, obj);
}
}
diff --git a/parse.y b/parse.y
index 4c28192b25..6c2916ddb6 100644
--- a/parse.y
+++ b/parse.y
@@ -3178,7 +3178,8 @@ lambda : {
lambda_body
{
/*%%%*/
- $$ = NEW_LAMBDA($2, $4);
+ $$ = $2;
+ $$->nd_body = block_append($$->nd_body, $4);
dyna_pop($<vars>1);
/*%
$$ = dispatch2(lambda, $2, $4);
@@ -3186,42 +3187,42 @@ lambda : {
}
;
-f_larglist : '(' f_args rparen
+f_larglist : '(' f_args opt_bv_decl rparen
{
/*%%%*/
- $$ = $2;
+ $$ = NEW_LAMBDA($2, $3);
/*%
$$ = dispatch1(paren, $2);
%*/
}
- | f_arg opt_terms
+ | f_arg opt_bv_decl
{
/*%%%*/
- $$ = NEW_ARGS($1, 0, 0);
+ $$ = NEW_LAMBDA(NEW_ARGS($1, 0, 0), $2);
/*%
$$ = dispatch4(params, $1, Qnil, Qnil, Qnil);
%*/
}
- | f_arg ',' f_rest_arg opt_terms
+ | f_arg ',' f_rest_arg opt_bv_decl
{
/*%%%*/
- $$ = NEW_ARGS($1, 0, $3);
+ $$ = NEW_LAMBDA(NEW_ARGS($1, 0, $3), $4);
/*%
$$ = dispatch4(params, $1, Qnil, $3, Qnil);
%*/
}
- | f_rest_arg opt_terms
+ | f_rest_arg opt_bv_decl
{
/*%%%*/
- $$ = NEW_ARGS(0, 0, $1);
+ $$ = NEW_LAMBDA(NEW_ARGS(0, 0, $1), $2);
/*%
$$ = dispatch4(params, Qnil, Qnil, $1, Qnil);
%*/
}
- | /* none */
+ | opt_bv_decl
{
/*%%%*/
- $$ = NEW_ARGS(0, 0, 0);
+ $$ = NEW_LAMBDA(NEW_ARGS(0, 0, 0), $1);
/*%
$$ = dispatch4(params, Qnil, Qnil, Qnil, Qnil);
%*/
diff --git a/sprintf.c b/sprintf.c
index 15678232e9..0d935a1eb5 100644
--- a/sprintf.c
+++ b/sprintf.c
@@ -842,6 +842,7 @@ fmt_setup(buf, c, flags, width, prec)
# if SIZEOF_LONG_LONG == SIZEOF_VOIDP
# define _HAVE_SANE_QUAD_
# define _HAVE_LLP64_
+# define quad_t LONG_LONG
# define u_quad_t unsigned LONG_LONG
# endif
#endif