h_vogt
c0bc0de4b5
prototype for controlled_exit()
2012-10-01 23:02:26 +02:00
rlar
f52ae6eccd
bug fix, invalid read when the title line is the empty
2012-09-30 18:38:36 +02:00
rlar
fe1acd3757
src/frontend/** remove superfluous `return' invocations
2012-09-22 19:33:55 +02:00
rlar
7454a6d486
src/frontend/**, whitespace, indentation, ...
...
untabify
delete-trailing-whitespace
braces
...
checked for object file invariance on linux
2012-09-20 20:30:53 +02:00
rlar
3d7ab6a297
cleanup keyword databases on proram termination
2012-08-23 21:19:15 +02:00
rlar
ef37252155
lexical, use wl_append_word()
2012-08-03 20:24:58 +02:00
rlar
62a4ee77d5
lexical #6/6, whitespace
2012-08-03 20:20:18 +02:00
rlar
ea558fbc7f
lexical #5/6, cleanup
2012-08-03 20:18:17 +02:00
rlar
aa188c0766
lexical #4/6, parentheses and braces
2012-08-03 20:16:47 +02:00
rlar
c73c0f4318
lexical #3/6, rewrite
2012-08-03 20:12:58 +02:00
rlar
5656203a6c
lexical #2/6, linewrap
2012-08-03 20:12:19 +02:00
rlar
5d245c9dab
lexical #1/6, cleanup
2012-08-03 20:09:34 +02:00
rlar
64d00a6b43
lexical #3/3, collapse append(NULL) into cp_ccom()
...
the sequence
orig_wlist = wlist;
append(NULL);
cp_ccom(wlist, ...);
is transformed.
expressions to care about in cp_ccom()
C1 := (wlist->wl_next != NULL)
C2 := (wlist->wl_word != NULL)
C3 := wl_length(wlist)
D1 := (orig_wlist != NULL)
D2 := (orig_wlist->wl_word != NULL)
D3 := wl_length(orig_wlist);
cases and their significance in cp_ccom():
orig_wlist = NULL;
wlist = wl_cons(NULL, NULL);
C1 == false
D1 == false
C2,C3 dont care
orig_wlist = wl_cons(E1, wl_cons(E2, ... wl_cons(En, NULL)))
wlist = wl_cons(E1, wl_cons(E2, .... wl_cons(En, wl_cons(NULL, NULL))))
C1 == true
D1 == true
C2 === D2
C3 === D3 + 1
2012-08-02 18:55:54 +02:00
rlar
fec5b00a0d
lexical #2/3, fix memory leaks
2012-08-02 18:55:54 +02:00
rlar
042311d0c3
lexical #1/3, move append(NULL) invokations into position
2012-08-02 18:55:54 +02:00
rlar
1195498978
lexical #19/19, rewrite
2012-07-31 20:49:34 +02:00
rlar
5b67ecda79
lexical #18/19, rewrite
...
`cw' won't be looked at, thus the append + removal can be dropped
`wl_word' is already NULL
2012-07-31 20:49:34 +02:00
rlar
f990e517b5
lexical #17/19, rewrite
2012-07-31 20:49:34 +02:00
rlar
fa9be4336a
lexical #16/19, transform append --> append(word)
2012-07-31 20:49:34 +02:00
rlar
43a6d59c72
lexical #15/19, drop `delayed' which is never zero ...
2012-07-31 20:49:33 +02:00
rlar
47b5e9576d
lexical #14/19, drop `delayed = 0' wherever its effect isn't visible
...
without effect, because we return or will overwrite it anyway
2012-07-31 20:49:33 +02:00
rlar
01df4e9437
lexical #13/19, delay `append'
...
delay its execution, until
either `wlist' or `cw' will be accessed,
or
a return or goto nloop is inevitable
2012-07-31 20:49:33 +02:00
rlar
cff6188fe3
lexical #12/19, use `append'
...
some `assumption' are no longer valid
2012-07-31 20:49:32 +02:00
rlar
5ad8382cf1
lexical #11/19, aproach `append' here
2012-07-31 20:49:32 +02:00
rlar
d61f3c10a0
lexical #10/19, split off `append' from `newword'
2012-07-31 20:49:32 +02:00
rlar
af0a0c2c03
lexical #9/19, aproach the `append'
...
cw has never been NULL here,
because we used to survive an update of cw->wl_next here
wlist hasn't been NULL either,
because there is no place where wlist becomes NULL without
setting cw to NULL as well. yet cw isn't NULL (see above)
aproach the `append'
2012-07-31 20:49:31 +02:00
rlar
74cc38f67a
lexical #8/19, express where `wlist' and `cw' start being != NULL
2012-07-31 20:49:31 +02:00
rlar
3cbc4b0773
lexical #7/19, express verbosely where `wlist' and `cw' are NULL
2012-07-31 20:49:31 +02:00
rlar
ecb2eec279
lexical #6/19, express cp_ccom() property
2012-07-31 20:49:31 +02:00
rlar
3b575d5e3d
lexical #5/19, collapse into `newword'
2012-07-31 20:49:30 +02:00
rlar
348dc2d7d1
lexical #4/19, the `else' can take that job (unconditionally)
2012-07-31 20:49:30 +02:00
rlar
80191f3d44
lexical #3/19, attach and instantly remove a NULL wl_word here
...
this modification is faithful iff cw != NULL and cw->wl_next == NULL
cw != NULL because we have just survived an update of cw->wl_word
cw->wl_next == NULL is witnessed by:
1) cw either NULL or pointing to a wl_cons(,NULL)
2) cw not being modified, and no wl_next being modified
3) check of all function invocations with wlist/cw argument
not to modify any wl_next slot
which are:
1) cp_ccom(wlist, ...)
2) wl_free() always followed by goto nloop, which does a cw = wl_cons(,NULL)
and cp_ccom() doesn't modify any wl_next slot
the first part of the patch is intentionally similar to newword
`i' and `buf' can be modified here, because we will inevitably `goto done'
attach and instantly remove a NULL wl_word here
2012-07-31 20:49:30 +02:00
rlar
ddebb63425
lexical #2/19, rewrite the `else if'
2012-07-31 20:49:29 +02:00
rlar
f2f43bcce7
lexical #1/19, use wl_cons
2012-07-31 20:49:29 +02:00
rlar
f36772419a
Revert "cleanup, use wl_cons()"
...
This reverts parts of commit 7a7250cdbd .
There is a cleaner way to rewrite lexical.c
2012-07-31 20:48:01 +02:00
rlar
7a7250cdbd
cleanup, use wl_cons()
2012-07-27 21:50:05 +02:00
rlar
9655b9885a
cleanup, use wl_cons(), wl_append_word() and wl_chop_rest()
2012-07-14 10:23:51 +02:00
rlar
e1f8033f1c
bug fix, incorrect update of a wordlist's wl_prev pointer
2012-07-12 18:49:01 +02:00
rlar
cb0a48801d
introduce AM_CFLAGS = $(STATIC)
2012-07-07 14:51:39 +02:00
rlar
e396b15104
use type `struct ccom'
2012-02-07 17:45:41 +00:00
rlar
cc7afb7abb
drop (char*) cast in the third argument of ioctl()
2012-02-06 20:13:35 +00:00
rlar
f285dd0aa8
use strchr() instead of index()
2012-02-06 17:46:33 +00:00
rlar
afa1371746
#3/6 config.h --> ngspice/config.h, AM_CPPFLAGS
2011-12-27 12:05:51 +00:00
rlar
4ca58067a2
#2/6 config.h --> ngspice/config.h, #include's
2011-12-27 11:33:01 +00:00
rlar
0b5042e7da
remove CVS `Id',`log' etc. keyword incantations
2011-12-13 19:57:45 +00:00
rlar
10346e055c
#1/4 #include <ngspice/...> --> #include "ngspice/..."
2011-12-11 18:05:00 +00:00
rlar
d26015586c
#1/7 use a subdirectory "ngspice" for includes to create a uniq namespace
2011-08-20 17:27:09 +00:00
h_vogt
2c8d477f68
def of _read only for console app
2011-07-09 22:01:04 +00:00
h_vogt
bf4f91cd90
add SSIZE_T
2011-07-04 22:03:16 +00:00
h_vogt
0a114e0057
add SSIZE_T
2011-07-04 22:00:18 +00:00
h_vogt
75ae33d0a3
typo line 30 size_t
2011-07-04 20:58:12 +00:00
h_vogt
e6c86b4d98
explicit casting double -> int etc.
2011-06-11 17:07:38 +00:00
rlar
66289067ba
rename variable class --> kw_class
2011-05-01 19:45:12 +00:00
rlar
23056573d8
code cleanup, drop NULL pointer casts
2011-04-28 15:59:36 +00:00
dwarning
3ab9e6d060
cvs ignore .libs
2010-12-12 09:42:47 +00:00
dwarning
b964cf949c
cvs ignore *.lo and *.la
2010-12-12 09:34:10 +00:00
rlar
05441d5823
Nr 5/5 (x = ...) == NULL , swallow warnings
2010-11-19 18:54:40 +00:00
rlar
e6c30efe46
Nr 4/5 (x = ...) != NULL , swallow warnings
2010-11-19 18:52:44 +00:00
rlar
abb87a6115
rename `IGNORE()' --> `NG_IGNORE()'
2010-11-16 20:38:24 +00:00
rlar
80286e0032
pour `IGNORE()' all over the source
2010-11-16 19:11:32 +00:00
rlar
dbdd7dc741
tiny rewrite, type fixes
2010-11-06 17:29:28 +00:00
rlar
dd34b783cf
minor rewrite, a local variable type change
2010-11-06 17:12:13 +00:00
rlar
6e3bbd49ae
casts, to make int <-> char conversions explicit
2010-11-02 17:31:19 +00:00
rlar
b4ffca60c4
(int) casts for some `strlen()' expressions
2010-11-02 17:17:43 +00:00
rlar
7b3960506f
wrap tmalloc MALLOC etc, into two macros TMALLOC and TREALLOC
2010-10-28 19:32:34 +00:00
rlar
d7a9d71a1a
remove prototypes, avoid redeclarations
2010-10-16 15:58:14 +00:00
rlar
1d62b41bfa
collect cp_* prototypes / extern-declarations in "cpextern.h"
2010-10-09 12:49:34 +00:00
rlar
a8c64094fc
fix busy waiting loop, when using editline
2010-08-09 18:36:57 +00:00
rlar
4cdd842cd8
muffle compiler warnings
2010-07-24 18:51:06 +00:00
rlar
d19476685a
tiny fixes
2010-07-03 17:55:44 +00:00
rlar
3369d860b4
cast the return values of malloc() function calls
2010-07-01 19:52:23 +00:00
h_vogt
6874c454fc
allow {$var}
2010-06-30 19:20:01 +00:00
rlar
5b5297ac2f
remove abandoned prototypes
2010-06-25 17:23:40 +00:00
dwarning
586af63f36
changed the declarator to new format
2009-11-26 20:04:09 +00:00
h_vogt
1e5720a23f
double array size in cp_lexer()
2009-04-12 18:06:13 +00:00
pnenzi
72482f964e
Fixed segfaults when redirecting output < > -- Espice
2008-11-04 11:40:17 +00:00
pnenzi
fa549df82a
TCLSPICE IMPORT + libtool + measure2 command
2008-08-27 13:39:05 +00:00
pnenzi
7f6ad5c706
Updated to new automake standard. Replaced all INCLUDES with AM_CPPFLAGS
2008-08-24 17:12:50 +00:00
dwarning
37fffd911f
functions used in this branch only
2007-11-14 20:23:15 +00:00
dwarning
41325622fd
some clean-up's to come through MSC
2007-10-18 19:34:30 +00:00
sjborley
3a69282b3a
Fixed memory leak in tilde expansion
2005-09-06 20:24:47 +00:00
sjborley
67ff1b3a83
Tidy up of the header files in src/frontend and sub-directories. Motivation is to remove extern declarations within .c files and place them in .h files. Added new header files where necessary (and adjusted makefile.am files where required)
2005-05-30 20:28:29 +00:00
pnenzi
b03a70760b
Applied Stuart's 12-03-2003 patch. Support for readline (disabled) and for node names in the form (x,y).
2004-01-10 21:39:36 +00:00
pnenzi
531fb3575a
Applied Vera Patch to correct bugs in shell code and re-enabling interpolate command.
2003-12-25 17:30:36 +00:00
pnenzi
8686a73047
Added readline patch (support for command history).
2003-08-14 19:21:10 +00:00
pnenzi
8362dec274
Integrated code from tclspice, brorson xspice and Vera memleak.
2003-07-23 19:36:39 +00:00
pnenzi
937e3db647
Holger Vogt Windows port for Ngspice.
2002-01-03 22:44:21 +00:00
pnenzi
6696aac9e6
Updated changelogs
2001-12-14 18:42:56 +00:00
pnenzi
7583d1849e
Applied another bunch of patches sent by CDHW (Charles D.H. Williams). The patches
...
are aimed to close some leaks in the parser.
2001-12-14 18:29:08 +00:00
pnenzi
ccfdf80c2e
Applied patches for BSD OSes
2000-11-13 19:30:00 +00:00
arno
9dd92c7315
* com_history, com_alias, parser/cshpar.c, parser/complete.c:
...
Applied patch by Michael Widlok. It fixes command completion and
history list. In the process, Michael also fixed a memory leak.
2000-11-07 17:49:18 +00:00
pnenzi
19129762ad
Added Glao Dezai's patches (some memory leaks fixes)
2000-10-26 17:02:12 +00:00
arno
cc51f0e8db
* src/main.c, src/multidec.c, src/proc2mod.c,
...
src/frontend/display.c, src/frontend/outitf.c,
src/frontend/help/readhelp.c, src/frontend/help/x11disp.c,
src/frontend/parser/complete.c, src/frontend/parser/glob.c,
src/frontend/plotting/graf.c,
src/frontend/plotting/graphdb.c,
src/frontend/plotting/x11.c, src/include/graph.h,
src/include/iferrmsg.h, src/include/ifsim.h,
src/include/macros.h, src/maths/poly/polyfit.c,
src/maths/sparse/spalloc.c, src/maths/sparse/spconfig.h,
src/misc/alloc.c, src/misc/mktemp.c,
src/spicelib/analysis/cktpzstr.c,
src/spicelib/devices/bsim2/b2temp.c,
src/spicelib/devices/bsim3/b3temp.c,
src/spicelib/devices/bsim3v1/b3v1temp.c,
src/spicelib/devices/bsim3v2/b3v2temp.c,
src/spicelib/devices/bsim4/b4temp.c: replaced malloc
realloc and free calls to use tmalloc trealloc and txfree.
* tests/diffpair.out, tests/fourbitadder.out,
tests/resistance/res_partition.out: Updated.
2000-10-14 13:16:53 +00:00
arno
8dc5eac0ee
* TODO, doc/ngspice.texi: Small updates
...
* configure.in: New --enable-smoketest.
* src/main.c
src/ngspice.c src/frontend/outitf.c src/frontend/runcoms.c
src/frontend/spiceif.c src/frontend/parser/numparse.c
src/include/cktdefs.h src/include/fteext.h
src/include/inpdefs.h src/include/jobdefs.h
src/include/ngspice.h src/include/tskdefs.h
src/spicelib/analysis/Makefile.am
src/spicelib/analysis/acsetp.c
src/spicelib/analysis/cktaskaq.c
src/spicelib/analysis/cktdojob.c
src/spicelib/analysis/cktnewan.c
src/spicelib/analysis/cktsetap.c
src/spicelib/analysis/cktsopt.c
src/spicelib/analysis/ckttroub.c
src/spicelib/analysis/dcosetp.c
src/spicelib/analysis/dctsetp.c
src/spicelib/analysis/dsetparm.c
src/spicelib/analysis/nsetparm.c
src/spicelib/analysis/pzsetp.c
src/spicelib/analysis/senssetp.c
src/spicelib/analysis/tfsetp.c
src/spicelib/analysis/transetp.c
src/spicelib/devices/bjt/bjtdset.h
src/spicelib/devices/bjt/bjtext.h
src/spicelib/devices/bjt/bjtsetup.c
src/spicelib/devices/bsim2/b2set.c
src/spicelib/devices/bsim3/b3acld.c
src/spicelib/devices/bsim3/b3set.c
src/spicelib/devices/bsim3/bsim3def.h
src/spicelib/devices/csw/cswtrunc.c
src/spicelib/devices/dio/diodset.c
src/spicelib/devices/dio/dioinit.c
src/spicelib/devices/jfet/jfetset.c
src/spicelib/devices/mes/messetup.c
src/spicelib/devices/mos1/mos1ask.c
src/spicelib/devices/mos1/mos1set.c
src/spicelib/devices/mos1/mos1temp.c
src/spicelib/devices/mos3/mos3load.c
src/spicelib/devices/mos6/mos6set.c
src/spicelib/devices/sw/swtrunc.c
src/spicelib/parser/inppas2.c src/spicelib/parser/inppas3.c
src/spicelib/parser/inppas3.h: Paolo and I have integrated patches from Alan Gillespie
<Alan.Gillespie@analog.com>.
2000-09-05 19:48:22 +00:00
arno
b04989d760
* src/hlp/*: moved these files into src/frontend/help. The files
...
in this directory implement the help system for the frontend.
* configure.in, src/Makefile.am, src/frontend/Makefile.am: Files
affected by the move.
2000-07-21 18:25:47 +00:00