- (declare (optimize (speed 3) (safety 0)))
- (let ((byte-length (do* ((offset 0 (1+ offset))
- (byte #1=(sap-ref-8 sap offset) #1#))
- ((zerop byte) offset))))
- (handler-bind ((sb!impl::octet-decoding-error #'sb!impl::use-unicode-replacement-char))
- (sb!impl::utf8->string-sap-ref-8 sap 0 byte-length)))))
+ (declare (optimize (speed 3) (safety 0)))
+ (let ((external-format (sb!impl::get-external-format-or-lose external-format)))
+ (funcall (sb!impl::ef-write-c-string-fun external-format) string))))