Package: emacs;
Reported by: raman <raman <at> google.com>
Date: Tue, 29 Jul 2014 01:59:01 UTC
Severity: normal
Tags: unreproducible
Found in version 24.4.50
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
Message #17 received at 18139 <at> debbugs.gnu.org (full text, mbox):
From: raman <raman <at> google.com> To: Eli Zaretskii <eliz <at> gnu.org> Cc: rgm <at> gnu.org, 18139 <at> debbugs.gnu.org Subject: Re: bug#18139: 24.4.50; called-interactively-p and skip advice: Date: Wed, 30 Jul 2014 06:56:45 -0700
This should hopefully produce the backtrace -- I'll give two recipes below -- the first is impossible for me to try 1. emacs -q 2. load-library ruby-mode 3. evaluate this form: (defadvice backward-sexp (around test pre act comp) (when (called-interactively-p 'interactive) (message "advice!")) ad-do-it) 3. Open a ruby file test.rb 4. type puts "foo" 5. Invoke electric-newline-and-indent -- to trigger the bug. Recipe 2: Do the same as above with emacspeak loaded -- and without bothering with the additional piece of advice. I'll attach the emacspeak generated backtrace below. Debugger entered--Lisp error: (quit) advice--called-interactively-skip(3 (t ad-Advice-backward-sexp #[256 "\211\204\300\262\301[!\207" [1 forward-sexp] 3 2382034 "^p"] 1) (t apply ad-Advice-backward-sexp #[256 "\211\204\300\262\301[!\207" [1 forward-sexp] 3 2382034 "^p"] 1)) run-hook-with-args-until-success(advice--called-interactively-skip 3 (t ad-Advice-backward-sexp #[256 "\211\204\300\262\301[!\207" [1 forward-sexp] 3 2382034 "^p"] 1) (t apply ad-Advice-backward-sexp #[256 "\211\204\300\262\301[!\207" [1 forward-sexp] 3 2382034 "^p"] 1)) called-interactively-p(interactive) ad-Advice-backward-sexp(#[256 "\211\204\300\262\301[!\207" [1 forward-sexp] 3 2382034 "^p"] 1) apply(ad-Advice-backward-sexp #[256 "\211\204\300\262\301[!\207" [1 forward-sexp] 3 2382034 "^p"] 1) #[128 "\300\301\302#\207" [apply ad-Advice-backward-sexp #[256 "\211\204\300\262\301[!\207" [1 forward-sexp] 3 2382034 "^p"] nil] 5 nil "^p"](1) #[0 "\300\301!\210\302\207" [#[128 "\300\301\302#\207" [apply ad-Advice-backward-sexp #[256 "\211\204\300\262\301[!\207" [1 forward-sexp] 3 2382034 "^p"] nil] 5 nil "^p"] 1 nil] 2 "\n\n(fn)"]() funcall(#[0 "\300\301!\210\302\207" [#[128 "\300\301\302#\207" [apply ad-Advice-backward-sexp #[256 "\211\204\300\262\301[!\207" [1 forward-sexp] 3 2382034 "^p"] nil] 5 nil "^p"] 1 nil] 2 "\n\n(fn)"]) #[0 "\304\242;\205 \306\304\242\"AC\304\307\240\210`\300 \306 \"A\211\204XG\310U\203$\311\312\313\310\314\315\316\301!\317\"\320\321%D\322\312\313\323\324\315\316!\325\"\326\327%\311EDC\217\210`=\203$\330\331\332`D\"\210\202$\303!\247\204t\302!\247\204l\333\334\335C\"\210\211B\262\202$\203\212\303!\302@!W\203\212A\262\202t\204\266\304\242\203\242\302!\247\203\242\211B\262\202$\330\331\302!\206\253\332`Eb\210\"\210\202$\211\203\313\303!\302@!U\203\313A\262\203\336\302!\247\203#B\262\202#\302!\247\204\361\330\331\307`E\"\210\202#\336!\204\377B\262\202#\211\203 \336@!\203 \330\331\302!\206\332`Eb\210\"\210\202#\211\262\210\266\203\2051\304\307\240\210\202 \207" [#[nil "`\304`[!\210\305 V\203 \306 \203 \307\310w\210\311\202\364n\203-o\204-\312`\313\"b\210\311\202\364`V\203An\204A\314!\203A\315\202\364\316 \317 \203O\320\nP`Sf\321=\203e\322\323\n\"\203e\313u\210\324\nP\n\325\235\203x\326 \203t\n\202\363\327\202\363\n\330\232\203\224\331 \203\207\332\202\363\333 \203\220\334\202\363\n\202\363\335\n\310\336\322#)\266\203\203\256\337u\210\n\337\310O\202\363\n\340\232\203\312`Sf\341=\203\312\342\343!\203\312\313u\210\344 \202\363\n\345\232\203\362\346 \204\331\n\202\363\212\337v\210\304d!\210`)\305 V\203\356\344 \202\363\311\202\363\n*)\207" [pos dot tok inhibit-changing-match-data forward-comment line-end-position ruby-smie--implicit-semi-p " " nil ";" scan-sexps -1 ruby-smie--args-separator-p " @ " smie-default-backward-token ruby-smie--at-dot-call "." 58 string-match "\\`\\s." ":" ("unless" "if" "while" "until") ruby-smie--bosp "iuwu-mod" "|" ruby-smie--opening-pipe-p "opening-|" ruby-smie--closing-pipe-p "closing-|" "\\`|[*&]\\'" t 1 "" 92 looking-at "\n" ruby-smie--backward-token "do" ruby-smie--redundant-do-p] 7] #[128 "\300\301\302#\207" [apply ad-Advice-backward-sexp #[256 "\211\204\300\262\301[!\207" [1 forward-sexp] 3 2382034 "^p"] nil] 5 nil "^p"] #<subr car> #[257 "\211A@\207" [] 2 1633439] (nil) smie-grammar assoc nil 0 err funcall make-byte-code "\300\301!\210\302\207" vconcat vector [1 nil] 2 "\n\n(fn)" scan-error 257 "\3018`X\203 \3028\202 \211\300b\210\303\304\305\306\211`W\203%\307\202&\310\\\"E\"\207" [2 3 throw return t buffer-substring-no-properties -1 1] 12 "\n\n(fn ERR)" throw return t signal cl-assertion-failed (numberp (funcall op-forw toklevels)) smie--associative-p] 14 "\n\n(fn)"]() funcall(#[0 "\304\242;\205 \306\304\242\"AC\304\307\240\210`\300 \306 \"A\211\204XG\310U\203$\311\312\313\310\314\315\316\301!\317\"\320\321%D\322\312\313\323\324\315\316!\325\"\326\327%\311EDC\217\210`=\203$\330\331\332`D\"\210\202$\303!\247\204t\302!\247\204l\333\334\335C\"\210\211B\262\202$\203\212\303!\302@!W\203\212A\262\202t\204\266\304\242\203\242\302!\247\203\242\211B\262\202$\330\331\302!\206\253\332`Eb\210\"\210\202$\211\203\313\303!\302@!U\203\313A\262\203\336\302!\247\203#B\262\202#\302!\247\204\361\330\331\307`E\"\210\202#\336!\204\377B\262\202#\211\203 \336@!\203 \330\331\302!\206\332`Eb\210\"\210\202#\211\262\210\266\203\2051\304\307\240\210\202 \207" [#[nil "`\304`[!\210\305 V\203 \306 \203 \307\310w\210\311\202\364n\203-o\204-\312`\313\"b\210\311\202\364`V\203An\204A\314!\203A\315\202\364\316 \317 \203O\320\nP`Sf\321=\203e\322\323\n\"\203e\313u\210\324\nP\n\325\235\203x\326 \203t\n\202\363\327\202\363\n\330\232\203\224\331 \203\207\332\202\363\333 \203\220\334\202\363\n\202\363\335\n\310\336\322#)\266\203\203\256\337u\210\n\337\310O\202\363\n\340\232\203\312`Sf\341=\203\312\342\343!\203\312\313u\210\344 \202\363\n\345\232\203\362\346 \204\331\n\202\363\212\337v\210\304d!\210`)\305 V\203\356\344 \202\363\311\202\363\n*)\207" [pos dot tok inhibit-changing-match-data forward-comment line-end-position ruby-smie--implicit-semi-p " " nil ";" scan-sexps -1 ruby-smie--args-separator-p " @ " smie-default-backward-token ruby-smie--at-dot-call "." 58 string-match "\\`\\s." ":" ("unless" "if" "while" "until") ruby-smie--bosp "iuwu-mod" "|" ruby-smie--opening-pipe-p "opening-|" ruby-smie--closing-pipe-p "closing-|" "\\`|[*&]\\'" t 1 "" 92 looking-at "\n" ruby-smie--backward-token "do" ruby-smie--redundant-do-p] 7] #[128 "\300\301\302#\207" [apply ad-Advice-backward-sexp #[256 "\211\204\300\262\301[!\207" [1 forward-sexp] 3 2382034 "^p"] nil] 5 nil "^p"] #<subr car> #[257 "\211A@\207" [] 2 1633439] (nil) smie-grammar assoc nil 0 err funcall make-byte-code "\300\301!\210\302\207" vconcat vector [1 nil] 2 "\n\n(fn)" scan-error 257 "\3018`X\203 \3028\202 \211\300b\210\303\304\305\306\211`W\203%\307\202&\310\\\"E\"\207" [2 3 throw return t buffer-substring-no-properties -1 1] 12 "\n\n(fn ERR)" throw return t signal cl-assertion-failed (numberp (funcall op-forw toklevels)) smie--associative-p] 14 "\n\n(fn)"]) smie-next-sexp(#[nil "`\304`[!\210\305 V\203 \306 \203 \307\310w\210\311\202\364n\203-o\204-\312`\313\"b\210\311\202\364`V\203An\204A\314!\203A\315\202\364\316 \317 \203O\320\nP`Sf\321=\203e\322\323\n\"\203e\313u\210\324\nP\n\325\235\203x\326 \203t\n\202\363\327\202\363\n\330\232\203\224\331 \203\207\332\202\363\333 \203\220\334\202\363\n\202\363\335\n\310\336\322#)\266\203\203\256\337u\210\n\337\310O\202\363\n\340\232\203\312`Sf\341=\203\312\342\343!\203\312\313u\210\344 \202\363\n\345\232\203\362\346 \204\331\n\202\363\212\337v\210\304d!\210`)\305 V\203\356\344 \202\363\311\202\363\n*)\207" [pos dot tok inhibit-changing-match-data forward-comment line-end-position ruby-smie--implicit-semi-p " " nil ";" scan-sexps -1 ruby-smie--args-separator-p " @ " smie-default-backward-token ruby-smie--at-dot-call "." 58 string-match "\\`\\s." ":" ("unless" "if" "while" "until") ruby-smie--bosp "iuwu-mod" "|" ruby-smie--opening-pipe-p "opening-|" ruby-smie--closing-pipe-p "closing-|" "\\`|[*&]\\'" t 1 "" 92 looking-at "\n" ruby-smie--backward-token "do" ruby-smie--redundant-do-p] 7] #[128 "\300\301\302#\207" [apply ad-Advice-backward-sexp #[256 "\211\204\300\262\301[!\207" [1 forward-sexp] 3 2382034 "^p"] nil] 5 nil "^p"] #<subr car> #[257 "\211A@\207" [] 2 1633439] ";") smie-backward-sexp(";") smie-indent-keyword() run-hook-with-args-until-success(smie-indent-keyword) smie-indent-calculate() smie-indent-virtual() smie-indent-after-keyword() run-hook-with-args-until-success(smie-indent-after-keyword) smie-indent-calculate() #[0 "\212\301y\210\302\303w\210`\300\242Y\203 \300\303\240\210\304 \206 \301)\207" [(nil) 0 " " nil smie-indent-calculate] 2 "\n\n(fn)"]() funcall(#[0 "\212\301y\210\302\303w\210`\300\242Y\203 \300\303\240\210\304 \206 \301)\207" [(nil) 0 " " nil smie-indent-calculate] 2 "\n\n(fn)"]) smie-indent-line() indent-according-to-mode() #[0 "\300\301!\210\302\303\301\"\210\304 \207" [delete-horizontal-space t newline nil indent-according-to-mode] 3 1970172 "*"]() ad-Advice-newline-and-indent(#[0 "\300\301!\210\302\303\301\"\210\304 \207" [delete-horizontal-space t newline nil indent-according-to-mode] 3 1970172 "*"]) apply(ad-Advice-newline-and-indent #[0 "\300\301!\210\302\303\301\"\210\304 \207" [delete-horizontal-space t newline nil indent-according-to-mode] 3 1970172 "*"] nil) newline-and-indent() electric-newline-and-maybe-indent() funcall-interactively(electric-newline-and-maybe-indent) call-interactively(electric-newline-and-maybe-indent nil nil) command-execute(electric-newline-and-maybe-indent)
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.