Fix quick-calc in C mode with hex values

* lisp/calc/calc-aent.el (math-read-token): Make sure the match
against "0[xX][0-9a-fA-F]+" is found at math-exp-pos.  See
http://lists.gnu.org/archive/html/emacs-devel/2017-11/msg00174.html
for the details.

Copyright-paperwork-exempt: yes
This commit is contained in:
OGAWA Hirofumi 2017-11-18 12:29:41 +02:00 committed by Eli Zaretskii
parent 3e80124098
commit 29520b083f

View file

@ -728,7 +728,9 @@ in Calc algebraic input.")
math-exp-str (1- math-exp-pos))
(1- math-exp-pos))))))
(or (and (memq calc-language calc-lang-c-type-hex)
(string-match "0[xX][0-9a-fA-F]+" math-exp-str math-exp-pos))
(eq (string-match "0[xX][0-9a-fA-F]+" math-exp-str
math-exp-pos)
math-exp-pos))
(string-match "_?\\([0-9]+.?0*@ *\\)?\\([0-9]+.?0*' *\\)?\\(0*\\([2-9]\\|1[0-4]\\)\\(#[#]?\\|\\^\\^\\)[0-9a-dA-D.]+[eE][-+_]?[0-9]+\\|0*\\([2-9]\\|[0-2][0-9]\\|3[0-6]\\)\\(#[#]?\\|\\^\\^\\)[0-9a-zA-Zα-ωΑ-Ω:.]+\\|[0-9]+:[0-9:]+\\|[0-9.]+\\([eE][-+_]?[0-9]+\\)?\"?\\)?"
math-exp-str math-exp-pos))
(setq math-exp-token 'number