Skip to content

Commit

Permalink
Generate refs for orphan objects properly
Browse files Browse the repository at this point in the history
  • Loading branch information
CyberShadow committed Nov 5, 2010
1 parent b691796 commit b95f0ec
Showing 1 changed file with 6 additions and 2 deletions.
8 changes: 6 additions & 2 deletions disassembler.d
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,10 @@ final class RefBuilder : ASTraitsVisitor
{
foreach (i, ref v; as.scripts)
addMethod(v.sinit, "script" ~ .toString(i) ~ "_sinit");
foreach (vclass; as.orphanClasses)
addClass(vclass, "orphan");
foreach (method; as.orphanMethods)
addMethod(method, "orphan");
super.run();
}

Expand Down Expand Up @@ -257,9 +261,9 @@ final class RefBuilder : ASTraitsVisitor
return uniqueName;
}

void addClass(ASProgram.Class vclass)
void addClass(ASProgram.Class vclass, string field = null)
{
addObject(vclass, classByName, string.init);
addObject(vclass, classByName, field);
addMethod(vclass.cinit, "cinit");
addMethod(vclass.instance.iinit, "iinit");
}
Expand Down

0 comments on commit b95f0ec

Please sign in to comment.