help-gnu-emacs
[Top][All Lists]
Advanced

[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__


reply via email to

[Prev in Thread] Current Thread [Next in Thread]