summaryrefslogtreecommitdiff
path: root/ecomp-c/asm-i386.c
diff options
context:
space:
mode:
Diffstat (limited to 'ecomp-c/asm-i386.c')
-rw-r--r--ecomp-c/asm-i386.c14
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 ) {