for(Sig n: ((SubsetSig)oldS).parents) {
Sig parentAST = u.getRawSIG(n.pos, n.label);
if (parentAST==null) throw new ErrorSyntax(n.pos, "The sig \""+n.label+"\" cannot be found.");
parents.add(resolveSig(res, topo, parentAST));
}
realSig = new SubsetSig(fullname, parents, oldS.attributes.toArray(new Attr[0]));
} else {
Sig sup = ((PrimSig)oldS).parent;
Sig parentAST = u.getRawSIG(sup.pos, sup.label);
if (parentAST==null) throw new ErrorSyntax(sup.pos, "The sig \""+sup.label+"\" cannot be found.");
Sig parent = resolveSig(res, topo, parentAST);