diff --git a/ChangeLog b/ChangeLog index 0692de2351..5524cde9c9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Fri Jan 16 14:56:49 2004 Nobuyoshi Nakada + + * eavl.c (proc_eq): compare also arguments and environment. + [ruby-dev:22590] + Fri Jan 16 14:33:35 2004 Nobuyoshi Nakada * marshal.c (class2path): get class path and check referable. diff --git a/eval.c b/eval.c index 2ec0dca6fa..1b769d58c9 100644 --- a/eval.c +++ b/eval.c @@ -8212,8 +8212,10 @@ proc_eq(self, other) if (CLASS_OF(self) != CLASS_OF(other)) return Qfalse; Data_Get_Struct(self, struct BLOCK, data); Data_Get_Struct(other, struct BLOCK, data2); - if (data->body == data2->body) return Qtrue; - return Qfalse; + if (data->body != data2->body) return Qfalse; + if (data->var != data2->var) return Qfalse; + if (data->frame.uniq != data2->frame.uniq) return Qfalse; + return Qtrue; } /*