Commit Graph

25 Commits

Author SHA1 Message Date
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 4ca58067a2 #2/6 config.h --> ngspice/config.h, #include's 2011-12-27 11:33:01 +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
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 4cdd842cd8 muffle compiler warnings 2010-07-24 18:51:06 +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 531fb3575a Applied Vera Patch to correct bugs in shell code and re-enabling interpolate command. 2003-12-25 17:30:36 +00:00
pnenzi 937e3db647 Holger Vogt Windows port for Ngspice. 2002-01-03 22:44:21 +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
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