1 |
|
Sun Mar 6 17:07:20 2005 Ben Pfaff <blp@gnu.org> |
2 |
|
|
3 |
|
When the lexer sees something like `-5' in the input, it has to |
4 |
|
decide whether it's a negative numeric constant token or a '-' |
5 |
|
token followed by a positive numeric constant token. It always |
6 |
|
decides on the former, and then the parser can call |
7 |
|
lex_negative_to_dash() if it wants the latter. However, this |
8 |
|
doesn't work for the case of `-0', because negative zero is |
9 |
|
(portably) indistinguishable from positive zero. So now we divide |
10 |
|
T_NUM into two tokens, T_POS_NUM and T_NEG_NUM, to make the |
11 |
|
distinction clear. This requires a little bit of extra effort, |
12 |
|
because there were several references to T_NUM in the code base. |
13 |
|
|
14 |
|
* lexer.c: (lex_get) Use T_NEG_NUM and T_POS_NUM to distinguish |
15 |
|
positive and negative numeric constants. |
16 |
|
(lex_double_p) Renamed lex_is_number(). Changed return type to |
17 |
|
bool. Updated all relevant references to T_NUM to instead use |
18 |
|
this function. |
19 |
|
(lex_double) Renamed lex_number(). All references updated. |
20 |
|
(lex_integer_p) Renamed lex_is_integer(). Changed return type to |
21 |
|
bool. All references updated. |
22 |
|
(lex_token_representation) Understand T_NEG_NUM and T_POS_NUM. |
23 |
|
(lex_negative_to_dash) Ditto. |
24 |
|
(dump_token) Ditto. |
25 |
|
|
26 |
|
* lexer.h: (enum) Add T_POS_NUM, T_NEG_NUM. Remove T_NUM. |
27 |
|
|
28 |
Thu Mar 3 22:08:35 WST 2005 John Darrington <john@darrington.wattle.id.au> |
Thu Mar 3 22:08:35 WST 2005 John Darrington <john@darrington.wattle.id.au> |
29 |
|
|
30 |
* Makefile.am : Fixed up CLEANFILES target. |
* Makefile.am : Fixed up CLEANFILES target. |