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

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

bug#19466: 25.0.50; xref-find-def doesn't find C functions


From: Stefan Monnier
Subject: bug#19466: 25.0.50; xref-find-def doesn't find C functions
Date: Wed, 21 Jan 2015 15:02:34 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux)

>> >> Debugger entered--Lisp error: (args-out-of-range "" 0)
>> >>    help-function-arglist(#[257 "\300\207" ["(No location)"] 2 "(No
>> >> location)\n\n(fn ##)"] preserve-names)
>> >>    eieio--defmethod(xref-location-group nil xref-bogus-location #[257
>> >> "\300\207" ["(No location)"] 2 "(No location)\n\n(fn ##)"])
>> > I'm sure Someone(tm) will fix that right away. :)

Sorry, I missed this.  When/how do you get this error?

> Meanwhile I additionally get:
>   ELC      progmodes/xref.elc
> `defgeneric' is an obsolete macro (as of 25.1); use `cl-defgeneric' instead.
> `defgeneric' is an obsolete macro (as of 25.1); use `cl-defgeneric' instead.
> `defmethod' is an obsolete macro (as of 25.1); use `cl-defmethod' instead.
> `defgeneric' is an obsolete macro (as of 25.1); use `cl-defgeneric' instead.
> `defmethod' is an obsolete macro (as of 25.1); use `cl-defmethod' instead.
> `defgeneric' is an obsolete macro (as of 25.1); use `cl-defgeneric' instead.
> `defmethod' is an obsolete macro (as of 25.1); use `cl-defmethod' instead.
> `defgeneric' is an obsolete macro (as of 25.1); use `cl-defgeneric' instead.
> `defmethod' is an obsolete macro (as of 25.1); use `cl-defmethod' instead.
> `defgeneric' is an obsolete macro (as of 25.1); use `cl-defgeneric' instead.
> `defmethod' is an obsolete macro (as of 25.1); use `cl-defmethod' instead.
> `defgeneric' is an obsolete macro (as of 25.1); use `cl-defgeneric' instead.
> `defmethod' is an obsolete macro (as of 25.1); use `cl-defmethod' instead.
> `defgeneric' is an obsolete macro (as of 25.1); use `cl-defgeneric' instead.
> `defmethod' is an obsolete macro (as of 25.1); use `cl-defmethod' instead.
> `defgeneric' is an obsolete macro (as of 25.1); use `cl-defgeneric' instead.
> `defmethod' is an obsolete macro (as of 25.1); use `cl-defmethod' instead.
> `defgeneric' is an obsolete macro (as of 25.1); use `cl-defgeneric' instead.
> `defmethod' is an obsolete macro (as of 25.1); use `cl-defmethod' instead.
> `defgeneric' is an obsolete macro (as of 25.1); use `cl-defgeneric' instead.
> `defmethod' is an obsolete macro (as of 25.1); use `cl-defmethod' instead.
> `defgeneric' is an obsolete macro (as of 25.1); use `cl-defgeneric' instead.
> `defmethod' is an obsolete macro (as of 25.1); use `cl-defmethod' instead.
> `defgeneric' is an obsolete macro (as of 25.1); use `cl-defgeneric' instead.

There are two problems here:
1- The warnings fail to include the "xref.el:<lineno>: " prefix.
   Haven't figured out why yet.  If someone wants to help fix this, he'd
   be very welcome.  The problem seems to happen only when
   macroexp--warn-and-return is used on a toplevel form (aka
   "file-form").  The warnings themselves are otherwise correct (and
   "harmless").
2- xref.el (just like pretty much all existing code using EIEIO) uses
   obsolete macros, indeed.  This is easy to fix.


        Stefan





reply via email to

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