summaryrefslogtreecommitdiff
path: root/labels.c
diff options
context:
space:
mode:
authorCharles Crayne <chuck@thor.crayne.org>2008-06-04 15:53:21 -0700
committerCharles Crayne <chuck@thor.crayne.org>2008-06-04 15:53:21 -0700
commitcd3418016a2ff6e6de2c4d1c36d9ed8c489eceb2 (patch)
treed01e527faa6e321a5a5d1ca41cb43bdd9ccc55db /labels.c
parent88c9e1f88cd1e67ad4fb2834f3cad6160d5a3fbb (diff)
downloadnasm-cd3418016a2ff6e6de2c4d1c36d9ed8c489eceb2.tar.gz
nasm-cd3418016a2ff6e6de2c4d1c36d9ed8c489eceb2.tar.bz2
nasm-cd3418016a2ff6e6de2c4d1c36d9ed8c489eceb2.zip
Remove EQU for critical expression list
Allow redefine_label to update segment as well as offset, thereby fixing bug which required EQU to be on the critical expression list.
Diffstat (limited to 'labels.c')
-rw-r--r--labels.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/labels.c b/labels.c
index 8376b79..068d758 100644
--- a/labels.c
+++ b/labels.c
@@ -187,7 +187,6 @@ void redefine_label(char *label, int32_t segment, int64_t offset, char *special,
* are even possible, nor whether they are checked somewhere else
*/
- (void)segment; /* Don't warn that this parameter is unused */
(void)special; /* Don't warn that this parameter is unused */
(void)is_norm; /* Don't warn that this parameter is unused */
(void)isextrn; /* Don't warn that this parameter is unused */
@@ -212,6 +211,7 @@ void redefine_label(char *label, int32_t segment, int64_t offset, char *special,
global_offset_changed |= (lptr->defn.offset != offset);
lptr->defn.offset = offset;
+ lptr->defn.segment = segment;
if (pass0 == 1) {
exi = !!(lptr->defn.is_global & GLOBAL_BIT);