Subject: bug#20209: GUILE 2.0.11: crash in set_port_filename_x for bytevector ports

From: [email-masked] (Ludovic Courtès)
Date: Sun, 29 Mar 2015 15:06:47 +0200

Mark H Weaver <[email-masked]> skribis:

> For these reasons, I decided against recommending those undocumented
> initialization functions.  Instead, I suggested that David initialize
> binary ports by loading (ice-9 binary-ports):
>
>   (void) scm_c_resolve_module ("ice-9 binary-ports");

That sounds like the best option, indeed.

> For Guile 2.0.12, I suggest that we unconditionally do the equivalent of
> 'scm_init_bytevectors' and 'scm_init_r6rs_ports' during Guile
> initialization, and make those functions into deprecated no-ops.

Agreed, that’s what I was going to suggest.

That these init functions are not marked as internal is really an
oversight.

I wouldn’t be against simply making them SCM_INTERNAL in 2.0.12, but
making them public + deprecated as you suggest is even better.

Thanks,
Ludo’.