From: raman <raman@google.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 18139@debbugs.gnu.org
Subject: bug#18139: 24.4.50; called-interactively-p and skip advice:
Date: Wed, 30 Jul 2014 06:56:45 -0700 [thread overview]
Message-ID: <p91silj2bmq.fsf@raman-glaptop.roam.corp.google.com> (raw)
In-Reply-To: <83a97rts25.fsf@gnu.org> (Eli Zaretskii's message of "Wed, 30 Jul 2014 06:59:46 +0300")
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\a\300\262\301[!\207" [1 forward-sexp] 3 2382034 "^p"] 1) (t apply ad-Advice-backward-sexp #[256 "\211\204\a\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\a\300\262\301[!\207" [1 forward-sexp] 3 2382034 "^p"] 1) (t apply ad-Advice-backward-sexp #[256 "\211\204\a\300\262\301[!\207" [1 forward-sexp] 3 2382034 "^p"] 1))
called-interactively-p(interactive)
ad-Advice-backward-sexp(#[256 "\211\204\a\300\262\301[!\207" [1 forward-sexp] 3 2382034 "^p"] 1)
apply(ad-Advice-backward-sexp #[256 "\211\204\a\300\262\301[!\207" [1 forward-sexp] 3 2382034 "^p"] 1)
#[128 "\300\301\302#\207" [apply ad-Advice-backward-sexp #[256 "\211\204\a\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\a\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\a\300\262\301[!\207" [1 forward-sexp] 3 2382034 "^p"] nil] 5 nil "^p"] 1 nil] 2 "\n\n(fn)"])
#[0 "\304\242;\205\0\306\304\242\"AC\304\307\240\210`\300 \306\r\"A\211\204X\x01G\310U\203$\311\312\313\310\314\315\316\301!\317\"\320\321%D\322\312\313\323\324\315\316\v!\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$\x03\203\212\303!\302@!W\203\212\x03A\262\202t\x03\204\266\304\242\203\242\302!\247\203\242\211B\262\202$\330\331\302!\206\253\332`Eb\210\"\210\202$\x03\211\203\313\303!\302\x06@!U\203\313\x04A\262\x04\203\336\302!\247\203#\x01B\262\202#\302!\247\204\361\330\331\307`\x06E\"\210\202#\336!\204\377\x01B\262\202#\211\203 \336@!\203 \330\331\302!\206\x01\332`\x06E\x06b\210\"\210\202#\211\262\210\266\203\2051\304\307\240\210\202\0\207" [#[nil "`\304`[!\210\b\305 V\203\0\306 \203\0\307\310w\210\311\202\364n\203-o\204-\312`\313\"b\210\311\202\364\b`V\203An\204A\314\b!\203A\315\202\364\316 \317 \x1a \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\x03#)\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\a\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\0\3028\202\0\211\300b\210\303\304\305\306\211`\bW\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\0\306\304\242\"AC\304\307\240\210`\300 \306\r\"A\211\204X\x01G\310U\203$\311\312\313\310\314\315\316\301!\317\"\320\321%D\322\312\313\323\324\315\316\v!\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$\x03\203\212\303!\302@!W\203\212\x03A\262\202t\x03\204\266\304\242\203\242\302!\247\203\242\211B\262\202$\330\331\302!\206\253\332`Eb\210\"\210\202$\x03\211\203\313\303!\302\x06@!U\203\313\x04A\262\x04\203\336\302!\247\203#\x01B\262\202#\302!\247\204\361\330\331\307`\x06E\"\210\202#\336!\204\377\x01B\262\202#\211\203 \336@!\203 \330\331\302!\206\x01\332`\x06E\x06b\210\"\210\202#\211\262\210\266\203\2051\304\307\240\210\202\0\207" [#[nil "`\304`[!\210\b\305 V\203\0\306 \203\0\307\310w\210\311\202\364n\203-o\204-\312`\313\"b\210\311\202\364\b`V\203An\204A\314\b!\203A\315\202\364\316 \317 \x1a \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\x03#)\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\a\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\0\3028\202\0\211\300b\210\303\304\305\306\211`\bW\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\b\305 V\203\0\306 \203\0\307\310w\210\311\202\364n\203-o\204-\312`\313\"b\210\311\202\364\b`V\203An\204A\314\b!\203A\315\202\364\316 \317 \x1a \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\x03#)\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\a\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\0\300\303\240\210\304 \206\0\301)\207" [(nil) 0 " " nil smie-indent-calculate] 2 "\n\n(fn)"]()
funcall(#[0 "\212\301y\210\302\303w\210`\300\242Y\203\0\300\303\240\210\304 \206\0\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)
next prev parent reply other threads:[~2014-07-30 13:56 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-29 1:58 bug#18139: 24.4.50; called-interactively-p and skip advice: raman
2014-07-30 0:08 ` Glenn Morris
2014-07-30 0:40 ` raman
2014-07-30 3:59 ` Eli Zaretskii
2014-07-30 13:56 ` raman [this message]
2017-03-25 15:55 ` npostavs
2021-08-10 16:23 ` Lars Ingebrigtsen
2014-08-01 16:12 ` raman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=p91silj2bmq.fsf@raman-glaptop.roam.corp.google.com \
--to=raman@google.com \
--cc=18139@debbugs.gnu.org \
--cc=eliz@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).