summaryrefslogtreecommitdiff
path: root/parser.c
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2002-05-22 20:45:09 +0000
committerH. Peter Anvin <hpa@zytor.com>2002-05-22 20:45:09 +0000
commit8c1da7b3cea0acbf138bd0f984cf4d14d94f69a1 (patch)
treeec5fb2331ba6b55fbc5a9a6b8cb8b15caece62c5 /parser.c
parentf1bbcf31600a0a691f9454803985a45eb4d4fd25 (diff)
downloadnasm-8c1da7b3cea0acbf138bd0f984cf4d14d94f69a1.tar.gz
nasm-8c1da7b3cea0acbf138bd0f984cf4d14d94f69a1.tar.bz2
nasm-8c1da7b3cea0acbf138bd0f984cf4d14d94f69a1.zip
Fix the handling of the STRICT keyword
Diffstat (limited to 'parser.c')
-rw-r--r--parser.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/parser.c b/parser.c
index 8891380..2c6df95 100644
--- a/parser.c
+++ b/parser.c
@@ -690,7 +690,8 @@ insn *parse_line (int pass, char *buffer, insn *result,
if (is_simple(value)) {
if (reloc_value(value)==1)
result->oprs[operand].type |= UNITY;
- if (optimizing>=0) {
+ if (optimizing>=0 &&
+ !(result->oprs[operand].type & STRICT)) {
if (reloc_value(value) >= -128 &&
reloc_value(value) <= 127)
result->oprs[operand].type |= SBYTE;