Subject: bug#5153: 23.1.50; define-global-minor-mode and a new fundamental buffer

From: Kenichi Handa <[email-masked]>
Date: Tue, 08 Dec 2009 14:42:54 +0900

It seems that the global minor mode defined by
define-global-minor-mode doesn't work in a newly created
buffer of fundamental mode.  Currently
global-auto-composition-mode is defined as this:

(define-global-minor-mode global-auto-composition-mode
  auto-composition-mode turn-on-auto-composition-if-enabled
  ;; This :extra-args' appears to be the result of a naive copy&paste
  ;; from global-font-lock-mode.
  ;; :extra-args (dummy)
  :initialize 'custom-initialize-delay
  :init-value (not noninteractive)
  :group 'auto-composition
  :version "23.1")

When I create a new buffer by C-x b temp RET,
auto-composition-mode is not turned on in the "temp" buffer.
When I do M-x fundatmenta-mode RET in that buffer,
auto-composition-mode is turned on.

Isn't this a bug?

---
Kenichi Handa
[email-masked]

If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
    `bt full' and `xbacktrace'.
For information about debugging Emacs, please read the file
/usr/local/work/emacs/etc/DEBUG.

In GNU Emacs 23.1.50.11 (i686-pc-linux-gnu, GTK+ Version 2.16.1)
 of 2009-12-02 on etlken
Windowing system distributor `The X.Org Foundation', version 11.0.10600000
configured using `configure  'CFLAGS=-g''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: ja_JP.UTF-8
  value of $XMODIFIERS: @im=SCIM
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: C/l

Minor modes in effect:
  diff-auto-refine-mode: t
  shell-dirtrack-mode: t
  display-time-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  global-auto-composition-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  abbrev-mode: t

Recent input:
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-o C-o 
B y SPC t h e SPC w a y , SPC I SPC d o n ' t SPC k 
n o w SPC w h y SPC a u t o M-/ SPC i s SPC n o t SPC 
t u r n e d SPC o n SPC e v e n M-b i n SPC t h a t 
SPC b u f f e r SPC C-e SPC i f SPC g l o b a l - a 
u t o - c o m p p o s <backspace> <backspace> <backspace> 
o s i t i o n SPC <backspace> - m o d e SPC i s SPC 
o n . SPC SPC I ' l l SPC f i l e SPC a n o t h e r 
SPC b u g SPC r e p r o t <backspace> <backspace> <backspace> 
r <backspace> o r t . <escape> q <escape> < C-c C-c 
C-x b <return> C-p C-p C-p C-f C-SPC M-f M-f M-f M-f 
<escape> w <escape> x r e p o r t <tab> <return> C-y 
SPC d o e s n ' t SPC w o r k SPC i n SPC a SPC n e 
w SPC f u n d a m e n t a l SPC b u f f e r M-b M-b 
M-b M-b M-b M-b M-b M-b M-d M-d M-d M-d a n d C-e <return> 
<escape> x l o a d SPC l i SPC <return> s e n d m a 
i l <return> C-x k <return> y e s <return> M-x r e 
p o r t SPC e m <tab> <return>

Recent messages:
Mark set [2 times]
Mark saved where search started
Quit [2 times]
Mark set [2 times]
Sending...
Sending via mail...
Sending...done
Mark set
report-emacs-bug: Invalid byte code in /usr/local/work/emacs/lisp/mail/sendmail.elc
Loading sendmail...done

Load-path shadows:
/usr/local/share/emacs/site-lisp/ndspell hides /usr/local/share/emacs/site-lisp/lookup/ndspell
/usr/local/share/emacs/site-lisp/ndeb hides /usr/local/share/emacs/site-lisp/lookup/ndeb
/usr/local/share/emacs/site-lisp/ndtp hides /usr/local/share/emacs/site-lisp/lookup/ndtp
/usr/local/share/emacs/site-lisp/sdicf hides /usr/local/share/emacs/site-lisp/lookup/sdicf
/usr/local/share/emacs/site-lisp/lookup hides /usr/local/share/emacs/site-lisp/lookup/lookup
/usr/local/share/emacs/site-lisp/ndkks hides /usr/local/share/emacs/site-lisp/lookup/ndkks
/usr/local/share/emacs/site-lisp/ndict hides /usr/local/share/emacs/site-lisp/lookup/ndict
/usr/local/share/emacs/site-lisp/ndcookie hides /usr/local/share/emacs/site-lisp/lookup/ndcookie
/usr/local/share/emacs/site-lisp/stem-english hides /usr/local/share/emacs/site-lisp/lookup/stem-english
/usr/local/share/emacs/site-lisp/ndsrd hides /usr/local/share/emacs/site-lisp/lookup/ndsrd
/usr/local/share/emacs/site-lisp/lookup-utils hides /usr/local/share/emacs/site-lisp/lookup/lookup-utils
/usr/local/share/emacs/site-lisp/lookup-vars hides /usr/local/share/emacs/site-lisp/lookup/lookup-vars
/usr/local/share/emacs/site-lisp/lookup-types hides /usr/local/share/emacs/site-lisp/lookup/lookup-types
/usr/local/share/emacs/site-lisp/ndic hides /usr/local/share/emacs/site-lisp/lookup/ndic
/usr/local/share/emacs/site-lisp/lookup-select hides /usr/local/share/emacs/site-lisp/lookup/lookup-select
/usr/local/share/emacs/site-lisp/lookup-content hides /usr/local/share/emacs/site-lisp/lookup/lookup-content
/usr/local/share/emacs/site-lisp/rmail-mime/mime/pgg-pgp5 hides /usr/local/work/emacs/lisp/pgg-pgp5
/usr/local/share/emacs/site-lisp/rmail-mime/mime/pgg-def hides /usr/local/work/emacs/lisp/pgg-def
/usr/local/share/emacs/site-lisp/rmail-mime/mime/pgg-parse hides /usr/local/work/emacs/lisp/pgg-parse
/usr/local/share/emacs/site-lisp/rmail-mime/mime/pgg-pgp hides /usr/local/work/emacs/lisp/pgg-pgp
/usr/local/share/emacs/site-lisp/rmail-mime/mime/pgg hides /usr/local/work/emacs/lisp/pgg
/usr/local/share/emacs/site-lisp/rmail-mime/mail/sha1 hides /usr/local/work/emacs/lisp/sha1
/usr/local/share/emacs/site-lisp/rmail-mime/mail/hex-util hides /usr/local/work/emacs/lisp/hex-util
/usr/local/share/emacs/site-lisp/rmail-mime/mime/pgg-gpg hides /usr/local/work/emacs/lisp/pgg-gpg
/usr/local/work/emacs/lisp/subword hides /usr/local/work/emacs/lisp/progmodes/subword
~/gud/gud hides /usr/local/work/emacs/lisp/progmodes/gud
/usr/local/share/emacs/site-lisp/rmail-mime/mail/sasl-digest hides /usr/local/work/emacs/lisp/net/sasl-digest
/usr/local/share/emacs/site-lisp/rmail-mime/mail/hmac-md5 hides /usr/local/work/emacs/lisp/net/hmac-md5
/usr/local/share/emacs/site-lisp/rmail-mime/mail/sasl hides /usr/local/work/emacs/lisp/net/sasl
/usr/local/share/emacs/site-lisp/rmail-mime/mail/sasl-cram hides /usr/local/work/emacs/lisp/net/sasl-cram
/usr/local/share/emacs/site-lisp/rmail-mime/mail/hmac-def hides /usr/local/work/emacs/lisp/net/hmac-def
/usr/local/share/emacs/site-lisp/rmail-mime/mail/feedmail hides /usr/local/work/emacs/lisp/mail/feedmail
/usr/local/share/emacs/site-lisp/rmail-mime/mail/smtpmail hides /usr/local/work/emacs/lisp/mail/smtpmail
/usr/local/share/emacs/site-lisp/rmail-mime/mime/smime hides /usr/local/work/emacs/lisp/gnus/smime
/usr/local/work/emacs/lisp/progmodes/sym-comp hides /usr/local/work/emacs/lisp/obsolete/sym-comp
/usr/local/work/emacs/lisp/language/thai-word hides ~/emacslisp/thai-word
/usr/local/work/emacs/lisp/textmodes/tex-mode hides ~/emacslisp/tex-mode
/usr/local/work/emacs/lisp/textmodes/table hides ~/emacslisp/table
/usr/local/work/emacs/lisp/emacs-lisp/syntax hides ~/emacslisp/syntax
/usr/local/work/emacs/lisp/progmodes/prolog hides ~/emacslisp/prolog

Features:
(shadow emacsbug newcomment cc-mode cc-fonts cc-menus
cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs
find-func warnings byte-opt bytecomp byte-compile cus-start
cus-load tar-mode log-edit pcvs-util ispell lookup-entry
lookup-content lookup-vse ndtp lookup lookup-types
lookup-utils lookup-vars evi evi-mule info pp add-log
make-mode vc vc-dispatcher diff-mode diff dabbrev help-fns
jka-compr apropos compile parse-time vc-cvs thingatpt
browse-url multi-isearch rmailmm gnus-msg gnus-art mm-uu
mml2015 epg-config mm-view smime mel mime-def alist mcharset
mcs-20 mcs-e20 path-util apel-ver product gnus-sum nnoo
gnus-group gnus-undo nnmail mail-source format-spec
gnus-start gnus-spec gnus-int gnus-range gnus-win gnus
gnus-ems sort etags supercite easy-mmode regi mail-extr
message ecomplete rfc822 mml mml-sec password-cache
mm-decode mm-bodies mm-encode mailcap mail-parse rfc2231
mailabbrev nnheader gnus-util netrc gmm-utils wid-edit
mailheader canlock sha1 hex-util hashcash help-mode easymenu
view shell comint ring rmailkwd time sendmail regexp-opt
rmail-sa rmailsum rmail mail-utils rfc2047 rfc2045
ietf-drums time-date qp mm-util mail-prsvr japan-util
tooltip ediff-hook vc-hooks lisp-float-type mwheel x-win
x-dnd font-setting tool-bar dnd fontset image fringe
lisp-mode register page menu-bar rfn-eshadow timer select
scroll-bar mldrag 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 loaddefs button minibuffer faces cus-face
text-properties overlay md5 base64 format env code-pages
mule custom widget hashtable-print-readable backquote
make-network-process dbusbind font-render-setting gtk
x-toolkit x multi-tty emacs)