diff src/lwasm.c @ 92:ea2cfebef5d0

Make external symbols remain unresolved in expressions and also flag them in the symbol list
author lost
date Sat, 17 Jan 2009 06:11:40 +0000
parents e12edcfbebd5
children 34ca1c6e9550
line wrap: on
line diff
--- a/src/lwasm.c	Sat Jan 17 05:56:40 2009 +0000
+++ b/src/lwasm.c	Sat Jan 17 06:11:40 2009 +0000
@@ -220,6 +220,11 @@
 		register_error(st -> as, st -> l, 2, "Undefined symbol '%s'", sym);
 		return NULL;
 	}
+	// external reference - can not resolve it
+	if (se -> flags & SYMBOL_EXTERN)
+	{
+		return NULL;
+	}
 	if (st -> as -> outformat != OUTPUT_OBJ || se -> sect == NULL || se -> sect == st -> as -> csect)
 	{
 		// global symbol, intrasegment reference, or not an object target