]> Shamusworld >> Repos - rmac/blobdiff - token.c
Fix for bug #71 (thanks to ggn for reporting! :-)
[rmac] / token.c
diff --git a/token.c b/token.c
index 66399d6c5078e49be637ce3cdc86b4eb4a868526..7bba1993fd815aa13befd0c80228063fcd07e0eb 100644 (file)
--- a/token.c
+++ b/token.c
@@ -24,7 +24,7 @@ int mjump_align = 0;          // mjump alignment flag
 char lntag;                                    // Line tag
 char * curfname;                       // Current filename
 char tolowertab[128];          // Uppercase ==> lowercase 
-char hextab[128];                      // Table of hex values
+int8_t hextab[128];                    // Table of hex values
 char dotxtab[128];                     // Table for ".b", ".s", etc.
 char irbuf[LNSIZ];                     // Text for .rept block line
 char lnbuf[LNSIZ];                     // Text of current line
@@ -1213,12 +1213,12 @@ if (debug) printf("TokenizeLine: Calling fpop() from SRC_IREPT...\n");
                                *p++ = EOS;
                                continue;
                        case '$':               // $, hex constant
-                               if ((int)chrtab[*ln] & HDIGIT)
+                               if (chrtab[*ln] & HDIGIT)
                                {
                                        v = 0;
 
                                        // Parse the hex value
-                                       while ((int)hextab[*ln] >= 0)
+                                       while (hextab[*ln] >= 0)
                                                v = (v << 4) + (int)hextab[*ln++];
 
                                        // ggn: Okay, some comments here are in order I think....