yarv-diff:366
From: ko1 atdot.net
Date: 17 Aug 2006 14:44:16 +0900
Subject: [yarv-diff:366] r533 - trunk
Author: ko1
Date: 2006-08-17 14:44:15 +0900 (Thu, 17 Aug 2006)
New Revision: 533
Modified:
trunk/
trunk/ChangeLog
trunk/class.c
Log:
r830@lermite: ko1 | 2006-08-17 11:03:08 +0900
* class.c (clone_method) : check undef-ed method
Property changes on: trunk
___________________________________________________________________
Name: svk:merge
- 81cd9672-7512-7e48-ae48-6936450e977d:/local/yarv/trunk:825
+ 81cd9672-7512-7e48-ae48-6936450e977d:/local/yarv/trunk:830
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2006-08-15 06:09:17 UTC (rev 532)
+++ trunk/ChangeLog 2006-08-17 05:44:15 UTC (rev 533)
@@ -4,6 +4,11 @@
# from Mon, 03 May 2004 01:24:19 +0900
#
+2006-08-17(Thu) 11:02:16 +0900 Koichi Sasada <ko1 atdot.net>
+
+ * class.c (clone_method) : check undef-ed method
+
+
2006-08-15(Tue) 15:07:43 +0900 Koichi Sasada <ko1 atdot.net>
* insns.def : fix opt_plus routine ([yarv-dev-en:149])
Modified: trunk/class.c
===================================================================
--- trunk/class.c 2006-08-15 06:09:17 UTC (rev 532)
+++ trunk/class.c 2006-08-17 05:44:15 UTC (rev 533)
@@ -64,11 +64,18 @@
static int
clone_method(ID mid, NODE *body, struct clone_method_data *data)
{
- st_insert(data->tbl, mid,
- (st_data_t)NEW_FBODY(
- NEW_METHOD(body->nd_body->nd_body,
- data->klass, /* TODO */
- body->nd_body->nd_noex), 0));
+ if (body == 0) {
+ st_insert(data->tbl, mid, 0);
+ }
+ else {
+ st_insert(data->tbl, mid,
+ (st_data_t)
+ NEW_FBODY(
+ NEW_METHOD(body->nd_body->nd_body,
+ data->klass, /* TODO */
+ body->nd_body->nd_noex),
+ 0));
+ }
return ST_CONTINUE;
}
--
ML: yarv-diff quickml.atdot.net
Info: http://www.atdot.net/~ko1/quickml