[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: .emacs parsing problem
From: |
Pascal J. Bourguignon |
Subject: |
Re: .emacs parsing problem |
Date: |
Fri, 28 Aug 2009 16:36:54 +0200 |
User-agent: |
Gnus/5.101 (Gnus v5.10.10) Emacs/22.2 (gnu/linux) |
Anselm Helbig <anselm.helbig+news2009@googlemail.com> writes:
> Hi!
>
>> I'm getting this error using the CEDET package customizations in my .emacs
>> file:
>>
>> Idle Work Including Error: "#<buffer .emacs> - Wrong type argument:
>> number-or-marker-p, (512 39 . 8739)"
>>
>> What do the numbers at the end of the error message indicate?
>
> A function was expecting a number or a marker (an object describing a
> position in a buffer), but it got the list (512 39 . 8739) instead. I
> have no idea where these numbers come from.
emacs lisp has no bignums. Integer range is limited to fixnum, which
is 27 bits IIRC on 32-bit machines, and 59 bits on 64-bit machines.
You can use the following function to determine it:
(defun compute-most-positive-fixnum ()
(loop
for p from 0
for i = 1 then n
for n = (* 2 i)
while (< i n)
finally (return (truncate (1- (expt 2.0 p))))))
Some numbers need a bigger range, and therefore need to be represented
as a list of numbers. AFAIK, the only case where it's done by emacs,
is with dates, as returned by current-time:
(current-time) --> (19095 60141 366049)
but it returns a proper list, not a dotted list.
>> How do I find out what exactly is causing the problem?
>
> You start emacs with the --debug-init option.
And search in the functions listed in the backtrace where the wrong
data item may come from.
--
__Pascal Bourguignon__