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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: (debug) backtrace: how to show source code at current location.


From: Tim X
Subject: Re: (debug) backtrace: how to show source code at current location.
Date: Thu, 06 Jan 2011 10:31:36 +1100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)

Larry Evans <cppljevans@suddenlink.net> writes:

> On 01/05/11 13:06, Drew Adams wrote:
>>> Please, how can I find out what's causing this error message:
>>>
>>>   "(wrong-type-argument arrayp tab)"
>> 
>> From your error message alone, it seems that the symbol `tab' is being 
>> passed to
>> some function that expects an array.  That's not much help yet, but things 
>> might
>> become clearer when you dig deeper using the debugger.
>> 
>> (setq debug-on-error t)
>> 
>> 1. Load source (*.el) files for the library where the error occurred.
>> 
>> IOW, look at the `debug-on-error' backtrace to see which function(s) were
>> involved when the error occurred.  Then use `C-h f' or `find-func' to find 
>> the
>> function definition(s) (source file(s)).  Load the source file(s) (*.el) 
>> using
>> `load-file' or `load-library', including the extension `.el' in the name.
>> 
>> 2. Provoke the error and backtrace again.  It should now show more 
>> source-code
>> entry points instead of byte-code (the `(byte-code "ÁÂÃ...' stuff)
>> 
>> 3. You can also use `M-x debug-on-entry THE-FUNCTION' to enter the debugger
>> whenever a problematic function is invoked.  Then you can walk through the
>> invocation to see more about what caused the error.
>> 
>> 
>> 
> Thank you very much for the help Drew.
> What I did was started with just:
>
>   (setq debug-on-error t)
>
> as shown in the attachment (a revision of the one posted earlier).
> The started emacs; however, no backtrace appeared.  OTOH, the
> *Messages* buffer contained:
>
>> Loading /home/evansl/.emacs.d/init.common.el (source)...
>> Loading /home/evansl/.recentf...done
>> Cleaning up the recentf list...done (0 removed)
>> Loading /usr/share/emacs/site-lisp/haskell-mode/haskell-site-file.el 
>> (source)...done
>> Loading /home/evansl/.emacs.d/init.common.el (source)...done
>> Loading desktop...done
>> Loading eldoc...done
>> uncompressing indent.el.gz...done
>> Note: file is write protected
>> Loading cc-mode...done
>> Note: file is write protected
>> c-tab-stop-my-list message
>> c++-mode-my-hook message:tabs=
>> (0 2 4)
>> c++-mode-my-hook message{
>> File mode specification error: (wrong-type-argument arrayp tab)
>> Loading /usr/share/emacs/site-lisp/haskell-mode/haskell-mode.el 
>> (source)...done
>
> Is there something else I should do to get a backtrace?
>

Yep, start emacs as 

emacs --debug-init

Tim

-- 
tcross (at) rapttech dot com dot au


reply via email to

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