]> git.sur5r.net Git - cc65/commitdiff
Fixed how ca65's CONDES-type pseudo-instructions save line numbers (for error messages). 257/head
authorGreg King <gregdk@users.sf.net>
Fri, 15 Jan 2016 22:18:09 +0000 (17:18 -0500)
committerGreg King <gregdk@users.sf.net>
Fri, 15 Jan 2016 22:18:09 +0000 (17:18 -0500)
src/ca65/symentry.c

index f1459dca079e740f7f6df332cb021b4fb2c19af2..06c537cf694decd9309c41311f55852d13800d4e 100644 (file)
@@ -570,8 +570,8 @@ void SymConDes (SymEntry* S, unsigned char AddrSize, unsigned Type, unsigned Pri
         }
     }
 
-    /* If the symbol was already declared as a condes, check if the new
-    ** priority value is the same as the old one.
+    /* If the symbol already was declared as a condes of this type,
+    ** check if the new priority value is the same as the old one.
     */
     if (S->ConDesPrio[Type] != CD_PRIO_NONE) {
         if (S->ConDesPrio[Type] != Prio) {
@@ -583,10 +583,8 @@ void SymConDes (SymEntry* S, unsigned char AddrSize, unsigned Type, unsigned Pri
     /* Set the symbol data */
     S->Flags |= (SF_EXPORT | SF_REFERENCED);
 
-    /* In case we have no line info for the definition, record it now */
-    if (CollCount (&S->DefLines) == 0) {
-        GetFullLineInfo (&S->DefLines);
-    }
+    /* Remember the line info for this reference */
+    CollAppend (&S->RefLines, GetAsmLineInfo ());
 }