Mercurial > repos > simple16
diff src/asm.c @ 12:d4112095b93f
Allow negative decimal literals
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Sun, 27 Mar 2016 21:07:41 -0700 |
parents | 9f575f77a157 |
children | fb14515266f4 |
line wrap: on
line diff
--- a/src/asm.c Sun Mar 27 17:36:02 2016 -0700 +++ b/src/asm.c Sun Mar 27 21:07:41 2016 -0700 @@ -204,7 +204,7 @@ //TODO: actual error checking if (arg[0] == '$' || (arg[0] == '0' && arg[1] == 'x')) { value = strtol(arg[0] == '$' ? arg+1 : arg+2, NULL, 16); - } else if (arg[0] >= '0' && arg[0] <= '9') { + } else if (arg[0] >= '0' && arg[0] <= '9' || arg[0] == '-') { value = strtol(arg, NULL, 10); } else if (arg[0] == '"') { if (arg[1] == '"') { @@ -322,7 +322,7 @@ //TODO: actual error checking if (arg[0] == '$' || (arg[0] == '0' && arg[1] == 'x')) { value = strtol(arg[0] == '$' ? arg+1 : arg+2, NULL, 16); - } else if (arg[0] >= '0' && arg[0] <= '9') { + } else if (arg[0] >= '0' && arg[0] <= '9' || arg[0] == '-') { value = strtol(arg, NULL, 10); } else { label *l = find_label(meta, arg);