diff options
author | Dirk Herrmann <dirk@dirk-herrmanns-seiten.de> | 2000-05-18 08:47:52 +0000 |
---|---|---|
committer | Dirk Herrmann <dirk@dirk-herrmanns-seiten.de> | 2000-05-18 08:47:52 +0000 |
commit | af45e3b06accc40d2c92918d5901afb793e8b247 (patch) | |
tree | 36558f693d2e1bdbcd89d8ff533c8852abf47435 /libguile/strings.c | |
parent | c8a54c4b87d561a6a4cc6464846af51f8215ef1e (diff) | |
download | guile-af45e3b06accc40d2c92918d5901afb793e8b247.tar.gz |
* Unified some rest argument checking and handling.
Diffstat (limited to 'libguile/strings.c')
-rw-r--r-- | libguile/strings.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libguile/strings.c b/libguile/strings.c index 733667d19..70ec6f23f 100644 --- a/libguile/strings.c +++ b/libguile/strings.c @@ -308,13 +308,13 @@ SCM_DEFINE (scm_string_append, "string-append", 0, 0, 1, register long i = 0; register SCM l, s; register unsigned char *data; - for (l = args;SCM_CONSP (l);) { + + SCM_VALIDATE_REST_ARGUMENT (args); + for (l = args; !SCM_NULLP (l); l = SCM_CDR (l)) { s = SCM_CAR (l); SCM_VALIDATE_ROSTRING (SCM_ARGn,s); i += SCM_ROLENGTH (s); - l = SCM_CDR (l); } - SCM_ASSERT (SCM_NULLP (l), args, SCM_ARGn, FUNC_NAME); res = scm_makstr (i, 0); data = SCM_UCHARS (res); for (l = args;SCM_NIMP (l);l = SCM_CDR (l)) { |