Add char *lineinfo to parameters of fcn insert_new_line
This commit is contained in:
parent
55aee45955
commit
9c21a1fe9e
|
|
@ -16,7 +16,7 @@ void inp_probe(struct card* card);
|
|||
void modprobenames(INPtables* tab);
|
||||
|
||||
extern struct card* insert_new_line(
|
||||
struct card* card, char* line, int linenum, int linenum_orig);
|
||||
struct card* card, char* line, int linenum, int linenum_orig, char *lineinfo);
|
||||
extern int get_number_terminals(char* c);
|
||||
extern char* search_plain_identifier(char* str, const char* identifier);
|
||||
|
||||
|
|
@ -90,7 +90,7 @@ void inp_probe(struct card* deck)
|
|||
|
||||
if (!havesave) {
|
||||
char* vline = copy(".save all");
|
||||
deck = insert_new_line(deck, vline, 0, 0);
|
||||
deck = insert_new_line(deck, vline, 0, deck->linenum_orig, deck->linesource);
|
||||
}
|
||||
|
||||
/* set a variable if .probe command is given */
|
||||
|
|
@ -284,7 +284,7 @@ void inp_probe(struct card* deck)
|
|||
tfree(card->line);
|
||||
card->line = newline;
|
||||
|
||||
card = insert_new_line(card, vline, 0, card->linenum_orig);
|
||||
card = insert_new_line(card, vline, 0, card->linenum_orig, card->linesource);
|
||||
|
||||
tfree(strnode1);
|
||||
tfree(strnode2);
|
||||
|
|
@ -320,11 +320,11 @@ void inp_probe(struct card* deck)
|
|||
continue;
|
||||
}
|
||||
char* vline = tprintf("vcurr_%s:%s:%s_%s %s %s 0", instname, nodename, thisnode, nodebuf, thisnode, newnode);
|
||||
card = insert_new_line(card, vline, 0, card->linenum_orig);
|
||||
card = insert_new_line(card, vline, 0, card->linenum_orig, card->linesource);
|
||||
/* special for KiCad: add shunt resistor if thisnode contains 'unconnected' */
|
||||
if (*instname == 'x' && strstr(thisnode, "unconnected")) {
|
||||
char *rline = tprintf("R%s %s 0 1e15", thisnode, thisnode);
|
||||
card = insert_new_line(card, rline, 0, card->linenum_orig);
|
||||
card = insert_new_line(card, rline, 0, card->linenum_orig, card->linesource);
|
||||
}
|
||||
char* nodesaves = tprintf("%s:%s#branch", instname, nodename);
|
||||
allsaves = wl_cons(nodesaves, allsaves);
|
||||
|
|
@ -342,7 +342,7 @@ void inp_probe(struct card* deck)
|
|||
char* newline = wl_flatten(allsaves);
|
||||
wl_free(allsaves);
|
||||
allsaves = NULL;
|
||||
card = insert_new_line(card, newline, 0, card->linenum_orig);
|
||||
card = insert_new_line(card, newline, 0, card->linenum_orig, card->linesource);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -396,7 +396,7 @@ void inp_probe(struct card* deck)
|
|||
tfree(strnode1);
|
||||
tfree(strnode2);
|
||||
tmpcard1 = deck->nextcard;
|
||||
tmpcard1 = insert_new_line(tmpcard1, newline, 0, card->linenum_orig);
|
||||
tmpcard1 = insert_new_line(tmpcard1, newline, 0, card->linenum_orig, card->linesource);
|
||||
}
|
||||
continue;
|
||||
}
|
||||
|
|
@ -431,7 +431,7 @@ void inp_probe(struct card* deck)
|
|||
allsaves = wl_cons(nodesaves, allsaves);
|
||||
tfree(strnode1);
|
||||
tfree(strnode2);
|
||||
tmpcard1 = insert_new_line(tmpcard1, newline, 0, card->linenum_orig);
|
||||
tmpcard1 = insert_new_line(tmpcard1, newline, 0, card->linenum_orig, card->linesource);
|
||||
continue;
|
||||
}
|
||||
/* node containing ':'
|
||||
|
|
@ -584,7 +584,7 @@ void inp_probe(struct card* deck)
|
|||
char *newline = tprintf("Ediff%d_%s_%s vd_%s:%s_%s:%s 0 %s %s 1", ee, instname1, instname2, instname1, nodename1, instname2, nodename2, strnode1, strnode2);
|
||||
char* nodesaves = tprintf("vd_%s:%s_%s:%s", instname1, nodename1, instname2, nodename2);
|
||||
allsaves = wl_cons(nodesaves, allsaves);
|
||||
tmpcard1 = insert_new_line(tmpcard1, newline, 0, card->linenum_orig);
|
||||
tmpcard1 = insert_new_line(tmpcard1, newline, 0, card->linenum_orig, card->linesource);
|
||||
tfree(strnode1);
|
||||
tfree(strnode2);
|
||||
tfree(nodename1);
|
||||
|
|
@ -706,7 +706,7 @@ void inp_probe(struct card* deck)
|
|||
char* newline = tprintf("Ediff%d_%s vd_%s:%s:%s 0 %s %s 1", ee, instname1, instname1, nodename1, nodename2, strnode1, strnode2);
|
||||
char* nodesaves = tprintf("vd_%s:%s:%s", instname1, nodename1, nodename2);
|
||||
allsaves = wl_cons(nodesaves, allsaves);
|
||||
tmpcard1 = insert_new_line(tmpcard1, newline, 0, card->linenum_orig);
|
||||
tmpcard1 = insert_new_line(tmpcard1, newline, 0, card->linenum_orig, card->linesource);
|
||||
tfree(strnode1);
|
||||
tfree(strnode2);
|
||||
tfree(nodename1);
|
||||
|
|
@ -791,7 +791,7 @@ void inp_probe(struct card* deck)
|
|||
tfree(tmpcard->line);
|
||||
tmpcard->line = newline;
|
||||
|
||||
tmpcard = insert_new_line(tmpcard, vline, 0, card->linenum_orig);
|
||||
tmpcard = insert_new_line(tmpcard, vline, 0, card->linenum_orig, card->linesource);
|
||||
|
||||
tfree(strnode2);
|
||||
tfree(newnode);
|
||||
|
|
@ -846,7 +846,7 @@ void inp_probe(struct card* deck)
|
|||
tfree(tmpcard->line);
|
||||
tmpcard->line = newline;
|
||||
|
||||
tmpcard = insert_new_line(tmpcard, vline, 0, card->linenum_orig);
|
||||
tmpcard = insert_new_line(tmpcard, vline, 0, card->linenum_orig, card->linesource);
|
||||
|
||||
char* nodesaves = tprintf("%s:%s#branch", instname, nodename1);
|
||||
allsaves = wl_cons(nodesaves, allsaves);
|
||||
|
|
@ -911,7 +911,7 @@ void inp_probe(struct card* deck)
|
|||
wl_free(allsaves);
|
||||
allsaves = NULL;
|
||||
card = deck->nextcard;
|
||||
card = insert_new_line(card, newline, 0, card->linenum_orig);
|
||||
card = insert_new_line(card, newline, 0, card->linenum_orig, card->linesource);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -1379,7 +1379,7 @@ static int setallvsources(struct card *tmpcard, NGHASHPTR instances, char *instn
|
|||
|
||||
card = tmpcard->nextcard;
|
||||
|
||||
card = insert_new_line(card, vline, 0, card->linenum_orig);
|
||||
card = insert_new_line(card, vline, 0, card->linenum_orig, card->linesource);
|
||||
|
||||
if (power) {
|
||||
/* For example V(1)+V(2)+V(3)*/
|
||||
|
|
@ -1422,14 +1422,14 @@ static int setallvsources(struct card *tmpcard, NGHASHPTR instances, char *instn
|
|||
wl_free(allsaves);
|
||||
allsaves = NULL;
|
||||
card = tmpcard->nextcard;
|
||||
card = insert_new_line(card, newsaveline, 0, card->linenum_orig);
|
||||
card = insert_new_line(card, newsaveline, 0, card->linenum_orig, card->linesource);
|
||||
}
|
||||
|
||||
if (power) {
|
||||
cadd(&BVrefline, ')');
|
||||
card = tmpcard->nextcard;
|
||||
card = insert_new_line(card, copy(ds_get_buf(&BVrefline)), 0, card->linenum_orig);
|
||||
card = insert_new_line(card, copy(ds_get_buf(&Bpowerline)), 0, card->linenum_orig);
|
||||
card = insert_new_line(card, copy(ds_get_buf(&BVrefline)), 0, card->linenum_orig, card->linesource);
|
||||
card = insert_new_line(card, copy(ds_get_buf(&Bpowerline)), 0, card->linenum_orig, card->linesource);
|
||||
}
|
||||
|
||||
ds_free(&BVrefline);
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@
|
|||
#include "ngspice/hash.h"
|
||||
|
||||
extern struct card* insert_new_line(
|
||||
struct card* card, char* line, int linenum, int linenum_orig);
|
||||
struct card* card, char* line, int linenum, int linenum_orig, char *lineinfo);
|
||||
|
||||
/* device types */
|
||||
#define D_AND 0
|
||||
|
|
@ -845,13 +845,13 @@ struct card *replacement_udevice_cards(void)
|
|||
new_str = copy(x->translated);
|
||||
if (count == 0) {
|
||||
count++;
|
||||
newcard = insert_new_line(NULL, new_str, 0, 0);
|
||||
newcard = insert_new_line(NULL, new_str, 0, 0, NULL);
|
||||
} else if (count == 1) {
|
||||
count++;
|
||||
nextcard = insert_new_line(newcard, new_str, 0, 0);
|
||||
nextcard = insert_new_line(newcard, new_str, 0, 0, NULL);
|
||||
} else {
|
||||
count++;
|
||||
nextcard = insert_new_line(nextcard, new_str, 0, 0);
|
||||
nextcard = insert_new_line(nextcard, new_str, 0, 0, NULL);
|
||||
}
|
||||
}
|
||||
if (current_subckt && (ps_ports_and_pins & 2)) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue