Subject: bug#19625: 24.4.51; packages using eieio need recompilation when switching to emacs-25

From: Thierry Volpiatto <[email-masked]>
Date: Mon, 19 Jan 2015 09:40:22 +0100

Hi,

packages using eieio when compiled with emacs-24.4 should not need a
recompilation when switching to emacs-25:

1) Switch to emacs-24

2) Install and compile helm from https://github.com/emacs-helm/helm
or melpa.

3) Run from helm directory ./emacs-helm.sh

4) Switch to emacs-25

5) Repeat 4) and you have an error:
Too many arguments to `defclass'.

In GNU Emacs 24.4.51.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.10.8)
 of 2015-01-11 on dell-14z
Repository revision: b544ab561fcb575790c963a2eda51524fa366409
Windowing system distributor `The X.Org Foundation', version 11.0.11501000
System Description:	Ubuntu 14.04.1 LTS

Important settings:
  value of $LANG: fr_FR.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Emacs-Lisp

Minor modes in effect:
  git-gutter-mode: t
  psession-mode: t
  golden-ratio-mode: t
  winner-mode: t
  global-undo-tree-mode: t
  undo-tree-mode: t
  auto-image-file-mode: t
  eldoc-in-minibuffer-mode: t
  show-paren-mode: t
  display-time-mode: t
  recentf-mode: t
  savehist-mode: t
  eldoc-mode: t
  minibuffer-depth-indicate-mode: t
  helm-mode: t
  helm-descbinds-mode: t
  shell-dirtrack-mode: t
  helm-adaptive-mode: t
  helm-match-plugin-mode: t
  helm-occur-match-plugin-mode: t
  helm-autoresize-mode: t
  tooltip-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent messages:
Auto-saving...
<C-down-mouse-1> at that spot runs the command mouse-buffer-menu
Importing package-keyring.gpg...done
Contacting host: melpa.milkbox.net:80 [2 times]
Contacting host: api.github.com:443 [2 times]
Starting Firefox...
Contacting host: api.github.com:443 [2 times]
Overwrite `/home/thierry/elisp/helm_stable/helm-adaptive.el'? [Type yn!q or C-h] !
copy: 0 files
copy proceeding asynchronously...

Load-path shadows:
~/elisp/auctex/lpath hides ~/elisp/emacs-wget/lpath
/usr/local/share/emacs/24.4.51/lisp/emacs-lisp/tq hides ~/elisp/emms/lisp/tq

Features:
(shadow epa-mail emacsbug parse-time gnutls mm-archive network-stream
starttls url-cache url-handlers finder-inf helm-elisp-package
helm-command cl-indent help-mode helm-elisp helm-eval smiley gnus-art
mm-uu mml2015 mm-view mml-smime smime dig w3m-form mule-util add-log
conf-mode cc-langs cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles
cc-align cc-engine cc-vars cc-defs vc-hg jedi python-environment
auto-complete popup epc ctable concurrent deferred markdown-mode vc-rcs
sh-script smie executable make-mode vc-git naquadah-theme em-unix
em-script em-prompt em-ls em-hist em-pred em-glob em-dirs em-cmpl
em-basic em-banner em-alias align-let git-gutter server psession
golden-ratio winner undo-tree diff slime-xref-browser slime-banner
slime-tramp slime-asdf slime-fancy slime-trace-dialog
slime-fontifying-fu slime-package-fu slime-references
slime-compiler-notes-tree slime-scratch slime-presentations bridge
slime-fuzzy slime-fancy-trace slime-fancy-inspector slime-c-p-c
slime-editing-commands slime-autodoc slime-repl elp slime-parse slime
gud apropos etags arc-mode archive-mode image-file xdvi-search
preview-latex tex-site auto-loads pcomplete-extension pcmpl-unix
pcmpl-gnu em-term term disp-table ehelp python eldoc-eval warnings
whitespace paren time recentf tree-widget savehist mu4e-config org-mu4e
helm-mu mu4e-contrib mu4e mu4e-speedbar speedbar sb-image ezimage dframe
mu4e-main mu4e-view mu4e-headers mu4e-compose mu4e-draft mu4e-actions
ido rfc2368 mu4e-mark mu4e-message html2text mu4e-proc mu4e-utils
mu4e-lists mu4e-about mu4e-vars mu4e-meta gnus-dired nnir gnus-sum
gnus-group gnus-undo nnmail mail-source gnus-start gnus-spec gnus-int
gnus-range gnus-win nnoo config-w3m w3m-search w3m doc-view jka-compr
image-mode timezone w3m-hist w3m-fb bookmark-w3m w3m-ems w3m-ccl ccl
w3m-favicon w3m-image w3m-proc w3m-util w3m-load smtpmail-async smtpmail
sendmail dired-async iterator lacarte iedit-rect iedit iedit-lib
smallurl mm-url gnus gnus-ems nnheader wid-edit rectangle-utils rect
ledger-config ledger esh-var esh-io esh-cmd esh-opt esh-ext esh-proc
eldoc esh-groups eshell esh-module esh-mode esh-arg esh-util tv-utils
pcvs vc-cvs pcvs-parse pcvs-info pcvs-defs pcvs-util ewoc mb-depth
cl-info hyperspec slime-autoloads esh-toggle flymake no-word htmlize cl
dired-extension emms-mpd-config emms-playlist-limit emms-volume
emms-volume-amixer emms-i18n emms-history emms-score emms-stream-info
emms-metaplaylist-mode emms-bookmarks emms-cue emms-mode-line-icon
emms-browser sort emms-playlist-sort emms-last-played emms-player-xine
emms-player-mpd tq emms-playing-time emms-lyrics emms-url hl-line
emms-tag-editor emms-mark emms-mode-line emms-cache emms-info-ogginfo
emms-info-mp3info emms-playlist-mode emms-player-vlc emms-player-mplayer
emms-info emms-streams later-do emms-source-playlist emms-source-file
emms-player-simple emms-setup emms emms-compat org-config-thierry ob-sh
org-crypt appt diary-lib diary-loaddefs org-annotation-helper
addressbook-bookmark message rfc822 mml mml-sec mm-decode mm-bodies
mm-encode mailabbrev mail-utils gmm-utils mailheader firefox-protocol
bookmark-firefox-handler bookmark-extensions init-helm-thierry helm-mode
helm-open-github gh-pulls gh-issues gh-repos gh-oauth gh-api logito
gh-cache pcache eieio-base gh-auth gh-common gh-url url-http tls
url-auth mail-parse rfc2231 rfc2047 rfc2045 ietf-drums url-gw gh-profile
rx json helm-dictionary helm-ls-git helm-descbinds helm-ls-hg helm-files
image-dired tramp tramp-compat tramp-loaddefs trampver shell dired-x
dired-aux ffap thingatpt helm-buffers helm-elscreen helm-tags
helm-bookmark helm-adaptive helm-info helm-net browse-url xml url
url-proxy url-privacy url-expand url-methods url-history url-cookie
url-domsuf url-util url-parse url-vars mailcap bookmark pp helm-help
helm-org org org-macro org-footnote org-pcomplete pcomplete org-list
org-faces org-entities noutline outline org-version ob-emacs-lisp ob
ob-tangle ob-ref ob-lob ob-table ob-exp org-src ob-keys ob-comint
ob-core ob-eval org-compat org-macs org-loaddefs format-spec find-func
cal-menu calendar cal-loaddefs helm-match-plugin helm-grep wgrep-helm
wgrep helm-regexp helm-plugin grep helm-external helm-utils dired
compile comint ansi-color ring helm-locate helm easy-mmode helm-source
vc vc-dispatcher helm-config helm-autoloads async-bytecomp cl-macs gv
async helm-aliases epa-file epa derived epg auth-source gnus-util
mm-util mail-prsvr password-cache eieio byte-opt bytecomp byte-compile
cl-extra cconv eieio-core package epg-config time-date avoid cus-start
cus-load w3m-wget info easymenu edmacro kmacro advice help-fns net-utils
cl-loaddefs cl-lib tooltip electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt
fringe tabulated-list newcomment lisp-mode prog-mode register page
menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock
syntax facemenu font-core frame cham georgian utf-8-lang misc-lang
vietnamese tibetan thai tai-viet lao korean japanese hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer nadvice
loaddefs button faces cus-face macroexp files text-properties overlay
sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote make-network-process dbusbind
gfilenotify dynamic-setting system-font-setting font-render-setting
move-toolbar gtk x-toolkit x multi-tty emacs)

Memory information:
((conses 16 1004345 213008)
 (symbols 48 66287 3)
 (miscs 40 903 1400)
 (strings 32 196002 9745)
 (string-bytes 1 6213370)
 (vectors 16 70622)
 (vector-slots 8 1798899 141317)
 (floats 8 1823 568)
 (intervals 56 72341 21219)
 (buffers 960 206)
 (heap 1024 96235 8906))
-- 
Thierry
Get my Gnupg key:
gpg --keyserver pgp.mit.edu --recv-keys 59F29997