From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Chris Gregory Newsgroups: gmane.emacs.devel Subject: Re: Define progn_ignore to run Fprogn and ignore output Date: Tue, 27 Dec 2016 19:30:35 -0600 Message-ID: <87o9zwu9fo.fsf@gmail.com> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1482888686 885 195.159.176.226 (28 Dec 2016 01:31:26 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Wed, 28 Dec 2016 01:31:26 +0000 (UTC) Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Dec 28 02:31:22 2016 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cM35J-0007Lc-7C for ged-emacs-devel@m.gmane.org; Wed, 28 Dec 2016 02:31:17 +0100 Original-Received: from localhost ([::1]:56920 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cM35K-0007i6-T9 for ged-emacs-devel@m.gmane.org; Tue, 27 Dec 2016 20:31:18 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:60631) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cM34k-0007i1-7M for emacs-devel@gnu.org; Tue, 27 Dec 2016 20:30:43 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cM34j-0005x9-8f for emacs-devel@gnu.org; Tue, 27 Dec 2016 20:30:42 -0500 Original-Received: from mail-io0-x241.google.com ([2607:f8b0:4001:c06::241]:35546) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1cM34j-0005ws-4u for emacs-devel@gnu.org; Tue, 27 Dec 2016 20:30:41 -0500 Original-Received: by mail-io0-x241.google.com with SMTP id f73so42073659ioe.2 for ; Tue, 27 Dec 2016 17:30:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:to:subject:date:message-id:mime-version; bh=G1xg2Tz3y/3ibspbjI0eLZ2XFf1hmQ0TGXKEGABIVVw=; b=H9UNLoU4gXaThfB4er1BB/ZwGDqYiFyaDJWsSTk+NfTtH9+rOL0NOErEiPIQqdX9fH /RRj5ZU0XdNqLNxFxoeIrTtllPh7r/eiIDuWAY1N3fSLwN8uTUedh/GfIBySZP8F9n4L KHrDslglTnLhHCZiO0hIIrIezYC39VPPti1ya3KjR34UdMAjpPlkhdXhP70RdDtZhpj3 OC8TCSPnuF2xEt0nwiVnLCKiCr6ocEGK7yqdHrrU9V0/hGDtHJKZNgaovrOYPI++1Lxt D8+N+iYiCK4ZC4Hr2/OFbCylI0HVgJhzdTPZ8hqL6Kb9mfW4872WssLDxAdCKNQML71G ennA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:to:subject:date:message-id:mime-version; bh=G1xg2Tz3y/3ibspbjI0eLZ2XFf1hmQ0TGXKEGABIVVw=; b=HT5NRH6IeUK2cv8eG91M3if/DylwN+bfxwaXGFgLNpHRHn5FKtDqpTZP7zSsfXSTlC n9dzAtvOX8jQ2CnKkCRuE62GKtviaN2N5WvJ99tSK+uKP8CKeyCzoFo+vA60Yh0+suEg Nsnz8QQVa8AIgVDxuoQGTAJQNkCaFJ4+iGpw0QSOWJ7L+06E0IvqLbxca3nw10bkOOHf LwVhnpbmPuJhAwjtm4pzvTfjSHgtPag1UsBEQZYz2WKlU0IqkiErZ1z5iCHNbKsQDzlc rwS0tySz2Ubn0i6sB3yDs80jXoHPJ9CR0OHh4/gQljXheIEoOyXiWi+clr6Sl6Syyl9l Q1Xg== X-Gm-Message-State: AIkVDXKEto9tv65ZLE5R+vbbZ3WSliWIm/3WLnAxtcyYpvnTz0oBVTw4vIJXaTUg/ucZjQ== X-Received: by 10.107.186.86 with SMTP id k83mr25982628iof.199.1482888640399; Tue, 27 Dec 2016 17:30:40 -0800 (PST) Original-Received: from CzipperZag ([2604:2d80:8039:81de:a0b5:3d06:3bb2:d546]) by smtp.gmail.com with ESMTPSA id m4sm22798626iom.20.2016.12.27.17.30.39 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 27 Dec 2016 17:30:39 -0800 (PST) Original-To: emacs-devel@gnu.org Original-To: eggert@cs.ucla.edu X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2607:f8b0:4001:c06::241 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:210854 Archived-At: Your implementation is not what I intended. Please add the following diff. I also fixed an additional place that still was declaring unwind_body. diff --git a/src/eval.c b/src/eval.c index e50e26a..abd4028 100644 --- a/src/eval.c +++ b/src/eval.c @@ -458,7 +458,11 @@ usage: (progn BODY...) */) void prog_ignore (Lisp_Object body) { - Fprogn (body); + while (CONSP (body)) + { + eval_sub (XCAR (body)); + body = XCDR (body); + } } DEFUN ("prog1", Fprog1, Sprog1, 1, UNEVALLED, 0, diff --git a/test/manual/etags/c-src/emacs/src/lisp.h b/test/manual/etags/c-src/emacs/src/lisp.h index db87229..1b9d82b 100644 --- a/test/manual/etags/c-src/emacs/src/lisp.h +++ b/test/manual/etags/c-src/emacs/src/lisp.h @@ -4042,7 +4042,7 @@ extern Lisp_Object safe_call1 (Lisp_Object, Lisp_Object); extern Lisp_Object safe_call2 (Lisp_Object, Lisp_Object, Lisp_Object); extern void init_eval (void); extern void syms_of_eval (void); -extern void unwind_body (Lisp_Object); +extern void prog_ignore (Lisp_Object); extern ptrdiff_t record_in_backtrace (Lisp_Object, Lisp_Object *, ptrdiff_t); extern void mark_specpdl (void); extern void get_backtrace (Lisp_Object array);