On Sun, Sep 21, 2003 at 08:48:55AM -0700, Gregor N. Purdy wrote:
> The next change is a change to the IO layer. In include/parrot/io.h
> we change struct _ParrotIOLayerAPI to have two versions of C string
> writing:
> 
>     INTVAL (*PutSc)(theINTERP, ParrotIOLayer * l, /* C-style string put
> */
>                             ParrotIO * io, const char * s);
>     INTVAL (*PutSl)(theINTERP, ParrotIOLayer * l, /* Explicit length
> string put */
>                             ParrotIO * io, const char * s, INTVAL len);
> 
> and chase down and fix all the things this breaks. The reason is we
> might need to output a buffer of stuff that contains an interior zero
> byte, which would throw off the old way of doing things.

Instead could we just ditch the C-style put? (and make the layer table
one pointer smaller)

Anyone who wants to put a \0 terminated string can do the strlen
themselves. (Or we could provide a helpful macro)

Nicholas Clark

Reply via email to