From f3f8537cfa05414ad14494e809d9ebfeef86ebbc Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Tue, 7 Mar 2017 10:43:58 +0000 Subject: 40760: Always tokenize unquoted - to Dash. This fixes use of pattern match character ranges in unusual contexts. Attempt to detect a tokenized - in cases where we don't care. --- Src/math.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'Src/math.c') diff --git a/Src/math.c b/Src/math.c index f19c0ed61..f9613001a 100644 --- a/Src/math.c +++ b/Src/math.c @@ -463,7 +463,7 @@ lexconstant(void) char *nptr; nptr = ptr; - if (*nptr == '-') + if (IS_DASH(*nptr)) nptr++; if (*nptr == '0') { @@ -527,7 +527,7 @@ lexconstant(void) } if (*nptr == 'e' || *nptr == 'E') { nptr++; - if (*nptr == '+' || *nptr == '-') + if (*nptr == '+' || IS_DASH(*nptr)) nptr++; while (idigit(*nptr) || *nptr == '_') nptr++; @@ -599,7 +599,8 @@ zzlex(void) } return (unary) ? UPLUS : PLUS; case '-': - if (*ptr == '-') { + case Dash: + if (IS_DASH(*ptr)) { ptr++; return (unary) ? PREMINUS : POSTMINUS; } -- cgit v1.2.3