From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alexander Huang Subject: "Variable binding depth exceeds max-specpdl-size" behavior induced by footnotes [8.2.10 (release_8.2.10 @ /usr/local/share/emacs/24.5/lisp/org/)] Date: Sun, 27 Dec 2015 17:50:37 -0500 Message-ID: <56806B3D.8060309@o-o-x.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:55138) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aDK9F-0003sT-RG for emacs-orgmode@gnu.org; Sun, 27 Dec 2015 17:50:47 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aDK9C-0004nE-Jb for emacs-orgmode@gnu.org; Sun, 27 Dec 2015 17:50:45 -0500 Received: from mout.perfora.net ([74.208.4.196]:59085) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aDK9C-0004n2-D5 for emacs-orgmode@gnu.org; Sun, 27 Dec 2015 17:50:42 -0500 Received: from [192.168.1.12] ([216.15.125.12]) by mrelay.perfora.net (mreueus002) with ESMTPSA (Nemesis) id 0MEm8C-1aTFGc1Jb0-00Fx0F for ; Sun, 27 Dec 2015 23:50:40 +0100 List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org * description using the example below, calling =org-html-export-as-html= leads to a =mapc: Variable binding depth exceeds max-specpdl-size= error. #+BEGIN_SRC org :file example-file.org # must be non-leading x[fn:A] # must be leading [fn:A] # must be non-leading x[fn:B] # must be non-leading, and non-"a" entry x[fn:B] #+END_SRC This seems to be the smallest I can make this example. To reproduce this error, the minimal file needs these properties: 1. at least 2 distinct footnote references 2. 1 of those footnotes is referenced (not leading) least 2 times 3. the actual footnote (in leading position) in step 2 must be sandwiched between references to it in non-leading positions 4. the first reference (non-leading) to the next unique footnote must occur before its definition (leading). Thus, the export completes if either: - the leading =[fn:A]= definition appears before the first =x[fn:A]= or after the second =x[fn:A]= - =x[fn:B]= above is preceded by a leading =[fn:B]= (then the ordering of [fn:A] does not matter) I have set =max-specpdl-size= and =max-lisp-eval-depth= to 20000+, though I believe this is unrelated. This appears similar to https://lists.gnu.org/archive/html/emacs-orgmode/2015-07/msg00079.html But as far as I can tell it is different. I have not looked at the footnote code. Emacs : GNU Emacs 24.5.1 (x86_64-unknown-linux-gnu) of 2015-12-27 on localhost Package: Org-mode version 8.2.10 (release_8.2.10 @ /usr/local/share/emacs/24.5/lisp/org/) current state: ============== (setq org-tab-first-hook '(org-hide-block-toggle-maybe org-src-native-tab-command-maybe org-babel-hide-result-toggle-maybe org-babel-header-arg-expand) org-speed-command-hook '(org-speed-command-default-hook org-babel-speed-command-hook) org-occur-hook '(org-first-headline-recenter) org-metaup-hook '(org-babel-load-in-session-maybe) org-html-format-drawer-function '(lambda (name contents) contents) org-latex-format-inlinetask-function 'ignore org-confirm-shell-link-function 'yes-or-no-p org-ascii-format-inlinetask-function 'org-ascii-format-inlinetask-default org-latex-format-headline-function 'org-latex-format-headline-default-function org-after-todo-state-change-hook '(org-clock-out-if-current) org-latex-format-drawer-function '(lambda (name contents) contents) org-src-mode-hook '(org-src-babel-configure-edit-buffer org-src-mode-configure-edit-buffer) org-agenda-before-write-hook '(org-agenda-add-entry-text) org-babel-pre-tangle-hook '(save-buffer) org-mode-hook '(#[nil "\300\301\302\303\304$\207" [org-add-hook change-major-mode-hook org-show-block-all append local] 5] #[nil "\300\301\302\303\304$\207" [org-add-hook change-major-mode-hook org-babel-show-result-all append local] 5] org-babel-result-hide-spec org-babel-hide-all-hashes) org-ascii-format-drawer-function '(lambda (name contents width) contents) org-ctrl-c-ctrl-c-hook '(org-babel-hash-at-point org-babel-execute-safely-maybe) org-cycle-hook '(org-cycle-hide-archived-subtrees org-cycle-hide-drawers org-cycle-hide-inline-tasks org-cycle-show-empty-lines org-optimize-window-after-visibility-change) org-confirm-elisp-link-function 'yes-or-no-p org-metadown-hook '(org-babel-pop-to-session-maybe) org-html-format-headline-function 'ignore org-html-format-inlinetask-function 'ignore org-clock-out-hook '(org-clock-remove-empty-clock-drawer) )