I think we should try and avoid duplicating temporary argument forms in the expansion. Currently, forms are copied for the initial and the step form in DO, and that's not good for compile times… especially when ASSERTs are nested (e.g. via inlining).
That'll probably be most easily achieved with TAGBODY.
Re CONSTANTP, you probably need to use the cross-compiler's version (sb!xc:constantp).
Right, there's a slight bug in FLOAT-RADIX.
I think we should try and avoid duplicating temporary argument forms in the expansion. Currently, forms are copied for the initial and the step form in DO, and that's not good for compile times… especially when ASSERTs are nested (e.g. via inlining).
That'll probably be most easily achieved with TAGBODY.
Re CONSTANTP, you probably need to use the cross-compiler's version (sb!xc:constantp).