diff options
Diffstat (limited to 'ecomp-c/asm-i386.c')
-rw-r--r-- | ecomp-c/asm-i386.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/ecomp-c/asm-i386.c b/ecomp-c/asm-i386.c index 431ed52..fc91130 100644 --- a/ecomp-c/asm-i386.c +++ b/ecomp-c/asm-i386.c @@ -70,8 +70,8 @@ enum { }; static int DEBUG_GETCHAR = 0; -static int DEBUG_SCANNER = 0; -static int DEBUG_PARSER = 0; +static int DEBUG_SCANNER = 1; +static int DEBUG_PARSER = 1; /* scanner */ @@ -88,6 +88,8 @@ typedef enum { S_comma, S_lbrak, S_rbrak, + S_plus, + S_minus, S_eof } S_Symbol; @@ -104,6 +106,8 @@ static char *symname[S_eof+1] = { ",", "[", "]", + "+", + "-", "eof" }; @@ -385,6 +389,12 @@ static S_Symbol getSym( void ) number( ); s = S_number; break; + case '-': + s = S_minus; + break; + case '+': + s = S_plus; + break; case 'f': identifier( ); if( strcmp( ident, "format" ) == 0 ) { |