* bug#14390: 24.3.50; (wrong-type-argument stringp t) from `read-regexp'
@ 2013-05-11 21:54 Drew Adams
2013-05-11 23:17 ` Juri Linkov
0 siblings, 1 reply; 3+ messages in thread
From: Drew Adams @ 2013-05-11 21:54 UTC (permalink / raw)
To: 14390
The backtrace is not from emacs -Q, but I think the same problem is there.
`read-regexp' binds SUGGESTIONS to this:
(append
suggestions
(list
(find-tag-default-as-regexp) ; <======= SHOULD return a string
(car regexp-search-ring)
(regexp-quote (or (car search-ring) ""))
(car (symbol-value query-replace-from-history-variable))))
The problem is (find-tag-default-as-regexp), which will return `t' when
TAG is nil. `t' is not a valid suggestion: SUGGESTIONS must be a list
of strings.
Debugger entered--Lisp error: (wrong-type-argument stringp t)
* icicle-ORIG-read-from-minibuffer("Flush lines containing match for regexp: " t
nil nil regexp-history (t "^\\*.*" "keep-lines-read-args"
"bookmarkp-bmenu-show-only-varlists") t)
* read-from-minibuffer("Flush lines containing match for regexp: " nil nil nil
regexp-history (t "^\\*.*" "keep-lines-read-args"
"bookmarkp-bmenu-show-only-varlists") t)
* read-regexp("Flush lines containing match for regexp")
* (list (read-regexp prompt) nil nil t)
* (lambda (prompt) "Read arguments for `keep-lines' and friends.\nPrompt for a
regexp with PROMPT.\nValue is a list, (REGEXP)." (list (read-regexp prompt) nil
nil t))("Flush lines containing match for regexp")
* apply((lambda (prompt) "Read arguments for `keep-lines' and friends.\nPrompt
for a regexp with PROMPT.\nValue is a list, (REGEXP)." (list (read-regexp
prompt) nil nil t)) "Flush lines containing match for regexp")
* keep-lines-read-args("Flush lines containing match for regexp")
(progn (barf-if-buffer-read-only) (keep-lines-read-args "Flush lines
containing match for regexp"))
call-interactively(flush-lines record-it)
icicle-execute-extended-command-1("flush-lines")
...
funcall(...)
icicle-execute-extended-command()
call-interactively(icicle-execute-extended-command nil nil)
command-execute(icicle-execute-extended-command)
In GNU Emacs 24.3.50.1 (i386-mingw-nt5.1.2600)
of 2013-05-10 on ODIEONE
Bzr revision: 112542 rgm@gnu.org-20130510102119-fklj7xlajezey0tr
Windowing system distributor `Microsoft Corp.', version 5.1.2600
Configured using:
`configure --with-gcc (4.7) --no-opt --enable-checking --cflags
-IC:/Devel/emacs/build/include --ldflags -LC:/Devel/emacs/build/lib'
^ permalink raw reply [flat|nested] 3+ messages in thread
* bug#14390: 24.3.50; (wrong-type-argument stringp t) from `read-regexp'
2013-05-11 21:54 bug#14390: 24.3.50; (wrong-type-argument stringp t) from `read-regexp' Drew Adams
@ 2013-05-11 23:17 ` Juri Linkov
2013-05-14 23:40 ` Juri Linkov
0 siblings, 1 reply; 3+ messages in thread
From: Juri Linkov @ 2013-05-11 23:17 UTC (permalink / raw)
To: Drew Adams; +Cc: 14390
> The problem is (find-tag-default-as-regexp), which will return `t' when
> TAG is nil. `t' is not a valid suggestion: SUGGESTIONS must be a list
> of strings.
An empty string return value for the case when TAG is nil
was lost when copying this code from `read-regexp'
to `find-tag-default-as-regexp' in revno:111971.
It could be restored back with:
=== modified file 'lisp/subr.el'
--- lisp/subr.el 2013-04-27 23:07:46 +0000
+++ lisp/subr.el 2013-05-11 23:16:36 +0000
@@ -2715,7 +2715,7 @@ (defun find-tag-default-as-regexp ()
(get major-mode 'find-tag-default-function)
'find-tag-default))
(tag (funcall tagf)))
- (cond ((not tag))
+ (cond ((not tag) "")
((eq tagf 'find-tag-default)
(format "\\_<%s\\_>" (regexp-quote tag)))
(t (regexp-quote tag)))))
BTW, the same commit revno:111971 introduced the function
`hi-lock-read-regexp-defaults'. I think this is a good thing,
and I propose to improve it by adding `read-regexp-defaults-or-tag'
and `read-regexp-defaults-or-history' as we were discussing a month ago.
^ permalink raw reply [flat|nested] 3+ messages in thread
* bug#14390: 24.3.50; (wrong-type-argument stringp t) from `read-regexp'
2013-05-11 23:17 ` Juri Linkov
@ 2013-05-14 23:40 ` Juri Linkov
0 siblings, 0 replies; 3+ messages in thread
From: Juri Linkov @ 2013-05-14 23:40 UTC (permalink / raw)
To: Drew Adams; +Cc: 14390-done
> === modified file 'lisp/subr.el'
> --- lisp/subr.el 2013-04-27 23:07:46 +0000
> +++ lisp/subr.el 2013-05-11 23:16:36 +0000
> @@ -2715,7 +2715,7 @@ (defun find-tag-default-as-regexp ()
> (get major-mode 'find-tag-default-function)
> 'find-tag-default))
> (tag (funcall tagf)))
> - (cond ((not tag))
> + (cond ((not tag) "")
After looking more at this, I think it should return nil
because its accompanying function `find-tag-default' returns nil,
not an empty string, if there is no default tag at point.
This is fixed now.
> BTW, the same commit revno:111971 introduced the function
> `hi-lock-read-regexp-defaults'. I think this is a good thing,
> and I propose to improve it by adding `read-regexp-defaults-tag'
> and `read-regexp-defaults-history' as we were discussing a month ago.
I'll create a separate request for this.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2013-05-14 23:40 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-05-11 21:54 bug#14390: 24.3.50; (wrong-type-argument stringp t) from `read-regexp' Drew Adams
2013-05-11 23:17 ` Juri Linkov
2013-05-14 23:40 ` Juri Linkov
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).