Newsgroups: perl.perl6.internals Path: archiver1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed.stanford.edu!nntp.perl.org Return-Path: Mailing-List: contact perl6-internals-h...@perl.org; run by ezmlm Delivered-To: mailing list perl6-intern...@perl.org Received: (qmail 66801 invoked by uid 76); 9 Mar 2004 09:31:32 -0000 Received: from x1.develooper.com (HELO x1.develooper.com) (63.251.223.170) by onion.perl.org (qpsmtpd/0.27-dev) with SMTP; Tue, 09 Mar 2004 01:31:32 -0800 Received: (qmail 13972 invoked by uid 225); 9 Mar 2004 09:31:29 -0000 Delivered-To: perl6-intern...@perl.org Received: (qmail 13856 invoked by alias); 9 Mar 2004 09:31:03 -0000 Received: from [195.170.70.100] (HELO mail.nextra.at) (195.170.70.100) by la.mx.develooper.com (qpsmtpd/0.27-dev) with ESMTP; Tue, 09 Mar 2004 01:31:03 -0800 Received: from lux.leo.home (at24a01-dial-184.nextranet.at [195.170.73.184]) by mail.nextra.at (20030919/20030919/nextra) with ESMTP id i299UvIt019406 for ; Tue, 9 Mar 2004 10:30:58 +0100 (MET) X-nextra-mail01-rcpt: Received: from toetsch.at (thu8.leo.home [192.168.1.5]) by lux.leo.home (Postfix on linux 2.0.36 (i386)) with ESMTP id C0C05118024 for ; Tue, 9 Mar 2004 10:25:18 +0100 (MET) Message-ID: <404D8D7E.4050306@toetsch.at> Date: Tue, 09 Mar 2004 10:25:18 +0100 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.4) Gecko/20011129 X-Accept-Language: en-us MIME-Version: 1.0 To: P6I Subject: 2 more DOD bugs fixed Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on x1.develooper.com X-Spam-Status: No, hits=-4.9 required=8.0 tests=BAYES_00 autolearn=ham version=2.63 Approved: n...@nntp.perl.org From: l...@toetsch.at (Leopold Toetsch) 1) singleton PMCs like Random or Env got destroyed during DOD runs 2) and a really nasty one: During (overridden vtable) method calls, the caller doesn't know that a method is called, so the return continuation in P1 wasn't preserved in the context - the caller just assumes, that its preserved. Now when a method calls another sub or method, a new return continuation is created in P1, which unachored the previous one - it got destroyed during a DOD run. A DOD run is easily triggered during tracing, so this matches the symptoms of recently reported DOD bugs. Jens Rieks had mailed me his EBNF parser some time ago, which happend to expose that bug. After ++some hours, I could eventually nail it down to what is now t/op/gc_10.pasm. leo