diff --git a/src/ca65/symentry.c b/src/ca65/symentry.c index f716e3288..dc56b7ba5 100644 --- a/src/ca65/symentry.c +++ b/src/ca65/symentry.c @@ -157,7 +157,12 @@ void SymDef (SymEntry* S, ExprNode* Expr, unsigned char AddrSize, unsigned Flags /* Map a default address size to a real value */ if (AddrSize == ADDR_SIZE_DEFAULT) { - AddrSize = SymAddrSize (S); + long Val; + if (IsConstExpr (Expr, &Val) && IsByteRange (Val)) { + AddrSize = ADDR_SIZE_ZP; + } else { + AddrSize = SymAddrSize (S); + } } /* Set the symbol value */