Merge branch 'ZackerySpytz-valid-floating-point-literals'

* ZackerySpytz-valid-floating-point-literals:
  Fix some rejections of valid floating-point literals
This commit is contained in:
William S Fulton 2019-03-02 17:48:49 +00:00
commit 195226873e
3 changed files with 13 additions and 0 deletions

View file

@ -50,6 +50,9 @@ Version 4.0.0 (in progress)
2019-02-21: wsfulton
#1240 Suppress Java 9 deprecation warnings on finalize method.
2019-02-21: ZackerySpytz
#1480 Fix some rejections of valid floating-point literals.
2019-02-19: wsfulton
#1475 Fix regression parsing gcc preprocessor linemarkers in the form:

View file

@ -630,6 +630,10 @@ macro(size_t, pfx, sizet)
float val_float(float x) {
return x;
}
float val_float_3(float f = 0e1f, float f2 = 020e0f, float f3 = 0.3e4f) {
return f + f2 + f3;
}
%}

View file

@ -1160,6 +1160,8 @@ static int look(Scanner *s) {
return SWIG_TOKEN_INT;
if (isdigit(c))
state = 84;
else if ((c == 'e') || (c == 'E'))
state = 82;
else if ((c == 'x') || (c == 'X'))
state = 85;
else if ((c == 'b') || (c == 'B'))
@ -1181,6 +1183,10 @@ static int look(Scanner *s) {
return SWIG_TOKEN_INT;
if (isdigit(c))
state = 84;
else if (c == '.')
state = 81;
else if ((c == 'e') || (c == 'E'))
state = 82;
else if ((c == 'l') || (c == 'L')) {
state = 87;
} else if ((c == 'u') || (c == 'U')) {