subckt.c, finishLine(), #5/9, move/duplicate code behind if/else into the if/else

This commit is contained in:
rlar 2016-11-19 08:49:19 +01:00
parent 735e7700ce
commit ff4805c023
1 changed files with 20 additions and 2 deletions

View File

@ -1323,10 +1323,27 @@ finishLine(struct bxx_buffer *t, char *src, char *scname)
if ((which == 'v') || (which == 'V')) {
s = gettrans(buf, buf_end);
if (s) {
bxx_put_cstring(t, s);
} else {
/*
i(vname) -> i(v.subckt.vname)
i(ename) -> i(e.subckt.ename)
i(hname) -> i(h.subckt.hname)
i(bname) -> i(b.subckt.hname)
*/
if ((which == 'i' || which == 'I') &&
(buf[0] == 'v' || buf[0] == 'V' || buf[0] == 'e' || buf[0] == 'h'
|| buf[0] == 'b' || buf[0] == 'B')) {
bxx_putc(t, buf[0]);
bxx_putc(t, '.');
}
bxx_put_cstring(t, scname);
bxx_putc(t, '.');
bxx_put_substring(t, buf, buf_end);
}
} else {
s = NULL;
}
if (s) {
bxx_put_cstring(t, s);
} else {
@ -1346,6 +1363,7 @@ finishLine(struct bxx_buffer *t, char *src, char *scname)
bxx_putc(t, '.');
bxx_put_substring(t, buf, buf_end);
}
}
/* translate the reference node, as in the "2" in "v(4,2)" */