From 9c21a1fe9eb0bf2e96c0dff572a416e0a723b38b Mon Sep 17 00:00:00 2001 From: Holger Vogt Date: Fri, 26 Apr 2024 16:45:34 +0200 Subject: [PATCH] Add char *lineinfo to parameters of fcn insert_new_line --- src/frontend/inpc_probe.c | 34 +++++++++++++++++----------------- src/frontend/udevices.c | 8 ++++---- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/src/frontend/inpc_probe.c b/src/frontend/inpc_probe.c index d72300fe8..98e8aeb51 100644 --- a/src/frontend/inpc_probe.c +++ b/src/frontend/inpc_probe.c @@ -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); diff --git a/src/frontend/udevices.c b/src/frontend/udevices.c index b7437f45e..b4018fe12 100644 --- a/src/frontend/udevices.c +++ b/src/frontend/udevices.c @@ -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)) {