From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Mark H Weaver Newsgroups: gmane.lisp.guile.bugs Subject: bug#19019: Guile improperly assumes 'long' is the same size as pointers Date: Tue, 11 Nov 2014 11:26:41 -0500 Message-ID: <87oasditz2.fsf@yeeloong.lan> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1415723453 26123 80.91.229.3 (11 Nov 2014 16:30:53 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 11 Nov 2014 16:30:53 +0000 (UTC) To: 19019@debbugs.gnu.org Original-X-From: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Tue Nov 11 17:30:39 2014 Return-path: Envelope-to: guile-bugs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XoEL0-0008Vr-67 for guile-bugs@m.gmane.org; Tue, 11 Nov 2014 17:30:38 +0100 Original-Received: from localhost ([::1]:49600 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XoEKz-0004bB-MP for guile-bugs@m.gmane.org; Tue, 11 Nov 2014 11:30:37 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:56791) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XoEJT-00020t-L0 for bug-guile@gnu.org; Tue, 11 Nov 2014 11:29:04 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XoEJS-0001p6-SK for bug-guile@gnu.org; Tue, 11 Nov 2014 11:29:03 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:60280) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XoEJS-0001p2-OZ for bug-guile@gnu.org; Tue, 11 Nov 2014 11:29:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1XoEJS-0004lr-HE for bug-guile@gnu.org; Tue, 11 Nov 2014 11:29:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Mark H Weaver Original-Sender: "Debbugs-submit" Resent-CC: bug-guile@gnu.org Resent-Date: Tue, 11 Nov 2014 16:29:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 19019 X-GNU-PR-Package: guile X-GNU-PR-Keywords: X-Debbugs-Original-To: bug-guile@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.141572330018283 (code B ref -1); Tue, 11 Nov 2014 16:29:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 11 Nov 2014 16:28:20 +0000 Original-Received: from localhost ([127.0.0.1]:57493 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XoEIm-0004ko-51 for submit@debbugs.gnu.org; Tue, 11 Nov 2014 11:28:20 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:54767) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XoEIk-0004kh-Pe for submit@debbugs.gnu.org; Tue, 11 Nov 2014 11:28:19 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XoEId-0001bp-LE for submit@debbugs.gnu.org; Tue, 11 Nov 2014 11:28:18 -0500 Original-Received: from lists.gnu.org ([2001:4830:134:3::11]:41263) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XoEId-0001bl-IZ for submit@debbugs.gnu.org; Tue, 11 Nov 2014 11:28:11 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:56426) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XoEIX-0000O8-Bz for bug-guile@gnu.org; Tue, 11 Nov 2014 11:28:11 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XoEIR-0001Zy-CN for bug-guile@gnu.org; Tue, 11 Nov 2014 11:28:05 -0500 Original-Received: from world.peace.net ([96.39.62.75]:43033) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XoEIR-0001Zr-8n for bug-guile@gnu.org; Tue, 11 Nov 2014 11:27:59 -0500 Original-Received: from c-24-62-95-23.hsd1.ma.comcast.net ([24.62.95.23] helo=yeeloong.lan) by world.peace.net with esmtpsa (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.72) (envelope-from ) id 1XoEIK-0001ai-FY; Tue, 11 Nov 2014 11:27:52 -0500 User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-BeenThere: bug-guile@gnu.org List-Id: "Bug reports for GUILE, GNU's Ubiquitous Extension Language" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Original-Sender: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.bugs:7632 Archived-At: Forwarded from guile-user: > Date: Mon, 10 Nov 2014 12:44:55 +0200 > From: Eli Zaretskii > Subject: Re: Unable to compile Guile > To: jeremy chen > Cc: guile-user@gnu.org > >> Date: Sun, 9 Nov 2014 23:30:07 -0500 >> From: jeremy chen >> >> Hi, I am trying to compile guile on windows with Mingw-w64. >> The file libguile/numbers.c signal an error in this function: >> >> static SCM >> scm_i_inum2big (scm_t_inum x) >> { >> /* Return a newly created bignum initialized to X. */ >> SCM z = make_bignum (); >> #if SIZEOF_VOID_P == SIZEOF_LONG >> mpz_init_set_si (SCM_I_BIG_MPZ (z), x); >> #else >> /* Note that in this case, you'll also have to check all mpz_*_ui and >> mpz_*_si invocations in Guile. */ >> #error creation of mpz not implemented for this inum size >> #endif >> return z; >> } >> >> sizeof(void*) is 8 and sizeof(long) is 4 on my machine. >> Anyway to get around this? Thanks. > > This is a bug in Guile: it assumes the LP64 data model, where both > 'long' and a pointer are 64-bit wide. But 64-bit Windows uses the > LLP64 model, where 'long' is a 32-bit data type, and the 64-bit > integer data type is 'long long' or '__int64'. > > You need to fix Guile to support the LLP64 model, at least in this > module, and probably elsewhere as well.