From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Nathan Trapuzzano Newsgroups: gmane.emacs.bugs Subject: bug#15814: 24.3.50; Signal error on malformed bindings in `cl-symbol-macrolet' (patch) Date: Wed, 06 Nov 2013 06:16:55 -0500 Message-ID: <87ppqd2314.fsf@nbtrap.com> References: <87k3gmmvk9.fsf@nbtrap.com> <87a9himfvp.fsf@nbtrap.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1383736697 4107 80.91.229.3 (6 Nov 2013 11:18:17 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 6 Nov 2013 11:18:17 +0000 (UTC) Cc: 15814@debbugs.gnu.org To: Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed Nov 06 12:18:21 2013 Return-path: Envelope-to: geb-bug-gnu-emacs@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 1Ve17s-0006Q6-Pu for geb-bug-gnu-emacs@m.gmane.org; Wed, 06 Nov 2013 12:18:20 +0100 Original-Received: from localhost ([::1]:60885 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ve17s-0001rH-5T for geb-bug-gnu-emacs@m.gmane.org; Wed, 06 Nov 2013 06:18:20 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:37527) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ve17j-0001qE-80 for bug-gnu-emacs@gnu.org; Wed, 06 Nov 2013 06:18:17 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Ve17c-0004gb-QQ for bug-gnu-emacs@gnu.org; Wed, 06 Nov 2013 06:18:11 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:50952) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ve17a-0004gH-NH for bug-gnu-emacs@gnu.org; Wed, 06 Nov 2013 06:18:04 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1Ve17a-0001nD-5m for bug-gnu-emacs@gnu.org; Wed, 06 Nov 2013 06:18:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Nathan Trapuzzano Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 06 Nov 2013 11:18:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 15814 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 15814-submit@debbugs.gnu.org id=B15814.13837366276813 (code B ref 15814); Wed, 06 Nov 2013 11:18:02 +0000 Original-Received: (at 15814) by debbugs.gnu.org; 6 Nov 2013 11:17:07 +0000 Original-Received: from localhost ([127.0.0.1]:36738 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Ve16g-0001lo-0L for submit@debbugs.gnu.org; Wed, 06 Nov 2013 06:17:06 -0500 Original-Received: from oproxy1-pub.mail.unifiedlayer.com ([66.147.249.253]:55607) by debbugs.gnu.org with smtp (Exim 4.80) (envelope-from ) id 1Ve16d-0001ld-Ep for 15814@debbugs.gnu.org; Wed, 06 Nov 2013 06:17:04 -0500 Original-Received: (qmail 20034 invoked by uid 0); 6 Nov 2013 11:16:59 -0000 Original-Received: from unknown (HELO host393.hostmonster.com) (66.147.240.193) by oproxy1.mail.unifiedlayer.com with SMTP; 6 Nov 2013 11:16:59 -0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=nbtrap.com; s=default; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date:References:Subject:Cc:To:From; bh=tV5CyvDY+s5Njk3nJGBY6EdwWQJo5PvBH/NxZMWsiAU=; b=tx9gXI42vgJzjQ1DZgNOrGcMr72t3l63bdDCm4wKnVUaPlDz0sXo5SOnIwgvShGZHtUEq9SZRmHKrfoSAeCLDph0NRgXZvIP5rOwgBsV4InmI7ILrx6qjPIIcROB7t96; Original-Received: from [50.90.253.209] (port=48185 helo=Nathan-GNU) by host393.hostmonster.com with esmtpsa (TLSv1:CAMELLIA128-SHA:128) (Exim 4.80) (envelope-from ) id 1Ve16Z-0007Zd-8g; Wed, 06 Nov 2013 04:16:59 -0700 In-Reply-To: (Stefan Monnier's message of "Tue, 05 Nov 2013 22:20:37 -0500") User-Agent: Gnus/5.130007 (Ma Gnus v0.7) Emacs/24.3.50 (gnu/linux) X-Identified-User: {1585:host393.hostmonster.com:nbtrapco:nbtrap.com} {sentby:smtp auth 50.90.253.209 authed with nbtrap@nbtrap.com} 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-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:80073 Archived-At: Stefan Monnier writes: >> (let ((msg (format "Malformed `cl-symbol-macrolet' binding: %S" >> (car bindings)))) >> (macroexp--warn-and-return msg `(error "%s" ,msg))) > > Signaling an error stops the whole compilation, so you only get one > error at a time. Better make it a warning, even though it is indeed > a programming error. And then signal the error at run time? Do I understand you correctly about that? What if we're not compiling? If you don't want the error to abort the build process, it seems that the ideal solution would be, in the compiled case, to print a warning during compilation and signal an error at run time; and in the interpreted case, to signal the error at macro expansion time. > No, I mean that they should be performed in macroexp--expand-all rather > than in cconv, so they're performed regardless of lexical-binding > (currently they're done once in cconv.el and once in bytecomp.el). This wouldn't work since there's no guarantee that any particular form passes through macroexp--expand-all, not in the interpreter at least.