Subject: bug#39277: 26.3; Tcl font lock does not understand quoting

From: Hadrien Lacour <[email-masked]>
Date: Sat, 25 Jan 2020 11:00:09 +0100

Hello, tcl-mode's font lock (highlighting) chokes on this simple case:
    puts {"hello}
where it considers the double quote inside the curly braces as a
"quoting" character.
I have confirmed it works with `emacs -Q`.

In GNU Emacs 26.3 (build 1, x86_64-pc-linux-gnu, X toolkit)
 of 2019-09-23 built on gentoo-zen2700x
Windowing system distributor 'The X.Org Foundation', version 11.0.12006000
System Description:	Gentoo Base System release 2.6

Recent messages:
Applying X config
For information about GNU Emacs and the GNU system, type C-h C-a.
Making completion list...

Configured using:
 'configure --prefix=/usr --build=x86_64-pc-linux-gnu
 --host=x86_64-pc-linux-gnu --mandir=/usr/share/man
 --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc
 --localstatedir=/var/lib --disable-silent-rules
 --docdir=/usr/share/doc/emacs-26.3-r1
 --htmldir=/usr/share/doc/emacs-26.3-r1/html --libdir=/usr/lib64
 --program-suffix=-emacs-26 --includedir=/usr/include/emacs-26
 --infodir=/usr/share/info/emacs-26 --localstatedir=/var
 --enable-locallisppath=/etc/emacs:/usr/share/emacs/site-lisp
 --without-compress-install --without-hesiod --without-pop
 --with-file-notification=inotify --enable-acl --without-dbus
 --without-modules --without-gameuser --without-gpm --without-kerberos
 --without-kerberos5 --without-lcms2 --without-xml2 --without-mailutils
 --without-selinux --with-gnutls --without-libsystemd --with-threads
 --without-wide-int --with-zlib --with-sound=no --with-x --without-ns
 --without-gconf --without-gsettings --without-toolkit-scroll-bars
 --without-gif --without-jpeg --without-png --without-rsvg
 --without-tiff --with-xpm --without-imagemagick --with-xft
 --without-cairo --without-libotf --without-m17n-flt
 --with-x-toolkit=lucid --without-xaw3d 'CFLAGS=-march=native -pipe -O2'
 CPPFLAGS= 'LDFLAGS=-Wl,-O1 -Wl,--as-needed''

Configured features:
XPM NOTIFY ACL GNUTLS FREETYPE XFT ZLIB LUCID X11 XDBE XIM THREADS

Important settings:
  value of $LANG: en_US.utf8
  locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
  diff-auto-refine-mode: t
  linum-mode: t
  electric-pair-mode: t
  savehist-mode: t
  global-whitespace-mode: t
  show-paren-mode: t
  company-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t
  hs-minor-mode: t

Load-path shadows:
/home/hadrien/.emacs.d/elpa/flymake-1.0.8/flymake hides /usr/share/emacs/26.3/lisp/progmodes/flymake

Features:
(shadow sort vc-mtn vc-hg vc-git diff-mode easy-mmode vc-bzr vc-src
vc-sccs vc-svn vc-cvs vc-rcs vc vc-dispatcher mail-extr emacsbug message
rmc puny dired dired-loaddefs format-spec rfc822 mml mml-sec epa derived
epg gnus-util rmail rmail-loaddefs mm-decode mm-bodies mm-encode
mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047
rfc2045 ietf-drums mm-util mail-prsvr mail-utils company-oddmuse
company-keywords company-etags etags company-gtags company-dabbrev-code
company-dabbrev company-files company-capf company-cmake company-xcode
company-clang company-semantic company-eclim company-template
company-bbdb linum hideshow elec-pair savehist whitespace cc-styles
cc-align cc-engine cc-vars cc-defs paren eglot array filenotify jsonrpc
ert pp find-func ewoc debug xref flymake-proc flymake thingatpt warnings
compile comint ansi-color ring url-util project json map company edmacro
kmacro pcase deeper-blue-theme finder-inf info tex-site package easymenu
epg-config url-handlers url-parse auth-source cl-seq eieio eieio-core
cl-macs eieio-loaddefs password-cache url-vars seq byte-opt gv bytecomp
byte-compile cconv cl-loaddefs cl-lib site-gentoo time-date mule-util
tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type
mwheel term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image
regexp-opt fringe tabulated-list replace newcomment text-mode elisp-mode
lisp-mode prog-mode register page menu-bar rfn-eshadow isearch timer
select scroll-bar 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 threads inotify dynamic-setting font-render-setting x-toolkit
x multi-tty make-network-process emacs)

Memory information:
((conses 16 341610 9384)
 (symbols 48 32614 9)
 (miscs 40 93 178)
 (strings 32 113853 2521)
 (string-bytes 1 2844540)
 (vectors 16 33288)
 (vector-slots 8 769217 11356)
 (floats 8 92 262)
 (intervals 56 333 0)
 (buffers 992 12))