From: Paolo N. <p....@ie...> - 2004-08-20 14:10:55
|
Hi all, I have investigated the error on Al Niessner's netlist. Bug description: Al contributed a netlist wich contains some POLY sources. Particularly the following one: FB 7 99 POLY(5) VB VC VE VLP VLN 0 4.715E6 -5E6 5E6 5E6 -5E6 this line is not traslated correctly by xspice and returns an error, an invalid free() and a segfault. For the error the reason is in function get_poly_dimension() in enhtrans.c : /* This is stupid, but it works. . . . */ if ( (dim == 0) || (dim == 1) || (dim == 2) ) { return(dim); } else { return(-1); } It seems that only dimensions up 2 are supported. Xspice experts what about this ? Is it a limitation or a bug ? On the free() issue: This is some involuted, the problem lies in the error message returned. In two2three_translate() error message are returned as: return("ERROR - Argument to poly() is not an integer\n"); which then become "freed" with: tfree(dd->li_error); in inp_dodeck() in line 564 in file inp.c. For the segmentation fault ... still figuring out. Ciao, Paolo -- ---- Public PGP/GnuPG key pub 1024D/8FC0A981 2002/04/19 Paolo Nenzi <p....@ie...> key fingerprint = FCC5 FDA4 4A31 EDE6 982D AABE 6D48 9D3A 8FC0 A981 ---- |