]> Shamusworld >> Repos - rmac/blobdiff - expr.c
Long forgotten helper script which is used to create tables for VS builds
[rmac] / expr.c
diff --git a/expr.c b/expr.c
index 6db7435dd205546e0afc4d25c3e018fcb1077301..ebb17b86d5b7033d04b98b7b5568adfd9379f5c5 100644 (file)
--- a/expr.c
+++ b/expr.c
@@ -1,7 +1,7 @@
 //
 // RMAC - Reboot's Macro Assembler for all Atari computers
 // EXPR.C - Expression Analyzer
-// Copyright (C) 199x Landon Dyer, 2011-2018 Reboot and Friends
+// Copyright (C) 199x Landon Dyer, 2011-2019 Reboot and Friends
 // RMAC derived from MADMAC v1.07 Written by Landon Dyer, 1986
 // Source utilised with the kind permission of Landon Dyer
 //
@@ -155,8 +155,16 @@ int expr1(void)
                switch (*tok++)
                {
                case CR_ABSCOUNT:
-                       *evalTokenBuffer.u32++ = CONST;
-                       *evalTokenBuffer.u64++ = (uint64_t)sect[ABS].sloc;
+                       if (cursect != ABS)
+                       {
+                               *evalTokenBuffer.u32++ = CONST;
+                               *evalTokenBuffer.u64++ = sect[ABS].sloc;
+                       }
+                       else
+                       {
+                               *evalTokenBuffer.u32++ = CONST;
+                               *evalTokenBuffer.u64++ = sloc;
+                       }
                        break;
                case CR_TIME:
                        *evalTokenBuffer.u32++ = CONST;