(defun get-latin-bytes (mapper external-format string pos end)
(declare (ignore end))
(let ((code (funcall mapper (char-code (char string pos)))))
+ (declare (type (or null char-code) code))
(values (cond
((and code (< code 256)) code)
(t
(defun default-external-format ()
(or *default-external-format*
- (let ((external-format (intern (or (sb!alien:alien-funcall
- (extern-alien
- "nl_langinfo"
- (function c-string int))
- sb!unix:codeset)
- "LATIN-1")
- "KEYWORD")))
+ (let ((external-format #!-win32 (intern (or (sb!alien:alien-funcall
+ (extern-alien
+ "nl_langinfo"
+ (function c-string int))
+ sb!unix:codeset)
+ "LATIN-1")
+ "KEYWORD")
+ #!+win32
+ #!+sb-unicode (sb!win32::ansi-codepage)
+ #!-sb-unicode :LATIN-1))
(/show0 "cold-printing defaulted external-format:")
#!+sb-show
(cold-print external-format)