unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Davis Herring" <herring@lanl.gov>
To: "Stefan Monnier" <monnier@iro.umontreal.ca>
Cc: Lennart Borgman <lennart.borgman@gmail.com>,
	Emacs-Devel devel <emacs-devel@gnu.org>
Subject: Re: Symbol's function definition is void: <
Date: Tue, 30 Jun 2009 07:44:04 -0700 (PDT)	[thread overview]
Message-ID: <45001.130.55.118.19.1246373044.squirrel@webmail.lanl.gov> (raw)
In-Reply-To: <jwvhby4kp3h.fsf-monnier+emacs@gnu.org>

>> I have got a strange bug report for nXhtml. The report says that < is
>> not defined. Please see
>
>>     http://www.emacswiki.org/emacs/NxhtmlMode#toc13
>
>> What functions could make < void? fset?
>
> It might also just be an uninterned symbol, so it has the same name as
> the "strictly greater" but doesn't have any function associated with it.

Then it would have to be called with `funcall' or `eval', which seems
unlikely.

I suppose it could also be the case that the "real" '< got uninterned, and
then any Lisp read after that would generate a new '< that had no
function.  (Any Lisp already read would still use the old symbol, of
course, even through `eval' and such.)

Lennart, you can use functions like these to test for these cases:

;; Non-nil if sym is in the obarray OB (or `obarray').
(defun internp (sym &optional ob) (if sym (intern-soft sym ob) t))
;; Non-nil if sym is the '< that was current when this function was read.
(defun <p (sym) (eq sym '<))
;; Non-nil if sym is the current '<.
(defun is< (sym) (eq sym (intern "<")))
;; Non-nil if '< when called is not the same as when read.
(defun <-changed () (not (is< '<)))

Davis

-- 
This product is sold by volume, not by mass.  If it appears too dense or
too sparse, it is because mass-energy conversion has occurred during
shipping.




  parent reply	other threads:[~2009-06-30 14:44 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-25 14:58 Symbol's function definition is void: < Lennart Borgman
2009-06-25 15:13 ` Davis Herring
2009-06-25 15:54   ` Lennart Borgman
2009-06-25 20:59 ` Stefan Monnier
2009-06-25 23:11   ` Lennart Borgman
2009-06-26 11:10     ` Thien-Thi Nguyen
2009-06-26 12:37       ` Alan Mackenzie
2009-06-26 18:17       ` Lennart Borgman
2009-06-30 14:44   ` Davis Herring [this message]
2009-06-26 12:10 ` Andreas Roehler
2009-06-26 19:20   ` Lennart Borgman
2009-06-26 19:44     ` Andreas Roehler

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=45001.130.55.118.19.1246373044.squirrel@webmail.lanl.gov \
    --to=herring@lanl.gov \
    --cc=emacs-devel@gnu.org \
    --cc=lennart.borgman@gmail.com \
    --cc=monnier@iro.umontreal.ca \
    /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).