diff --git a/ChangeLog b/ChangeLog index 70f010dcf..dcb6b10e9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,10 @@ 2009-02-25 Holger Vogt * inpdomod.c:436 error message adapted to existing devices - + * /frontend/numparam/numparam.h, general.h: length of char arrays + set to 40000 + * inpcom.c: preprocessor flag OUTDECK, if set will save complete + deck into debug-out.txt + 2009-02-25 Dietmar Warning * spicelib/parser/inp2q.c,155: 5-terminal only for adms bipolars diff --git a/src/frontend/inpcom.c b/src/frontend/inpcom.c index d8f454bff..f277d6c7d 100644 --- a/src/frontend/inpcom.c +++ b/src/frontend/inpcom.c @@ -70,6 +70,10 @@ Author: 1985 Wayne A. Christopher /* SJB - Uncomment this line for debug tracing */ /*#define TRACE*/ +/* uncomment this line for getting deck output after all + manipulations into debug-out.txt */ +/* #define OUTDECK */ + /* globals -- wanted to avoid complicating inp_readall interface */ static char *library_file[1000]; static char *library_name[1000][1000]; @@ -984,7 +988,7 @@ inp_readall(FILE *fp, struct line **data, int call_depth, char *dir_name) char *global_copy = NULL, keep_char; int line_number = 1; /* sjb - renamed to avoid confusion with struct line */ FILE *newfp; -#ifdef TRACE +#if defined(TRACE) || defined(OUTDECK) FILE *fdo; struct line *tmp_ptr1 = NULL; #endif @@ -1506,7 +1510,7 @@ inp_readall(FILE *fp, struct line **data, int call_depth, char *dir_name) inp_add_control_section(working, &line_number); } *data = cc; -#ifdef TRACE +#if defined(TRACE) || defined(OUTDECK) /*debug: print into file*/ if (tmp_ptr1) tfree(tmp_ptr1); fdo = fopen("debug-out.txt", "w"); diff --git a/src/frontend/numparam/general.h b/src/frontend/numparam/general.h index 1e56c8088..2571bb75f 100644 --- a/src/frontend/numparam/general.h +++ b/src/frontend/numparam/general.h @@ -17,7 +17,9 @@ #define Sini(s) sini(s,sizeof(s)-4) -typedef enum {Maxstr=25004} _nMaxstr; /* was 255, string maxlen, may be up to 32000 or so */ +/* was 255, then 15000, string maxlen, 40000 to catch really big + macros in .model lines */ +typedef enum {Maxstr=40000} _nMaxstr; typedef enum {Esc=27} _nEsc; typedef enum {Tab=9} _nTab; typedef enum {Bs=8} _nBs; diff --git a/src/frontend/numparam/numparam.h b/src/frontend/numparam/numparam.h index 8f71c9241..062a772ad 100644 --- a/src/frontend/numparam/numparam.h +++ b/src/frontend/numparam/numparam.h @@ -22,8 +22,9 @@ typedef enum {Maxdico=40000} _nMaxdico; /* Size of symbol table*/ /* Composite line length This used to be 250 characters, but this is too easy to exceed with a .model line, especially when spread over several continuation - lines with much white space. I hope 1000 will be enough. */ -typedef enum {Llen=15000} _nLlen; + lines with much white space. Set to 40000 to catch really big + macros in .model lines. Will add 100k of memory compared to previous 25004*/ +typedef enum {Llen=40000} _nLlen; typedef char str50 [54]; typedef char str80 [84];