From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Dale Smith Newsgroups: gmane.lisp.guile.bugs Subject: bug#43025: re-export-public-interface fails on Guile 3 Date: Fri, 28 Aug 2020 15:22:17 -0400 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="3613"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 43025@debbugs.gnu.org To: Leo Prikler Original-X-From: bug-guile-bounces+guile-bugs=m.gmane-mx.org@gnu.org Fri Aug 28 21:23:09 2020 Return-path: Envelope-to: guile-bugs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kBjxt-0000px-29 for guile-bugs@m.gmane-mx.org; Fri, 28 Aug 2020 21:23:09 +0200 Original-Received: from localhost ([::1]:41300 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kBjxr-0005qt-WA for guile-bugs@m.gmane-mx.org; Fri, 28 Aug 2020 15:23:08 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:42638) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kBjxm-0005oO-K9 for bug-guile@gnu.org; Fri, 28 Aug 2020 15:23:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:35898) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kBjxm-0003xS-A5 for bug-guile@gnu.org; Fri, 28 Aug 2020 15:23:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kBjxm-0006Vm-56 for bug-guile@gnu.org; Fri, 28 Aug 2020 15:23:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Dale Smith Original-Sender: "Debbugs-submit" Resent-CC: bug-guile@gnu.org Resent-Date: Fri, 28 Aug 2020 19:23:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43025 X-GNU-PR-Package: guile X-Debbugs-Original-Cc: bug-guile@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.159864254424967 (code B ref -1); Fri, 28 Aug 2020 19:23:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 28 Aug 2020 19:22:24 +0000 Original-Received: from localhost ([127.0.0.1]:47444 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kBjxA-0006Ud-6U for submit@debbugs.gnu.org; Fri, 28 Aug 2020 15:22:24 -0400 Original-Received: from lists.gnu.org ([209.51.188.17]:48004) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kBjx8-0006UV-G0 for submit@debbugs.gnu.org; Fri, 28 Aug 2020 15:22:22 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:42472) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kBjx8-0005JQ-0F for bug-guile@gnu.org; Fri, 28 Aug 2020 15:22:22 -0400 Original-Received: from mail-ot1-x336.google.com ([2607:f8b0:4864:20::336]:39103) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kBjx5-0003tP-A3 for bug-guile@gnu.org; Fri, 28 Aug 2020 15:22:21 -0400 Original-Received: by mail-ot1-x336.google.com with SMTP id r8so166344ota.6 for ; Fri, 28 Aug 2020 12:22:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=q1Xyt7WGi0xwX6gXPnZK8GgBX4LmVYMX7GieU7tXjQA=; b=h0B3IohzbTv5/5gzF/ttpCXeRRaiA0d0ldVS8TGIUVsMxr2VJaKHIso2SSTv4BspI0 y87/5JPxMr+AMk61CEll846w9ruvU2wakt3DflmtX18w11NM1FG8B15JyQ1o/D+KHFyy ZJte5Kk8BSKSj9Czwubj3saoPto6h7zk8getsB3bKDVdMR69pHg4AhGDF1ZQECoZ6kOt 9gVNMo/qsOcX7NUrXavjaenDrjoAjSAIMHiltsn73BpUGHGLjtnG8V8K7Dp/5tk7UeyD JnRu5uhsdj36R6pbAzxLg3c2qG2UUaC81ti7JPbU4akh6ybE9LPBy3W5pUVysnOUfGo7 RRng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=q1Xyt7WGi0xwX6gXPnZK8GgBX4LmVYMX7GieU7tXjQA=; b=JzyxrlvxlS1Z0bapmYAt84t3lUxFv+K/zjJC5mePuOAra6xboxASf3DkjxSVmfx5sQ CIrakLyA2bUANU7qNFgIx/gLnnoUoZLzTUX3YnFAh5Ei4+p7IYKFyG6QNWKgH0UfOCBt 6PB68BKb2xHXd6T+1fso03+5kzLAxFCJZeMljcmSGrvCgy2TiseLuYFUAvHpACAt+sfO +xO2B5h4AHf6qcX21kLYFae2I0xMueY4h6WcRJZEegUDPqIPoLyM5Q+6NDTbZ4foYzOR NY1WuPvkkLobhP9LN3X79tMuiGh+Ezs7jr+sz2z8xMn/pE794twSndn8wKqUdjBUXeA8 PArg== X-Gm-Message-State: AOAM530dhbyEyf8tL73pPfl1ugcDmWQ30fVGWXSBxuyqx5z6XuQaxigT 2yvYQ9QB9LysU11wHnagzezs/ToW35E41D4+2/B5GYY3s1I= X-Google-Smtp-Source: ABdhPJyq+Z3LgMq3aTJW49MY/awQKyannO/GU8b5WEF1DtCTzEkV5neAWDrxl6jISUTv66gVbEYq0ybtxJpXxQDewks= X-Received: by 2002:a9d:2ac5:: with SMTP id e63mr111215otb.119.1598642537660; Fri, 28 Aug 2020 12:22:17 -0700 (PDT) Original-Received: by 2002:a4a:b288:0:0:0:0:0 with HTTP; Fri, 28 Aug 2020 12:22:17 -0700 (PDT) In-Reply-To: Received-SPF: pass client-ip=2607:f8b0:4864:20::336; envelope-from=dalepsmith@gmail.com; helo=mail-ot1-x336.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list 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-mx.org@gnu.org Original-Sender: "bug-guile" Xref: news.gmane.io gmane.lisp.guile.bugs:9873 Archived-At: And now using a more standard error reporting function. I think it's done now. (define-syntax re-export-public-interface (syntax-rules () "Re-export the public interface of a module or modules. Invoked as @code{(re-export-public-interface (mod1) (mod2) ...)}." ((_ (m0 m0* ...) (mn mn* ...) ...) (let ((iface (module-public-interface (current-module)))) (define (r-e-p-i module) (cond-expand (guile-3 (module-for-each (lambda (sym val) (hashq-set! (module-replacements iface) sym #t) (module-add! iface sym val)) (resolve-interface module))) (else (module-use! iface (resolve-interface module))))) (r-e-p-i '(m0 m0* ...)) (r-e-p-i '(mn mn* ...)) ...)) ((_) (syntax-error "must provide one or more module names")) ((_ m m* ...) (syntax-error "module names must look like lists"))))