* lisp/international/mule-conf.el (ibm038): New charset.
(ebcdic-int, cp038): Alias charsets of ibm038.
* lisp/language/english.el (ibm038): New coding-system.
(ebcdic-int, cp038): Alias coding-systems of ibm038.
(Bug#33612)
* etc/NEWS: Announce the new coding system ibm038.
** '(format "%d" X)' no longer mishandles a floating-point number X that
does not fit in a machine integer.
+---
+** New coding-system 'ibm038'.
+This is the International EBCDIC encoding, also available as aliases
+'ebcdic-int' and 'cp038'.
+
+++
** In the DST slot, 'encode-time' and 'parse-time-string' now return -1
if it is not known whether daylight saving time is in effect.
:mime-charset 'ebcdic-uk
:map "EBCDICUK")
+(define-charset 'ibm038
+ "International version of EBCDIC"
+ :short-name "IBM038"
+ :code-space [0 255]
+ :mime-charset 'ibm038
+ :map "IBM038")
+(define-charset-alias 'ebcdic-int 'ibm038)
+(define-charset-alias 'cp038 'ibm038)
+
(define-charset 'ibm1047
;; Says groff:
"IBM1047, `EBCDIC Latin 1/Open Systems' used by OS/390 Unix."
:mnemonic ?*)
(define-coding-system-alias 'cp1047 'ibm1047)
+(define-coding-system 'ibm038
+ "International version of EBCDIC"
+ :coding-type 'charset
+ :charset-list '(ibm038)
+ :mnemonic ?*)
+(define-coding-system-alias 'ebcdic-int 'ibm038)
+(define-coding-system-alias 'cp038 'ibm038)
+
;; Make "ASCII" an alias of "English" language environment.
(set-language-info-alist
"ASCII" (cdr (assoc "English" language-info-alist)))