From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Andy Wingo Newsgroups: gmane.lisp.guile.user Subject: Re: Now that SCM type is a union... Date: Sun, 14 Aug 2011 22:10:56 +0200 Message-ID: <87liuvg3e7.fsf@pobox.com> References: <20110812124436.GA2223@ccellier.rd.securactive.lan> <74643390-9111-4086-B315-1D2F847A514B@raeburn.org> <87y5yxfqk4.fsf@pobox.com> <0F01A791-AEE9-49D5-BA9D-762C7DCF879B@raeburn.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1313352672 22052 80.91.229.12 (14 Aug 2011 20:11:12 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sun, 14 Aug 2011 20:11:12 +0000 (UTC) Cc: guile-user@gnu.org To: Ken Raeburn Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Sun Aug 14 22:11:07 2011 Return-path: Envelope-to: guile-user@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Qsh1W-0004jR-8s for guile-user@m.gmane.org; Sun, 14 Aug 2011 22:11:06 +0200 Original-Received: from localhost ([::1]:49180 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Qsh1V-0007lR-Ph for guile-user@m.gmane.org; Sun, 14 Aug 2011 16:11:05 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:35946) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Qsh1R-0007dY-8r for guile-user@gnu.org; Sun, 14 Aug 2011 16:11:04 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Qsh1P-0007Qd-P3 for guile-user@gnu.org; Sun, 14 Aug 2011 16:11:01 -0400 Original-Received: from a-pb-sasl-sd.pobox.com ([74.115.168.62]:56843 helo=sasl.smtp.pobox.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Qsh1P-0007QZ-IX for guile-user@gnu.org; Sun, 14 Aug 2011 16:10:59 -0400 Original-Received: from sasl.smtp.pobox.com (unknown [127.0.0.1]) by a-pb-sasl-sd.pobox.com (Postfix) with ESMTP id 5F84F69F7; Sun, 14 Aug 2011 16:10:59 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type; s=sasl; bh=iCIUHTcar6hROhbRLfwl5FIYqx4=; b=GnpguA AQMcAYPzI4NhOgXYQvGfiPpHKkfOSjx9ogKKGS0UxsJ19VtMqgIeXMWAP2fIYmBj RBQPA46ZoKZushdHsjUukmE99KbzJCaMApqMNQldTXBMwaG6Echzr5DBSM4ziBH3 KjnrPvFpOFgvucCOuEM0n/5ITohbDx1K/T58A= DomainKey-Signature: a=rsa-sha1; c=nofws; d=pobox.com; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type; q=dns; s=sasl; b=HIoJh3gLvQloxMzieYJV2pFaeV//7/wx Ff+OvN8jV3bz8UjyL62STxlxZwGTqNdaERtPZOQV/v7YWYOmraKUV+fOyi6r6UD4 HDVPALyq/xC5Z9imOkedQlqCZjhtE/iWyGVrGPl45FJ3d7ogXHj1/dvOLt8BkzWE yO/zFZp+jjM= Original-Received: from a-pb-sasl-sd.pobox.com (unknown [127.0.0.1]) by a-pb-sasl-sd.pobox.com (Postfix) with ESMTP id 29B8A69F6; Sun, 14 Aug 2011 16:10:59 -0400 (EDT) Original-Received: from badger (unknown [90.164.198.39]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by a-pb-sasl-sd.pobox.com (Postfix) with ESMTPSA id 3983A69F5; Sun, 14 Aug 2011 16:10:58 -0400 (EDT) In-Reply-To: <0F01A791-AEE9-49D5-BA9D-762C7DCF879B@raeburn.org> (Ken Raeburn's message of "Sat, 13 Aug 2011 18:00:39 -0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.3 (gnu/linux) X-Pobox-Relay-ID: 862FD9CA-C6B1-11E0-90E5-B797DE995924-02397024!a-pb-sasl-sd.pobox.com X-detected-operating-system: by eggs.gnu.org: Solaris 10 (beta) X-Received-From: 74.115.168.62 X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Original-Sender: guile-user-bounces+guile-user=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.user:8712 Archived-At: Hi Ken, On Sun 14 Aug 2011 00:00, Ken Raeburn writes: > * We should expect some Guile applications to be in C++. What > versions of the C++ spec should Guile support? Dunno. What do other languages have to do with Guile's C interface? Specifically what does C++ have to do with this? (Serious question.) > * Shouldn't there be testing to catch this? (C89 mode, C99 mode, > different C++ specs, enabling various compiler warnings -- for > whatever compiler is in use -- and make them fatal, any interesting > ways one might want to use libguile in an application that might > stress compatibility issues.) I mean automated testing, not just > Cedric. :-) Perhaps :) Interested volunteers are welcome to set this up :) >> I will take a look at this issue soonish, but your help (and Cedric's) >> in debugging it is most appreciated :) I would love to keep the union >> as the "normal" SCM definition, but that might not be possible. > > Regardless of the validity, there are popular compilers out there now > which do not support this, when used in modes people may need or want > to use. The installed headers need to adhere to higher standards in > terms of portability problems and warnings than the library source, > where we can dictate some of the compiler options. Agreed. And AFAIK there are some ABI differences for returning unions versus returning uintptr_t, so unfortunately it can't be a question of ifdefs in Guile's C interface, it seems. I'll work on this, but if you have any suggestions as to the proper fix, they are most welcome. Andy -- http://wingolog.org/