From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Juanma Barranquero Newsgroups: gmane.emacs.bugs Subject: bug#683: 23.0.60; Recursive load error stays Date: Wed, 25 Feb 2009 13:07:14 +0100 Message-ID: References: <20080809221223.E926BA1A788@mt-computer.local> Reply-To: Juanma Barranquero , 683@emacsbugs.donarmstrong.com NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1235564635 30051 80.91.229.12 (25 Feb 2009 12:23:55 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 25 Feb 2009 12:23:55 +0000 (UTC) Cc: 683@emacsbugs.donarmstrong.com To: Markus Triska Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed Feb 25 13:25:10 2009 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1LcIp3-0003S7-RJ for geb-bug-gnu-emacs@m.gmane.org; Wed, 25 Feb 2009 13:25:10 +0100 Original-Received: from localhost ([127.0.0.1]:54439 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LcIni-0003Er-UZ for geb-bug-gnu-emacs@m.gmane.org; Wed, 25 Feb 2009 07:23:46 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1LcInd-0003Ek-Ja for bug-gnu-emacs@gnu.org; Wed, 25 Feb 2009 07:23:41 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1LcInc-0003EX-5l for bug-gnu-emacs@gnu.org; Wed, 25 Feb 2009 07:23:41 -0500 Original-Received: from [199.232.76.173] (port=47396 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LcInb-0003EU-VR for bug-gnu-emacs@gnu.org; Wed, 25 Feb 2009 07:23:40 -0500 Original-Received: from rzlab.ucr.edu ([138.23.92.77]:41847) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1LcInb-00053y-GD for bug-gnu-emacs@gnu.org; Wed, 25 Feb 2009 07:23:39 -0500 Original-Received: from rzlab.ucr.edu (rzlab.ucr.edu [127.0.0.1]) by rzlab.ucr.edu (8.13.8/8.13.8/Debian-3) with ESMTP id n1PCNb7J021977; Wed, 25 Feb 2009 04:23:37 -0800 Original-Received: (from debbugs@localhost) by rzlab.ucr.edu (8.13.8/8.13.8/Submit) id n1PCF2Sg019629; Wed, 25 Feb 2009 04:15:02 -0800 X-Loop: owner@emacsbugs.donarmstrong.com Resent-From: Juanma Barranquero Resent-To: bug-submit-list@donarmstrong.com Resent-CC: Emacs Bugs Resent-Date: Wed, 25 Feb 2009 12:15:02 +0000 Resent-Message-ID: Resent-Sender: owner@emacsbugs.donarmstrong.com X-Emacs-PR-Message: followup 683 X-Emacs-PR-Package: emacs X-Emacs-PR-Keywords: Original-Received: via spool by 683-submit@emacsbugs.donarmstrong.com id=B683.123556364418390 (code B ref 683); Wed, 25 Feb 2009 12:15:02 +0000 Original-Received: (at 683) by emacsbugs.donarmstrong.com; 25 Feb 2009 12:07:24 +0000 X-Spam-Bayes: score:0.5 Bayes not run. spammytokens:Tokens not available. hammytokens:Tokens not available. Original-Received: from mail-ew0-f176.google.com (mail-ew0-f176.google.com [209.85.219.176]) by rzlab.ucr.edu (8.13.8/8.13.8/Debian-3) with ESMTP id n1PC7KhT018384 for <683@emacsbugs.donarmstrong.com>; Wed, 25 Feb 2009 04:07:22 -0800 Original-Received: by ewy24 with SMTP id 24so708590ewy.1 for <683@emacsbugs.donarmstrong.com>; Wed, 25 Feb 2009 04:07:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=+5Sb0fT3wmS12I+L4SuD0qyCovxZI+6+7T1HPIlJZkE=; b=gymzz0TgY52yJi2Ez3JcikqeNwspZ/x9MefsCuTl+hYpSp5Qabc9kVLrA28SoM/AWq 6Y3l7JbhDJ2PHECiL5KuB3g/SiMiiz+aWl2csZMbZtkEM0RZ0l+Zm1398q8yf/caRks+ 2c5fUL/mheX39lcKTZx00B4imVjvqXQOWmpBk= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=u4zWKeuzELMB6u6bQn5wYWkbqmT6yPvzJfbp4GaYQ+s7521U6qQa0P5JDCWm3vBXFD dQaQ105mWuOJyVtoLuxFCASsD5tffFX4LIq9hIMzDIY3tEDNawdAtnbok8fe9MnQqQMY FF0b7xeNROFVYa0I/uZcMxZv5GRx/NhuxWSZg= Original-Received: by 10.210.91.7 with SMTP id o7mr27555ebb.136.1235563634756; Wed, 25 Feb 2009 04:07:14 -0800 (PST) In-Reply-To: X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 3) Resent-Date: Wed, 25 Feb 2009 07:23:41 -0500 X-BeenThere: bug-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:25689 Archived-At: On Tue, Aug 26, 2008 at 05:37, Markus Triska wrote: > Yes - it works as I expect when I quit the debugger with "q", but not > within the recursive edit (i.e., if I leave the *Backtrace* buffer open > and do not exit the debugger). Other forms seem to evaluate as usual > also in the recursive editing level, whereas "load" seems different. For starters, using C-x C-e inside a comment is a bit weird; it "works", for single-line expressions, but it uses forward-sexp, whose docstring says: "This command assumes point is not in a string or comment." That aside, what happens is this: `load' uses a static variable Vloads_in_progress to detect recursive loads. On the normal (not backtrace) case, *before reading the file*, it checks the name of the file against Vloads_in_progress, finds nothing unusual, so it loads the file (by calling the Vload_source_file_function). In the backtrace case, when trying to load ~/p.el again, load is still on the call stack, so Vloads_in_progress has not been reset to nil; as expected, `load' finds p.el in Vloads_in_progress, and bails out. It is irrelevant whether you commented out the line and saved the file, because it is not being read yet at that point. If you try to load another file instead you'll see it loads OK, because it is not in Vloads_in_progress. It is not a bug: calling a function when it is in the call stack will be affected by global variables and other non-reentrant code used in that function. Juanma