summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--output/outmac64.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/output/outmac64.c b/output/outmac64.c
index 44dcf0c7..fbbea063 100644
--- a/output/outmac64.c
+++ b/output/outmac64.c
@@ -304,12 +304,16 @@ static struct symbol *get_closest_section_symbol_by_offset(uint8_t fileindex, in
for (sym = syms; sym; sym = sym->next) {
if ((sym->sect != NO_SECT) && (sym->sect == fileindex)) {
- if ((int64_t)sym->value > offset)
+ if ((int64_t)sym->value >= offset)
break;
nearest = sym;
}
}
+ if (!nearest)
+ nasm_error(ERR_FATAL, "No section for index %x offset %llx found\n",
+ fileindex, (long long)offset);
+
return nearest;
}