From b51f041b29aaac44f61d2ef2005e3874b65b682d Mon Sep 17 00:00:00 2001 From: Holger Vogt Date: Sat, 10 May 2025 20:15:31 +0200 Subject: [PATCH] Improve error message by adding the sourcing netlist line --- src/frontend/numparam/numparam.h | 1 + src/frontend/numparam/spicenum.c | 1 + src/frontend/numparam/xpressn.c | 11 +++++++---- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/frontend/numparam/numparam.h b/src/frontend/numparam/numparam.h index 148311149..fd8935d26 100644 --- a/src/frontend/numparam/numparam.h +++ b/src/frontend/numparam/numparam.h @@ -57,6 +57,7 @@ typedef struct { /* the input scanner data structure */ char *dyncategory; int hs_compatibility; /* allow extra keywords */ int linecount; /* number of lines in deck */ + char* cardline; /* line of card treated currently */ } dico_t; diff --git a/src/frontend/numparam/spicenum.c b/src/frontend/numparam/spicenum.c index 7832a37b7..7c38093c0 100644 --- a/src/frontend/numparam/spicenum.c +++ b/src/frontend/numparam/spicenum.c @@ -672,6 +672,7 @@ nupa_eval(struct card *card) dicoS->srcline = linenum; dicoS->oldline = orig_linenum; + dicoS->cardline = s; c = dicoS->dyncategory[linenum]; diff --git a/src/frontend/numparam/xpressn.c b/src/frontend/numparam/xpressn.c index f1e163ca3..13f08baae 100644 --- a/src/frontend/numparam/xpressn.c +++ b/src/frontend/numparam/xpressn.c @@ -229,14 +229,16 @@ message(dico_t *dico, const char *fmt, ...) if (ft_ngdebug) { fprintf (stderr, - "Netlist line no. %d, new internal line no. %d:\n", - dico->oldline, dico->srcline); + "Error in netlist line no. %d, new internal line no. %d:\n" + "%s\n\n", + dico->srcline, dico->oldline, dico->cardline); } else { fprintf (stderr, - "Netlist line no. %d:\n", - dico->oldline); + "Error in netlist line no. %d:\n" + "%s\n\n", + dico->srcline, dico->oldline); } } va_start(ap, fmt); @@ -273,6 +275,7 @@ initdico(dico_t *dico) dico->hs_compatibility = 1; else dico->hs_compatibility = 0; + dico->cardline = NULL; }