From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Noah Lavine Newsgroups: gmane.lisp.guile.devel Subject: Re: Build Error in master Date: Thu, 2 Feb 2012 21:59:48 -0500 Message-ID: References: <87sjj286g9.fsf@pobox.com> <87pqdzrkpt.fsf@pobox.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Trace: dough.gmane.org 1328237999 20895 80.91.229.3 (3 Feb 2012 02:59:59 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Fri, 3 Feb 2012 02:59:59 +0000 (UTC) Cc: guile-devel To: Andy Wingo Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Fri Feb 03 03:59:58 2012 Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Rt9NU-0005O0-MX for guile-devel@m.gmane.org; Fri, 03 Feb 2012 03:59:56 +0100 Original-Received: from localhost ([::1]:39775 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Rt9NT-0007bQ-EH for guile-devel@m.gmane.org; Thu, 02 Feb 2012 21:59:55 -0500 Original-Received: from eggs.gnu.org ([140.186.70.92]:38236) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Rt9NQ-0007bL-OY for guile-devel@gnu.org; Thu, 02 Feb 2012 21:59:53 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Rt9NP-0005lM-Eh for guile-devel@gnu.org; Thu, 02 Feb 2012 21:59:52 -0500 Original-Received: from mail-pz0-f41.google.com ([209.85.210.41]:53529) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Rt9NP-0005kq-5i for guile-devel@gnu.org; Thu, 02 Feb 2012 21:59:51 -0500 Original-Received: by dadv6 with SMTP id v6so2702644dad.0 for ; Thu, 02 Feb 2012 18:59:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=85sis9RXPTf1jIszNbYExsoSjU82GOjMibjoKzbTchM=; b=GZGxrch1ssN2lpP3K01dDsxT7uPE3y6Y/+n1x6QjYNVS8sGWJ+n2dK0hH7a7cgEr4M Dr1Se5yj5VkYGmPjgKl9xnE+s/8BCH7N1Rd1EjAgfZDMgbY1H7vvmccxU2Eh5p/jU9TX h9XbL8V1kOtmMuygHzAnyE6TFnr4Ave+UN3VI= Original-Received: by 10.68.199.163 with SMTP id jl3mr13310970pbc.78.1328237989493; Thu, 02 Feb 2012 18:59:49 -0800 (PST) Original-Received: by 10.142.237.17 with HTTP; Thu, 2 Feb 2012 18:59:48 -0800 (PST) In-Reply-To: <87pqdzrkpt.fsf@pobox.com> X-Google-Sender-Auth: AW85DjP1GOBRpxnxcVcjettEGb0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 209.85.210.41 X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:13789 Archived-At: Got it! And unfortunately, it's a GC error. Here's what happens: symbols is an SCM object defined in symbols.c. It points to an scm_cell_t which has two elements: a type tag, and a pointer to an scm_weak_set_t. That scm_cell_t is at 0x10101cff0. However, that scm_cell_t is garbage collected in the scm_cons at symbols.c:250. The reason it gets filled with SCM_EOL is that the cons is scm_cons (SCM_BOOL_F, SCM_EOL). So I expect that the scm_cell_t is garbage collected and then immediately reclaimed to be the pair, which would result in its second cell being filled with SCM_EOL, which would explain why we later extract SCM_EOL from it. As a test, I changed the variable 'symbols' in symbols.c to be non-static. That didn't fix it, but then again, I don't really know how GC works yet. I can read the libgc documentation and try to figure this out, but can anyone point me to what I should be looking for? Thanks, Noah On Wed, Feb 1, 2012 at 4:01 AM, Andy Wingo wrote: > On Wed 01 Feb 2012 03:12, Noah Lavine writes: > >> In the failing call, >> =A0 the SCM 'symbols' is 0x10101cff0, but the failing set is at 0x304, >> which has not been allocated. > > 0x304 is one of the iflags, SCM_EOL I think. > > So, I know it might not have anything to do with it, but can you verify > that your guile includes patch 0aed71aa51e89e714de2392c2a5f44694dca77ea > ? =A0I just committed that last night, and although it does not seem to b= e > related, who knows. > > Andy > -- > http://wingolog.org/