public inbox for guile-cvs@sourceware.org
help / color / mirror / Atom feed
* guile/guile-core/libguile alist.c list.c
@ 2000-01-06 10:00 gjb
  0 siblings, 0 replies; only message in thread
From: gjb @ 2000-01-06 10:00 UTC (permalink / raw)
  To: guile-cvs

CVSROOT:	/cvs/guile
Module name:	guile
Changes by:	gjb@sourceware.cygnus.com	00/01/06 10:00:33

Modified files:
	guile-core/libguile: alist.c list.c 

Log message:
	* alist.c: minimize scope of the tmp variables, and initialize
	them when declared. The strange SCM_NIMP tests are replaced by
	SCM_CONSP tests that more closely reflect the intended semantics.
	However, we don't get a performance penalty here, because the
	SCM_CONSP test was performed by the ALISTCELL test anyway.  * The
	extremely ugly use of ASRTGO macros was removed: The calls to
	ASRTGO were not encapsulated by "#ifndef SCM_RECKLESS", but got a
	label parameter that only exists when SCM_RECKLESS is not defined.
	This works, because ASRTGO itself is defined in a way that it only
	makes use of the label parameter if SCM_RECKLESS is not defined
	(shudder!).  Does guile make at all use of the possibility to
	define SCM_RECKLESS?  * Codesize is likely to be reduced, since
	instead of two calls to SCM_ASSERT performed by the ALISTCELL test
	we now only get one test.
	
	* list.c: Use SCM_NNULLP, not SCM_NIMP as appropriate.  Also use
	SCM_NULLP instead of SCM_IMP.  Drop use of "register" keyword on
	some variables in `list?'.  Fix `reverse' and `reverse!'
	primitives to handle improper lists better.


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2000-01-06 10:00 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-01-06 10:00 guile/guile-core/libguile alist.c list.c gjb

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).