Kevin Ryde escreveu:
> In regexp-exec in 1.8, a nul in the input string, or a bad flags arg,
> results in a throw from a critical section, which calls abort().  Eg.
> 
>       (regexp-exec (make-regexp "x") "\0")
>       => abort
> 
>       (regexp-exec (make-regexp "x") "hello" 0 'badflags)
>       => abort
> 
> What's the reason for the critical section?  Do we think regexec() is
> not reentrant?  It looks like a conversion from SCM_DEFER_INTS in past
> versions, if that suggests anything about it.
> 
> I struck this when running a regexp search on some file data that
> slightly unexpectedly had nuls in it.  I think I was using 1.6 last
> time I did the same thing.  I guess that version silently ignores past
> the nul.  Maybe that should get a check, though there's probably a
> zillion libc calls that would really ought to have the same.

Ehm,

I get

**
Running reader.test
Running receive.test
Running regexp.test
ERROR: Unbound variable: exception:string-contains-nul
FAIL: check-guile
==================================
**


it might be a good idea to have an autobuild daemon that compiles and 
checks the test-suite.

-- 
 Han-Wen Nienhuys - [EMAIL PROTECTED] - http://www.xs4all.nl/~hanwen



_______________________________________________
Guile-devel mailing list
Guile-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/guile-devel

Reply via email to