Subject: bug#28416: 26.0.50; cedet/ede/pconf.el bad test on mode-line-process

From: Pierre Lorenzon <[email-masked]>
Date: Mon, 11 Sep 2017 14:31:13 +0200 (CEST)

Hi,

At line 138 of pconf.el file there is following test :

	    (when (not (string= mode-line-process ":exit [0]"))

But analysing variable in buffer *compilation*
mode-line-process is not a string but a cons and test should
probably be done on its car.

Currently it makes an error when running
ede-proj-configure-synchronize method and compilation process
interupts.

In fact with code:

	    (when (not (string= (car mode-line-process) ":exit [0]"))
it works.

But fixing this bug depends on specifications taht will be
stabilized for mode-line-process a string a cons or whatever !

Regards Pierre

In GNU Emacs 26.0.50 (build 1, x86_64-pc-linux-gnu)
 of 2017-09-11 built on jabberwocky
Repository revision: 29963648dd11d53088f753e4f9b0491a7b981c0f
Recent messages:
#(":exit [0]" 0 9 (face compilation-mode-line-exit help-echo "Compilation finished"))
string
ad-Advice-read-from-minibuffer: Trailing garbage following expression
t
Line 138
"Line 138"
Quit
Buffer is read-only: #<buffer pconf.el.gz>
command-execute: Buffer is read-only: #<buffer pconf.el.gz>
Making completion list...

Configured using:
 'configure --prefix=/usr --libdir=/usr/lib64 'CC=gcc -m64'
 PKG_CONFIG_PATH=/usr/lib64/pkgconfig'

Configured features:
JPEG SOUND NOTIFY GNUTLS LIBXML2 ZLIB

Important settings:
  value of $LANG: C
  locale-coding-system: nil

Major mode: Emacs-Lisp

Minor modes in effect:
  gpm-mouse-mode: t
  shell-dirtrack-mode: t
  global-ede-mode: t
  ede-minor-mode: t
  desktop-save-mode: t
  global-speechd-speak-mode: t
  speechd-speak-mode: t
  global-speechd-speak-map-mode: t
  speechd-speak-map-mode: t
  cl-old-struct-compat-mode: t
  tooltip-mode: t
  electric-indent-mode: t
  menu-bar-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
  buffer-read-only: t
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
/home/devel/.emacs.d/elpa/auctex-11.91.0/auctex hides /usr/share/emacs/site-lisp/auctex
/home/devel/.emacs.d/elpa/auctex-11.91.0/tex-site hides /usr/share/emacs/site-lisp/tex-site

Features:
(shadow mew-varsx mew-unix emacsbug message rfc822 mml mml-sec
epa derived epg mm-decode mm-bodies mm-encode mail-parse
rfc2231 mailabbrev gmm-utils mailheader sendmail cl-extra pp
ibuf-ext ibuffer ibuffer-loaddefs thingatpt help-fns radix-tree
help-mode cl-print debug compile ede/locate
j++-packages-scmel-results j++-packages-scmel-output
speechd-el-extension t-mouse term/linux make-mode elec-pair
semantic/lex-spp plnltxprj-target-exercise
plnltxprj-target-history plnltxprj-target-student
plnltxprj-target edext-target-symlink plnltxprj-project
project/edext-project edext-project-project edext-utils-vc vc
vc-dispatcher vc-svn pln-w3m mew-w3m w3m doc-view dired
dired-loaddefs image-mode timezone w3m-hist w3m-fb bookmark-w3m
w3m-ems w3m-ccl ccl w3m-favicon w3m-image w3m-proc w3m-util
pln-mew mew-auth mew-config mew-imap2 mew-imap mew-nntp2
mew-nntp mew-pop mew-smtp mew-ssl mew-ssh mew-net mew-highlight
mew-sort mew-fib mew-ext mew-refile mew-demo mew-attach
mew-draft mew-message mew-thread mew-virtual mew-summary4
mew-summary3 mew-summary2 mew-summary mew-search mew-pick
mew-passwd mew-scan mew-syntax mew-bq mew-smime mew-pgp
mew-header mew-exec mew-mark mew-mime mew-edit mew-decode
mew-encode mew-cache mew-minibuf mew-complete mew-addrbook
mew-local mew-vars3 mew-vars2 mew-vars mew-env mew-mule3
mew-mule mew-gemacs mew-key mew-func mew-blvs mew-const mew
pln-eww url-file url-dired eww mm-url gnus nnheader gnus-util
rmail rmail-loaddefs rfc2047 rfc2045 ietf-drums mail-utils
mm-util mail-prsvr url-queue url url-proxy url-privacy
url-history url-cookie url-domsuf mailcap shr svg xml dom
browse-url url-expand url-util url-methods plnltx plnltxprj
plnltxtss plnltxenv j++-basic-package
j++-packages-subsystems-descriptors-descriptor
j++-packages-subsystems-descriptors-class
j++-packages-databases-items-item j++-basic-mastered
j++-basic-widgets-open-close-title j++-basic-widgets-title
j++-basic-widgets-open-close-object
j++-packages-subsystems-subsystems
j++-packages-subsystems-basic-lists-pointed
j++-packages-subsystems-basic-lists-list
j++-interfaces-loadable-basic-lists-pointed
j++-interfaces-basic-lists-pointed
j++-interfaces-loadable-basic-lists-list
j++-interfaces-basic-lists-list j++-packages-databases-mutable
j++-basic-widgets-lists-pointed j++-basic-lists-pointed
j++-basic-creator j++-basic-widgets-lists-list
j++-basic-lists-list j++-basic-mapable j++-basic-sortable
j++-packages-subsystems-basic-logger
j++-interfaces-loadable-basic-logger
j++-interfaces-basic-logger tramp tramp-compat tramp-loaddefs
trampver ucs-normalize shell pcomplete comint regexp-opt
ansi-color ring parse-time format-spec edext edext-automake
edext-srecode semantic/edit srecode/srt-mode semantic/analyze
semantic/sort semantic/scope semantic/analyze/fcn semantic/db
semantic/format srecode/template srecode/srt-wy semantic/wisent
semantic/wisent/wisent semantic/ctxt edext-compat pln-ede
srecode/insert srecode/filters srecode/args srecode/find
srecode/map srecode/ctxt semantic/tag-ls semantic/find
srecode/compile srecode/dictionary srecode/table srecode
semantic/util-modes semantic/util semantic semantic/tag
semantic/lex semantic/fw mode-local find-func ede/proj-elisp
ede/pconf ede/proj-misc ede/proj-shared ede/proj-prog ede/pmake
ede/proj-obj ede/proj ede/make ede/proj-comp ede/autoconf-edit
autoconf autoconf-mode pln-auctex pln-customization
ede/speedbar ede/files ede ede/detect ede/base ede/auto
ede/source eieio-speedbar speedbar sb-image ezimage image
dframe cedet desktop frameset cus-start cus-load finder-inf
info tool-bar tex-site package easymenu epg-config url-handlers
url-parse url-vars time-date j++-packages-scmel-efm-parameters
j++-packages-scmel-efm-connection network-stream puny nsm
subr-x auth-source password-cache starttls tls gnutls
j++-packages-scmel-efm-driver j++-packages-scmel-efm-efm
j++-packages-scmel-monitor j++-packages-scmel-scmel
j++-basic-logger j++-basic-processes-network-filtered
j++-basic-processes-filtered j++-basic-processes-put-and-get
j++-basic-processes-network-stream j++-basic-processes-process
j++-packages-subsystems-subsystem
j++-interfaces-loadable-loadable j++-interfaces-interface
j++-basic-widgets-object warnings j++-basic-files-loadable
j++-basic-files-serializable j++-basic-files-stringifiable
j++-basic-state j++-basic-files-load eieio-base eieio-custom
wid-edit speechd-speak advice speechd-brltty speechd-braille
braille mmanager brltty speechd-ssip speechd speechd-out
eieio-compat cl-seq speechd-common jka-compr j++ j++-compat
j++-precompat eieio eieio-core cl-macs eieio-loaddefs seq
byte-opt bytecomp byte-compile cconv cl gv cl-loaddefs cl-lib
disp-table mule-util tooltip eldoc electric uniquify ediff-hook
vc-hooks lisp-float-type tabulated-list replace newcomment
text-mode elisp-mode lisp-mode prog-mode register page menu-bar
rfn-eshadow isearch timer select mouse jit-lock font-lock
syntax facemenu font-core term/tty-colors frame cl-generic cham
georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet
lao korean japanese eucjp-ms cp51932 hebrew greek romanian
slovak czech european ethiopic indian cyrillic chinese
composite charscript charprop case-table epa-hook jka-cmpr-hook
help simple abbrev obarray minibuffer cl-preloaded 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 inotify multi-tty
make-network-process emacs)

Memory information:
((conses 16 424687 79516)
 (symbols 48 42059 151)
 (miscs 40 179 138)
 (strings 32 100605 2222)
 (string-bytes 1 2828855)
 (vectors 16 66774)
 (vector-slots 8 1225990 27791)
 (floats 8 180 406)
 (intervals 56 825 251)
 (buffers 992 24)
 (heap 1024 49167 1458))