} else {
// For some strange reason, solitary ; in a type body are represented not as JCSkips, but as JCBlocks with no endpos. Don't ask me why!
if (b.rawContents().isEmpty() && node.endpos == -1) {
n = setPos(node, new EmptyDeclaration());
} else {
n = setPos(node, new InstanceInitializer().astBody(b));
}
}
} else {
n = b;
}