]> git.sur5r.net Git - cc65/commitdiff
Read Sections before Scopes, because the later will reference the former.
authoruz <uz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Thu, 4 Aug 2011 13:20:45 +0000 (13:20 +0000)
committeruz <uz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Thu, 4 Aug 2011 13:20:45 +0000 (13:20 +0000)
git-svn-id: svn://svn.cc65.org/cc65/trunk@5116 b7a2c559-68d2-44c3-8de9-860c34a00d81

src/ld65/library.c

index 9047f3e83ef56a84593dd3fdfd84d7baee2f3510..e9ac7b93baa7e28c70331a68d058582790ae540e 100644 (file)
@@ -381,15 +381,17 @@ static void LibResolve (void)
                 /* Read the assertions from the object file */
                 ObjReadAssertions (L->F, O->Start + O->Header.AssertOffs, O);
 
-                /* Read the scope table from the object file */
-                ObjReadScopes (L->F, O->Start + O->Header.ScopeOffs, O);
-
                 /* Seek to the start of the segment list and read the segments.
-                 * This must be last, since the data here may reference other
+                 * This must be late, since the data here may reference other
                  * stuff.
                  */
                 ObjReadSections (L->F, O->Start + O->Header.SegOffs, O);
 
+                /* Read the scope table from the object file. Scopes reference 
+                 * segments, so we must read them after the sections.
+                 */
+                ObjReadScopes (L->F, O->Start + O->Header.ScopeOffs, O);
+
                 /* All references to strings are now resolved, so we can delete
                  * the module string pool.
                  */