Subject: bug#23705: 25.0.94; Upper-case abbrev expansion doesn't work with subword-mode enabled

From: Eli Zaretskii <[email-masked]>
Date: Wed, 08 Jun 2016 05:40:20 +0300

> From: Glenn Morris <[email-masked]>
> Date: Tue, 07 Jun 2016 17:51:35 -0400
> Cc: [email-masked]
> 
> Arash wrote:
> 
> > If I evalulate this in `emacs -Q' with subword-mode enabled, 8G won't expand:
> >
> > (define-abbrev-table 'c++-mode-abbrev-table
> >   '(("8g" "struct" nil 0)
> >     ("8G" "class" nil 0)))
> 
> Ref http://debbugs.gnu.org/17558#25
> 
> "Someone" needs to change instances of -word in abbrev.el to -word-strictly.
> Perhaps just abbrev--before-point is enough. But who knows.

Actually, I don't think this is a bug.  In subword-mode, "8G" is 2
words.  At the time, I deliberately left abbrevs out of the
*-word-strictly conversion, since I believe users of this mode should
be able to expand sub-words.

So I think the OP needs to change the abbrevs in use to not bump into
this contradiction.