summaryrefslogtreecommitdiff
path: root/labels.c
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2002-04-30 20:58:18 +0000
committerH. Peter Anvin <hpa@zytor.com>2002-04-30 20:58:18 +0000
commit41bf8002b2fa402bd344a290fcc9f65de328859c (patch)
treefa1638dfbf73e3a6b96ce99cda1cd5ad9c1adf61 /labels.c
parentef7468f4ec05f23e8d866493593d7c1f07df5e03 (diff)
downloadnasm-41bf8002b2fa402bd344a290fcc9f65de328859c.tar.gz
Diffstat (limited to 'labels.c')
-rw-r--r--labels.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/labels.c b/labels.c
index dc7e0759..6259986a 100644
--- a/labels.c
+++ b/labels.c
@@ -215,12 +215,14 @@ void define_label (char *label, long segment, long offset, char *special,
lptr->defn.offset = offset;
lptr->defn.is_norm = (label[0] != '.' && is_norm);
- ofmt->symdef (lptr->defn.label, segment, offset,
- !!(lptr->defn.is_global & GLOBAL_BIT),
- special ? special : lptr->defn.special);
- ofmt->current_dfmt->debug_deflabel (label, segment, offset,
- !!(lptr->defn.is_global & GLOBAL_BIT),
- special ? special : lptr->defn.special);
+ if ( (lptr->defn.is_global & (GLOBAL_BIT|EXTERN_BIT)) != EXTERN_BIT ) {
+ ofmt->symdef (lptr->defn.label, segment, offset,
+ !!(lptr->defn.is_global & GLOBAL_BIT),
+ special ? special : lptr->defn.special);
+ ofmt->current_dfmt->debug_deflabel (label, segment, offset,
+ !!(lptr->defn.is_global & GLOBAL_BIT),
+ special ? special : lptr->defn.special);
+ }
}
void define_common (char *label, long segment, long size, char *special,