Mercurial > hg > xemacs-beta
view lisp/mule/mule-locale.txt @ 5294:bbff29a01820
Add compiler macros and compilation sanity-checks for functions with keywords.
2010-10-25 Aidan Kehoe <kehoea@parhasard.net>
Add compiler macros and compilation sanity-checking for various
functions that take keywords.
* byte-optimize.el (side-effect-free-fns): #'symbol-value is
side-effect free and not error free.
* bytecomp.el (byte-compile-normal-call): Check keyword argument
lists for sanity; store information about the positions where
keyword arguments start using the new byte-compile-keyword-start
property.
* cl-macs.el (cl-const-expr-val): Take a new optional argument,
cl-not-constant, defaulting to nil, in this function; return it if
the expression is not constant.
(cl-non-fixnum-number-p): Make this into a separate function, we
want to pass it to #'every.
(eql): Use it.
(define-star-compiler-macros): Use the same code to generate the
member*, assoc* and rassoc* compiler macros; special-case some
code in #'add-to-list in subr.el.
(remove, remq): Add compiler macros for these two functions, in
preparation for #'remove being in C.
(define-foo-if-compiler-macros): Transform (remove-if-not ...) calls to
(remove ... :if-not) at compile time, which will be a real win
once the latter is in C.
(define-substitute-if-compiler-macros)
(define-subst-if-compiler-macros): Similarly for these functions.
(delete-duplicates): Change this compiler macro to use
#'plists-equal; if we don't have information about the type of
SEQUENCE at compile time, don't bother attempting to inline the
call, the function will be in C soon enough.
(equalp): Remove an old commented-out compiler macro for this, if
we want to see it it's in version control.
(subst-char-in-string): Transform this to a call to nsubstitute or
nsubstitute, if that is appropriate.
* cl.el (ldiff): Don't call setf here, this makes for a load-time
dependency problem in cl-macs.el
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Mon, 25 Oct 2010 13:04:04 +0100 |
parents | 943eaba38521 |
children |
line wrap: on
line source
<localeset> <os command="uname -a"> FreeBSD fpage2.ba.best.com 2.2.8-STABLE FreeBSD 2.2.8-STABLE #127: Tue Dec 19 18:05:20 PST 2000 root@tick.best.net:/src/src/sys/compile/BEST i386 </os> <locale command="\ls -1 /usr/share/locale"> ASCII US-ASCII ascii cs da da_DK.ISO_8859-1 de de_AT.ISO_8859-1 de_CH.ISO_8859-1 de_DE.ISO_8859-1 el en_AU.ISO_8859-1 en_CA.ISO_8859-1 en_GB.ISO_8859-1 en_US.ISO_8859-1 eo es es_ES.ISO_8859-1 fi_FI.ISO_8859-1 fr fr_BE.ISO_8859-1 fr_CA.ISO_8859-1 fr_CH.ISO_8859-1 fr_FR.ISO_8859-1 gl hr_HR.ISO_8859-2 hu_HU.ISO_8859-2 id is_IS.ISO_8859-1 it it_CH.ISO_8859-1 it_IT.ISO_8859-1 ja_JP.EUC ja_JP.SJIS ko ko_KR.EUC locale.alias lt_LN.ASCII lt_LN.ISO_8859-1 lt_LN.ISO_8859-2 nl nl_BE.ISO_8859-1 nl_NL.ISO_8859-1 no no@nynorsk no_NO.ISO_8859-1 pl pl_PL.ISO_8859-2 pt pt_BR pt_PT.ISO_8859-1 ru ru_RU.CP866 ru_RU.KOI8-R ru_SU.CP866 ru_SU.KOI8-R sk sl sl_SI.ISO_8859-2 sv sv_SE.ISO_8859-1 uk us-ascii zh_TW.Big5 </locale> </localeset> <localeset> <os command="uname -a"> CYGWIN_NT-5.0 NEEEEEEE 1.3.2(0.39/3/2) 2001-05-20 23:28 i686 unknown </os> <locale command="\ls -1 /usr/share/locale"> le cs da de de_AT el eo es et fr gl hr id it ja ko locale.alias nl no no@nynorsk pl pt pt_BR ru sk sl sv uk zh zh_TW.Big5 </locale> </localeset> <localeset> <os command="uname -a"> SunOS jptkyiman01 5.7 Generic_106541-04 sun4u sparc SUNW,Ultra-5_10 </os> <locale command="locale -a"> C POSIX ar bg_BG cz da da.ISO8859-15 da.ISO8859-15@euro de de.ISO8859-15 de.ISO8859-15@euro de.UTF-8 de.UTF-8@euro de_AT de_AT.ISO8859-15 de_AT.ISO8859-15@euro de_CH el el.sun_eu_greek el.sun_eu_greek@euro en_AU en_CA en_GB en_GB.ISO8859-15 en_GB.ISO8859-15@euro en_IE en_IE.ISO8859-15 en_IE.ISO8859-15@euro en_NZ en_US en_US.UTF-8 es es.ISO8859-15 es.ISO8859-15@euro es.UTF-8 es.UTF-8@euro es_AR es_BO es_CL es_CO es_CR es_EC es_GT es_MX es_NI es_PA es_PE es_PY es_SV es_UY es_VE et fi fi.ISO8859-15 fi.ISO8859-15@euro fr fr.ISO8859-15 fr.ISO8859-15@euro fr.UTF-8 fr.UTF-8@euro fr_BE fr_BE.ISO8859-15 fr_BE.ISO8859-15@euro fr_CA fr_CH he he_IL hr_HR hu iso_8859_1 it it.ISO8859-15 it.ISO8859-15@euro it.UTF-8 it.UTF-8@euro ja ja_JP.PCK ja_JP.UTF-8 japanese lt lv mk_MK nl nl.ISO8859-15 nl.ISO8859-15@euro nl_BE nl_BE.ISO8859-15 nl_BE.ISO8859-15@euro no no_NY nr pl pt pt.ISO8859-15 pt.ISO8859-15@euro pt_BR ro_RO ru ru.koi8-r sk_SK sl_SI sq_AL sr_SP sv sv.ISO8859-15 sv.ISO8859-15@euro sv.UTF-8 sv.UTF-8@euro th th_TH tr </locale> </localeset> <localeset> <os command="uname -a, embellished"> Linux jptkyienaga.ugsolutions.com 2.2.15 #3 Tue May 16 10:45:47 JST 2000 i686 unknown (Redhat Linux 6.2J) </os> <locale command="locale -a"> C POSIX af_ZA ar_SA ca ca_ES catalan croatian cs cs_CZ cz czech da da_DK danish dansk de de_AT de_BE de_CH de_DE de_LU deutsch dutch eesti el el_GR en_AU en_BW en_CA en_DK en_GB en_IE en_US en_ZW eo es es_DO es_ES es_GT es_HN es_MX es_PA es_PE es_SV estonian et et_EE eu eu_ES fi fi_FI finnish fo_FO fr fr_BE fr_CA fr_CH fr_FR fr_LU fran軋is french ga ga_IE german gl gl_ES greek hebrew hr hr_HR hrvatski hu hu_HU hungarian icelandic id in_ID is is_IS it it_CH it_IT italian iw_IL ja ja_JP ja_JP.eucJP ja_JP.ujis japanese japanese.euc kl_GL ko lithuanian lt lt_LT lv_LV mk_MK nl nl_BE nl_NL no no@nynorsk no_NO norwegian pl pl_PL polish portuguese pt pt_BR pt_PT ro ro_RO romanian ru ru_RU ru_RU.KOI8-R ru_UA russian se sk sk_SK sl sl_SI slovak slovene slovenian spanish sr sr_YU sv sv_FI sv_SE swedish th_TH tr tr_TR turkish uk uk_UA wa zh zh_TW.Big5 </locale> </localeset> <localeset> <os command="uname -a"> HP-UX ughp4 B.10.20 A 9000/778 2010968479 two-user license </os> <locale command="locale -a"> C C.iso88591 C.iso885915 C.utf8 POSIX ar_DZ.arabic8 ar_SA.arabic8 ar_SA.iso88596 bg_BG.iso88595 cs_CZ.iso88592 da_DK.iso88591 da_DK.iso885915@euro da_DK.roman8 de_DE.iso88591 de_DE.iso885915@euro de_DE.roman8 el_GR.greek8 el_GR.iso88597 en_GB.iso88591 en_GB.iso885915@euro en_GB.roman8 en_US.iso88591 en_US.roman8 es_ES.iso88591 es_ES.iso885915@euro es_ES.roman8 fi_FI.iso88591 fi_FI.iso885915@euro fi_FI.roman8 fr_CA.iso88591 fr_CA.iso885915 fr_CA.roman8 fr_FR.iso88591 fr_FR.iso885915@euro fr_FR.roman8 hr_HR.iso88592 hu_HU.iso88592 is_IS.iso88591 is_IS.iso885915@euro is_IS.roman8 it_IT.iso88591 it_IT.iso885915@euro it_IT.roman8 iw_IL.hebrew8 iw_IL.iso88598 ja_JP.SJIS ja_JP.eucJPput ja_JP.kana8 nl_NL.iso88591 nl_NL.iso885915@euro nl_NL.roman8 no_NO.iso88591 no_NO.iso885915@euro no_NO.roman8 pl_PL.iso88592 pt_PT.iso88591 pt_PT.iso885915@euro pt_PT.roman8 ro_RO.iso88592 ru_RU.iso88595 sk_SK.iso88592 sl_SI.iso88592 sv_SE.iso88591 sv_SE.iso885915@euro sv_SE.roman8 th_TH.tis620 tr_TR.iso88599 tr_TR.turkish8 univ.utf8 zh_CN.hp15CNut zh_TW.eucTW </locale> </localeset>