> Getting back on topic, are we sure we want to deviate from GNU pic's
> current behaviour without checking historical norms of other pics?
>
> $ printf '%s\n' \
> .PS 'print sprintf("%.17g %.0f% % %%", 3.14, 42, 99)' .PE |
> > pic >/dev/null
> 3.1400000000000001 42% % %%
>
> Though that may seem odd to our modern C-standardised eyes, it's
> understandable in that if it isn't a valid %f, etc., format specifier
> then it's a literal percent sign.
It looks like Ralph has turned up a really strange bug in pic
that suppresses pic's usual diagnosis of a bare % in a format.
The example can be boiled down to
sprintf("%g% %",1)
which produces
1% %
without complaint. If you omit either the 2nd or 3rd % though,
pic announces "bad sprintf format".
Doug