From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Noam Postavsky Newsgroups: gmane.emacs.bugs Subject: bug#31783: [PATCH v2] ido.el: define a special ido-fallback variable Date: Mon, 11 Jun 2018 08:19:03 -0400 Message-ID: <87efhdzfbc.fsf@gmail.com> References: <83bmcktpef.fsf@gnu.org> <20180611082340.28727-1-junke.christophe@gmail.com> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1528720323 28770 195.159.176.226 (11 Jun 2018 12:32:03 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Mon, 11 Jun 2018 12:32:03 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) Cc: 31783@debbugs.gnu.org To: Christophe Junke Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Mon Jun 11 14:31:59 2018 Return-path: Envelope-to: geb-bug-gnu-emacs@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 1fSLzK-0007N0-LQ for geb-bug-gnu-emacs@m.gmane.org; Mon, 11 Jun 2018 14:31:58 +0200 Original-Received: from localhost ([::1]:48500 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fSM1R-0006nL-Up for geb-bug-gnu-emacs@m.gmane.org; Mon, 11 Jun 2018 08:34:09 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:49660) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fSLns-0004Ue-1N for bug-gnu-emacs@gnu.org; Mon, 11 Jun 2018 08:20:09 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fSLnm-0001dX-F0 for bug-gnu-emacs@gnu.org; Mon, 11 Jun 2018 08:20:08 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:34960) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fSLnm-0001dP-A5 for bug-gnu-emacs@gnu.org; Mon, 11 Jun 2018 08:20:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1fSLnm-0006C6-3O for bug-gnu-emacs@gnu.org; Mon, 11 Jun 2018 08:20:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Noam Postavsky Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 11 Jun 2018 12:20:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 31783 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 31783-submit@debbugs.gnu.org id=B31783.152871955323750 (code B ref 31783); Mon, 11 Jun 2018 12:20:02 +0000 Original-Received: (at 31783) by debbugs.gnu.org; 11 Jun 2018 12:19:13 +0000 Original-Received: from localhost ([127.0.0.1]:42857 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fSLmy-0006Av-Qc for submit@debbugs.gnu.org; Mon, 11 Jun 2018 08:19:12 -0400 Original-Received: from mail-io0-f172.google.com ([209.85.223.172]:44550) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fSLmx-0006Ad-DR; Mon, 11 Jun 2018 08:19:11 -0400 Original-Received: by mail-io0-f172.google.com with SMTP id g7-v6so23577451ioh.11; Mon, 11 Jun 2018 05:19:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=L2K3rCNHSC/6AuVZTNTZWcHlPyT+HFdH589lEPU+daI=; b=M4VA4c45TIELMm89iHYHfI9ukzyrcrtWYtb1m5R/K4785Jhf0j9p6/mrWAs07sktvF fb1Wt+rstSSMNgA4rcKK0KILbwili61WQuYDYDt58kYKzxYGRuvXEcnwDkhKzFSUQbB/ 1FhU4/K3NoYDNuo14F0+r3tg8IX6c6uvvSUCyi0qSt5HeuCdK9GOi7E1TW+s/i6IcW12 f+GQ4k/UtAmq9UkbST9j2Nh+qQRLDLQAmbWMzwpcTvMm9hXCZ85fSH9dHRaPD0pLiJXB VVei9X3oaROioGi3qgRb04JebRgKVeSC1kZq1foXnHh84R2aOROnr09w5Z3F0eoCOA8F NB6A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=L2K3rCNHSC/6AuVZTNTZWcHlPyT+HFdH589lEPU+daI=; b=bhp8yV0f+jX1yuiJ6fKs6FrZzCzsu0N/TgU3JA7cIKo6Fe/rI4yIkE1EdN+Z3KkZwV 6WSAZ2dwhaLs2CzYVuR6PylrJ1Jj/TrP/C0C2bHwlYwfGzuaLhNMCkZEytKobgknIPdG d7KrAbdg5MHVwlOpDQPR/qdtQtnzyEVrJlnEptF+6jU9Fu+BGNzDtvJDmjZH2789m+gY oAZxI35Iq2ioP3EpBkw/f8r5Z35kHJkWcA3GS5OTV1CeNTi18a434xWzI9CNGfhxu7Rr 3Mo3JpH8pq5zFLvzNg6VMEgXLcj7TITKmaNabSpesY109XhR8ZmUwve2Lj3cmI0PJccq q/3w== X-Gm-Message-State: APt69E29mBxm4XOH5XxtNcbnQkYvBBchsWXLn5kDu1Ukxgg59mY3ppAx 19ur4WV4nlkF/HIiL+GCfbuFNw== X-Google-Smtp-Source: ADUXVKJHWbe/x92zkteTWFkg4gQFEZANR+Jk2SWo16ChnPLYD33ClZOERrm96wH2DKpvM7RiyngCXg== X-Received: by 2002:a6b:8e0d:: with SMTP id q13-v6mr13861304iod.169.1528719545710; Mon, 11 Jun 2018 05:19:05 -0700 (PDT) Original-Received: from zebian (cbl-45-2-119-34.yyz.frontiernetworks.ca. [45.2.119.34]) by smtp.googlemail.com with ESMTPSA id 16-v6sm4069527itk.17.2018.06.11.05.19.04 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 11 Jun 2018 05:19:05 -0700 (PDT) In-Reply-To: <20180611082340.28727-1-junke.christophe@gmail.com> (Christophe Junke's message of "Mon, 11 Jun 2018 10:23:40 +0200") X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.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" Xref: news.gmane.org gmane.emacs.bugs:147281 Archived-At: merge 31783 31707 quit Christophe Junke writes: > I agree that it is simpler to rename the existing variable, and just > add a defvar declaration. Here is a different version of the patch > which does only this. > +;; Indicates which fallback command to call when ido-exit is 'fallback. > +(defvar ido-fallback nil) > -(defun ido-buffer-internal (method &optional fallback prompt default initial switch-cmd) > +(defun ido-buffer-internal (method &optional ido-fallback prompt default initial switch-cmd) I believe this doesn't work, function parameters are always lexically bound. Compare ; -*- lexical-binding: t -*- (setq lexical-binding t) ; for use in *scratch* (defvar x nil) (disassemble (lambda (x y) (+ x y))) (let ((x 1)) (disassemble (lambda (y) (+ x y)))) So I think your first patch was fine.