From 0494fb15923105b034f056d57de3de82b1bdfdd1 Mon Sep 17 00:00:00 2001 From: Daniel Kochmanski Date: Tue, 1 May 2018 10:16:20 +0200 Subject: [PATCH] Moderate interface cleanup - unicode name tables are always compiled in when we have unicode support - thread local variables support is removed - profile and rt contribs are deprecated --- CHANGELOG | 4 + msvc/ecl/config.h.msvc6 | 3 - src/aclocal.m4 | 11 --- src/c/character.d | 10 +- src/c/main.d | 2 - src/c/threads/process.d | 20 +--- src/configure | 103 +++----------------- src/configure.ac | 54 +++------- src/doc/new-doc/developer-guide/objects.txi | 9 +- src/doc/new-doc/developer-guide/removed.txi | 8 ++ src/ecl/configpre.h | 3 - src/h/config.h.in | 7 -- src/h/external.h | 15 +-- 13 files changed, 50 insertions(+), 199 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index c45a377f0..3d7d40851 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -29,6 +29,7 @@ * Pending changes since 16.1.3 ** Enhancements +- unicode names are always linked for unicode builds (~--with-unicode-names~ removed) - numerous bytecodes compiler enhancements - ~ext:run-program~: process streams may be virtual streams (for instance ~*standard-output*~ in slime, or a string-output-stream) @@ -67,6 +68,9 @@ - buildsystem parallel builds work (i.e make -j999) - ECL builds on consoles with unusual encodings on Windows (i.e cp936) ** API changes +- no-op ~--enable-asmapply~ configure option has been removed +- ~profile~ and ~rt~ contribs are now deprecated and disabled by default +- thread-local variable support has been removed (~--with___thread~) - deprecated configure option ~--enable-opcode8~ has been removed - mk-defsystem is not build by default (enable by ~--with-defsystem=yes~) - asdf:make-build accepts ~:init-name~ argument for libraries diff --git a/msvc/ecl/config.h.msvc6 b/msvc/ecl/config.h.msvc6 index 2ec93f60e..dc2d5282d 100755 --- a/msvc/ecl/config.h.msvc6 +++ b/msvc/ecl/config.h.msvc6 @@ -62,9 +62,6 @@ # undef ECL_THREADS #endif -/* __thread thread-local variables? */ -/* #undef WITH___THREAD */ - /* Use Windows's interlocked operations to define compare-and-swap */ #define AO_ASSUME_WINDOWS98 diff --git a/src/aclocal.m4 b/src/aclocal.m4 index 8a8d2dcad..f4e4527ef 100644 --- a/src/aclocal.m4 +++ b/src/aclocal.m4 @@ -831,17 +831,6 @@ AC_MSG_CHECKING([Linker flags]) AC_MSG_RESULT([${LDFLAGS}]) ]) -dnl -------------------------------------------------------------- -dnl Provides a test for the existance of the __thread declaration and -dnl defines WITH___THREAD if it is found -AC_DEFUN([ECL___THREAD],[ -AC_CACHE_CHECK(for __thread local data, ac_cv_ecl___thread, -AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[static __thread void *data;]])], - ac_cv_ecl___thread=yes, - ac_cv_ecl___thread=no)) -dnl We deactivate this test because it seems to slow down ECL A LOT!!! -]) - dnl -------------------------------------------------------------- dnl Determine whether GCC supports backtraces dnl diff --git a/src/c/character.d b/src/c/character.d index 8456bdfb3..28bd2ebc4 100644 --- a/src/c/character.d +++ b/src/c/character.d @@ -487,13 +487,9 @@ cl_char_name(cl_object c) cl_object output; if (code <= 127) { output = ecl_gethash_safe(ecl_make_fixnum(code), cl_core.char_names, ECL_NIL); - } -#ifdef ECL_UNICODE_NAMES - else if (!Null(output = _ecl_ucd_code_to_name(code))) { + } else if (!Null(output = _ecl_ucd_code_to_name(code))) { (void)0; - } -#endif - else { + } else { ecl_base_char name[8]; ecl_base_char *start; name[7] = 0; @@ -525,12 +521,10 @@ cl_name_char(cl_object name) if (c != ECL_NIL) { ecl_return1(the_env, ECL_CODE_CHAR(ecl_fixnum(c))); } -#ifdef ECL_UNICODE_NAMES c = _ecl_ucd_name_to_code(name); if (c != ECL_NIL) { ecl_return1(the_env, cl_code_char(c)); } -#endif if (ecl_stringp(name) && (l = ecl_length(name))) { c = cl_char(name, ecl_make_fixnum(0)); if (l == 1) { diff --git a/src/c/main.d b/src/c/main.d index d9ee8a8eb..bd97c32cf 100755 --- a/src/c/main.d +++ b/src/c/main.d @@ -50,8 +50,6 @@ #if !defined(ECL_THREADS) cl_env_ptr cl_env_p = NULL; -#elif defined(WITH___THREAD) -__thread cl_env_ptr cl_env_p = NULL; #endif const char *ecl_self; diff --git a/src/c/threads/process.d b/src/c/threads/process.d index 08d218008..404dc5700 100755 --- a/src/c/threads/process.d +++ b/src/c/threads/process.d @@ -31,18 +31,13 @@ #include "threads/ecl_atomics.h" #ifdef ECL_WINDOWS_THREADS -# ifndef WITH___THREAD DWORD cl_env_key; -# endif #else -# ifndef WITH___THREAD static pthread_key_t cl_env_key; -# endif #endif /* ECL_WINDOWS_THREADS */ extern void ecl_init_env(struct cl_env_struct *env); -#if !defined(WITH___THREAD) cl_env_ptr ecl_process_env_unsafe(void) { @@ -66,21 +61,16 @@ ecl_process_env(void) return NULL; #endif } -#endif static void ecl_set_process_env(cl_env_ptr env) { -#ifdef WITH___THREAD - cl_env_p = env; -#else -# ifdef ECL_WINDOWS_THREADS +#ifdef ECL_WINDOWS_THREADS TlsSetValue(cl_env_key, env); -# else +#else if (pthread_setspecific(cl_env_key, env)) { ecl_thread_internal_error("pthread_setspecific() failed."); } -# endif #endif } @@ -794,12 +784,10 @@ init_threads(cl_env_ptr env) /* We have to set the environment before any allocation takes place, * so that the interrupt handling code works. */ -#if !defined(WITH___THREAD) -# if defined(ECL_WINDOWS_THREADS) +#if defined(ECL_WINDOWS_THREADS) cl_env_key = TlsAlloc(); -# else +#else pthread_key_create(&cl_env_key, NULL); -# endif #endif ecl_set_process_env(env); diff --git a/src/configure b/src/configure index 3afe601b1..7c773b7ba 100755 --- a/src/configure +++ b/src/configure @@ -781,7 +781,6 @@ with_libffi_libdir with_libgc_prefix with_libgc_incdir with_libgc_libdir -with___thread with_cxx with_tcp with_serve_event @@ -801,7 +800,6 @@ with_sse enable_unicode enable_longdouble enable_c99complex -enable_asmapply enable_smallcons enable_gengc enable_precisegc @@ -810,7 +808,6 @@ with_debug_cflags with_profile_cflags with_extra_files with_init_form -with_unicode_names with_x ' ac_precious_vars='build_alias @@ -1469,13 +1466,11 @@ Optional Features: (no|yes, default=yes) --enable-gmp version of the GMP library (portable|included|system|auto, default=auto) - --enable-unicode={yes|no|32} - enable support for unicode (default=YES) + --enable-unicode={32|16|no} + enable support for unicode (default=32) --enable-longdouble include support for long double (yes|no|auto, default=AUTO) --enable-c99complex include support for C complex type (default=NO) - --enable-asmapply enable optimizations written in assembler, - EXPERIMENTAL (default=NO) --enable-smallcons use small (2 words) cons types. Requires Boehm-Weiser gc. (default=YES) --enable-gengc use generational garbage collection. Requires @@ -1508,8 +1503,6 @@ Optional Packages: path to system LIBGC includes (overrides prefix) --with-libgc-libdir=path path to system LIBGC libraries (overrides prefix) - --with-__thread Enable __thread thread-local variables (yes|NO|auto) - (supported by NPTL-aware glibc and maybe Windows) --with-cxx build ECL using C++ compiler (default=NO) --with-tcp include socket interface (yes|builtin|no, default=YES) @@ -1525,10 +1518,11 @@ Optional Packages: --with-cmp build the compiler (yes|builtin|no, default=YES) --with-bytecmp build the bytecodes compiler (yes|builtin|no, default=YES) - --with-rt include MIT-RT testing environment (yes|builtin|no, - default=YES) - --with-profile include CMUCL's simple profiler (yes|builtin|no, - default=YES if Boehm-Weiser garbage collector used) + --with-rt Deprecated! include MIT-RT testing environment + (yes|builtin|no, default=NO) + --with-profile Deprecated! include CMUCL's simple profiler + (yes|builtin|no, default=YES if Boehm-Weiser garbage + collector used) --with-dffi dynamic foreign function interface (system|included|auto|no, default=AUTO if libffi available) @@ -1547,7 +1541,6 @@ Optional Packages: --with-extra-files list of additional source files (default="") --with-init-form lisp forms to execute at startup (default="(si::top-level t)") - --with-unicode-names link in the database of Unicode names (YES,no) --with-x use the X Window System Some influential environment variables: @@ -2772,15 +2765,6 @@ fi -# Check whether --with-__thread was given. -if test "${with___thread+set}" = set; then : - withval=$with___thread; -else - with___thread=no -fi - - - # Check whether --with-cxx was given. if test "${with_cxx+set}" = set; then : withval=$with_cxx; @@ -2866,7 +2850,7 @@ fi if test "${with_rt+set}" = set; then : withval=$with_rt; else - with_rt=yes + with_rt=no fi @@ -2875,7 +2859,7 @@ fi if test "${with_profile+set}" = set; then : withval=$with_profile; else - with_profile=yes + with_profile=NO fi @@ -2928,7 +2912,7 @@ fi if test "${enable_unicode+set}" = set; then : enableval=$enable_unicode; else - enable_unicode=yes + enable_unicode=32 fi @@ -2948,14 +2932,6 @@ else fi -# Check whether --enable-asmapply was given. -if test "${enable_asmapply+set}" = set; then : - enableval=$enable_asmapply; enable_asmapply=${enableval} -else - enable_asmapply=no -fi - - # Check whether --enable-smallcons was given. if test "${enable_smallcons+set}" = set; then : enableval=$enable_smallcons; enable_smallcons=${enableval} @@ -3023,15 +2999,6 @@ fi -# Check whether --with-unicode-names was given. -if test "${with_unicode_names+set}" = set; then : - withval=$with_unicode_names; -else - with_unicode_names="yes" -fi - - - test -z "${ecldir}" && ecldir="${libdir}/ecl-${PACKAGE_VERSION}" @@ -3041,7 +3008,7 @@ test -z "${docdir}" && docdir="${datadir}/doc/ecl-${PACKAGE_VERSION}" boehm_configure_flags="" - TARGETS='bin/ecl$(EXE)' + TARGETS='bin/ecl$(EXE)' SUBDIRS=c LSP_FEATURES='*features*' @@ -5232,34 +5199,6 @@ SOFTWARE_VERSION="" $as_echo "${SOFTWARE_TYPE} / ${SOFTWARE_VERSION}" >&6; } -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for __thread local data" >&5 -$as_echo_n "checking for __thread local data... " >&6; } -if ${ac_cv_ecl___thread+:} false; then : - $as_echo_n "(cached) " >&6 -else - -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ -static __thread void *data; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_ecl___thread=yes -else - ac_cv_ecl___thread=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_ecl___thread" >&5 -$as_echo "$ac_cv_ecl___thread" >&6; } - - # Extract the first word of "install-info", so it can be a program name with args. @@ -5324,6 +5263,7 @@ fi CPPFLAGS="$CPPFLAGS $GMP_CPPFLAGS" LDFLAGS="$LDFLAGS $GMP_LDFLAGS" + case ${enable_gmp} in #( portable) : with_system_gmp=no; with_c_gmp=yes ;; #( @@ -5983,21 +5923,6 @@ $as_echo "${THREAD_OBJ}" >&6; } $as_echo "#define ECL_THREADS 1" >>confdefs.h - if test "${with___thread}" = "auto"; then - with___thread=${ac_cv_ecl___thread} - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for use of __thread" >&5 -$as_echo_n "checking for use of __thread... " >&6; } - if test "${with___thread}" = "yes"; then - -$as_echo "#define WITH___THREAD 1" >>confdefs.h - - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - fi fi else boehm_configure_flags="${boehm_configure_flags} --disable-threads" @@ -9766,12 +9691,10 @@ $as_echo "#define ECL_UNICODE 21" >>confdefs.h ECL_CHARACTER=$ECL_INT32_T EXTRA_OBJS="$EXTRA_OBJS unicode/ucd.o unicode/ucd-0000.o unicode/ucd-0016.o unicode/ucd-0032.o unicode/ucd-0048.o unicode/ucd-0064.o unicode/ucd-0080.o unicode/ucd-0096.o" fi - if test "${with_unicode_names}" = "yes"; then $as_echo "#define ECL_UNICODE_NAMES 1" >>confdefs.h - EXTRA_OBJS="$EXTRA_OBJS unicode/ucd_names_char.o unicode/ucd_names_codes.o unicode/ucd_names_pair.o unicode/ucd_names_str.o" - fi + EXTRA_OBJS="$EXTRA_OBJS unicode/ucd_names_char.o unicode/ucd_names_codes.o unicode/ucd_names_pair.o unicode/ucd_names_str.o" else CHAR_CODE_LIMIT=256 ECL_CHARACTER="int" diff --git a/src/configure.ac b/src/configure.ac index 79e695b35..162b9b8e3 100644 --- a/src/configure.ac +++ b/src/configure.ac @@ -136,13 +136,6 @@ AC_ARG_WITH(libgc-libdir, [path to system LIBGC libraries (overrides prefix)] ), [LIBGC_LIBDIR="$withval"], []) -dnl -AC_ARG_WITH(__thread, - AS_HELP_STRING( [--with-__thread], - [Enable __thread thread-local variables (yes|NO|auto)] - [(supported by NPTL-aware glibc and maybe Windows)] ), - [], [with___thread=no]) - AC_ARG_WITH(cxx, AS_HELP_STRING( [--with-cxx], [build ECL using C++ compiler (default=NO)]), @@ -192,15 +185,15 @@ AC_ARG_WITH(bytecmp, AC_ARG_WITH(rt, AS_HELP_STRING( [--with-rt], - [include MIT-RT testing environment] - [(yes|builtin|no, default=YES)]), - [], [with_rt=yes]) + [Deprecated! include MIT-RT testing environment] + [(yes|builtin|no, default=NO)]), + [], [with_rt=no]) AC_ARG_WITH(profile, AS_HELP_STRING( [--with-profile], - [include CMUCL's simple profiler] + [Deprecated! include CMUCL's simple profiler] [(yes|builtin|no, default=YES if Boehm-Weiser garbage collector used)]), - [], [with_profile=yes]) + [], [with_profile=NO]) AC_ARG_WITH(dffi, AS_HELP_STRING( [--with-dffi], @@ -232,9 +225,9 @@ AC_ARG_WITH(sse, [], [with_sse="no"]) AC_ARG_ENABLE(unicode, - AS_HELP_STRING( [--enable-unicode={yes|no|32}], - [enable support for unicode (default=YES)]), - [], [enable_unicode=yes]) + AS_HELP_STRING( [--enable-unicode={32|16|no}], + [enable support for unicode (default=32)]), + [], [enable_unicode=32]) AC_ARG_ENABLE(longdouble, AS_HELP_STRING( [--enable-longdouble], @@ -248,12 +241,6 @@ AC_ARG_ENABLE(c99complex, [(default=NO)]), [enable_c99complex=${enableval}], [enable_c99complex=no]) -AC_ARG_ENABLE(asmapply, - AS_HELP_STRING( [--enable-asmapply], - [enable optimizations written in assembler, EXPERIMENTAL] - [(default=NO)]), - [enable_asmapply=${enableval}],[enable_asmapply=no]) - AC_ARG_ENABLE(smallcons, AS_HELP_STRING( [--enable-smallcons], [use small (2 words) cons types. Requires Boehm-Weiser gc.] @@ -300,12 +287,6 @@ AC_ARG_WITH(init-form, [lisp forms to execute at startup (default="(si::top-level t)")]), [with_init_form="${withval}"], [with_init_form=""]) -AC_ARG_WITH(unicode-names, - AS_HELP_STRING( [--with-unicode-names], - [link in the database of Unicode names] - [(YES,no)]), - [],[with_unicode_names="yes"]) - dnl ----------------------------------------------------------------------- dnl Installation directories AC_ARG_VAR([ecldir], [the directory where *.fas files are installed]) @@ -325,7 +306,7 @@ AC_SUBST(ECL_CFLAGS) dnl Similar, but specific to ECL (see src/util/e AC_SUBST(DEBUG_CFLAGS) AC_SUBST(GMP_CPPFLAGS) dnl CFLAGS needed for compiling with system GMP library AC_SUBST(GMP_LDFLAGS) dnl LDFLAGS needed for compiling with system GMP library -AC_SUBST(LIBFFI_LDFLAGS) dnl LDFLAGS needed for compiling with system LIBFFI library +AC_SUBST(LIBFFI_LDFLAGS) dnl LDFLAGS needed for compiling with system LIBFFI library AC_SUBST(FASL_LIBS) dnl Libraries to link into all ecl code but not dnl into helper programs. AC_SUBST(CORE_LIBS, []) dnl Locally compiled libs to link into @@ -365,7 +346,6 @@ dnl Checks which do not come with autoconf (must be after AC_PROG_CC) ECL_MAKE_ABSOLUTE_SRCDIR ECL_CROSS_CONFIG ECL_GUESS_HOST_OS -ECL___THREAD AC_SUBST(INFOEXT) AC_SUBST(INSTALL_INFO) @@ -566,16 +546,6 @@ if test "${enable_threads}" = "yes" ; then AC_MSG_CHECKING([for thread object files]) AC_MSG_RESULT([${THREAD_OBJ}]) AC_DEFINE( [ECL_THREADS], [1], [Userland threads?]) - if test "${with___thread}" = "auto"; then - with___thread=${ac_cv_ecl___thread} - fi - AC_MSG_CHECKING([for use of __thread]) - if test "${with___thread}" = "yes"; then - AC_DEFINE( [WITH___THREAD], [1], [__thread thread-local variables?] ) - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) - fi fi else boehm_configure_flags="${boehm_configure_flags} --disable-threads" @@ -897,10 +867,8 @@ if test "x${enable_unicode}" != "xno"; then ECL_CHARACTER=$ECL_INT32_T EXTRA_OBJS="$EXTRA_OBJS unicode/ucd.o unicode/ucd-0000.o unicode/ucd-0016.o unicode/ucd-0032.o unicode/ucd-0048.o unicode/ucd-0064.o unicode/ucd-0080.o unicode/ucd-0096.o" fi - if test "${with_unicode_names}" = "yes"; then - AC_DEFINE([ECL_UNICODE_NAMES], [1], [Link in the database of Unicode names]) - EXTRA_OBJS="$EXTRA_OBJS unicode/ucd_names_char.o unicode/ucd_names_codes.o unicode/ucd_names_pair.o unicode/ucd_names_str.o" - fi + AC_DEFINE([ECL_UNICODE_NAMES], [1], [Link in the database of Unicode names]) + EXTRA_OBJS="$EXTRA_OBJS unicode/ucd_names_char.o unicode/ucd_names_codes.o unicode/ucd_names_pair.o unicode/ucd_names_str.o" else CHAR_CODE_LIMIT=256 ECL_CHARACTER="int" diff --git a/src/doc/new-doc/developer-guide/objects.txi b/src/doc/new-doc/developer-guide/objects.txi index bafab5d9f..c31b89427 100644 --- a/src/doc/new-doc/developer-guide/objects.txi +++ b/src/doc/new-doc/developer-guide/objects.txi @@ -367,11 +367,12 @@ appropriate size. Signals an error if @var{o} is not of fixnum type. @subheading Characters -@cfindex --enable-unicode [YES|no|32] +@cfindex --enable-unicode [32|16|no] -ECL has two types of characters – one fits in the C type char, while the -other is used when ECL is built with a configure option -@code{--enable-unicode}. +ECL has two types of characters – one fits in the C type char, while +the other is used when ECL is built with a configure option +@code{--enable-unicode} which defaults to 32 (characters are stored in +32bit variable and codepoints have 21-bits). @cppindex ecl_character @cppindex ecl_base_char diff --git a/src/doc/new-doc/developer-guide/removed.txi b/src/doc/new-doc/developer-guide/removed.txi index dd401670f..f28e54506 100644 --- a/src/doc/new-doc/developer-guide/removed.txi +++ b/src/doc/new-doc/developer-guide/removed.txi @@ -59,3 +59,11 @@ module (logic programming) from EcoLisp times. @subheading Hierarchical packages Commit @code{72e422f1b3c4b3c52fa273b961517db943749a8f}. Partially broken. Tests left in package-extensions.lsp. + +@subheading 8-bit opcodes in bytecodes interpreter +Commit @code{c3244b0148ed352808779b07b25c3edddf9d7349}. Works fine but +provides no real gain and is limited to intel. + +@subheading thread local variables +Commit @code{618f6e92e8144f7b95bc36b42a337c212bacc8e7}. Disabled by +default, practically not tested, works on limited number of platforms. diff --git a/src/ecl/configpre.h b/src/ecl/configpre.h index 8a52be027..2aa0c57bd 100644 --- a/src/ecl/configpre.h +++ b/src/ecl/configpre.h @@ -480,9 +480,6 @@ /* Define to 1 if your declares `struct tm'. */ #undef TM_IN_SYS_TIME -/* __thread thread-local variables? */ -#undef WITH___THREAD - /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most significant byte first (like Motorola and SPARC, unlike Intel). */ #if defined AC_APPLE_UNIVERSAL_BUILD diff --git a/src/h/config.h.in b/src/h/config.h.in index 558a31493..6a68669bf 100644 --- a/src/h/config.h.in +++ b/src/h/config.h.in @@ -68,11 +68,6 @@ #undef ECL_RWLOCK #endif -/* __thread thread-local variables? */ -#ifndef openbsd -#undef WITH___THREAD -#endif - /* Use Boehm's garbage collector */ #undef GBC_BOEHM #ifdef GBC_BOEHM @@ -103,8 +98,6 @@ /* Support for Unicode strings */ #undef ECL_UNICODE -/* Link in the Unicode names for all characters (takes ~0.5 Mb) */ -#undef ECL_UNICODE_NAMES /* Allow STREAM operations to work on arbitrary objects */ #undef ECL_CLOS_STREAMS diff --git a/src/h/external.h b/src/h/external.h index 1ac0ecef8..755cbbaa0 100755 --- a/src/h/external.h +++ b/src/h/external.h @@ -158,16 +158,9 @@ struct ecl_interrupt_struct { #define __attribute__(x) #endif #if defined(ECL_THREADS) -# ifdef WITH___THREAD -# define cl_env (*cl_env_p) -# define ecl_process_env() cl_env_p -# define ecl_process_env_unsafe() cl_env_p - extern __thread cl_env_ptr cl_env_p; -# else -# define cl_env (*ecl_process_env()) - extern ECL_API cl_env_ptr ecl_process_env(void) __attribute__((const)); - extern ECL_API cl_env_ptr ecl_process_env_unsafe(void) __attribute__((const)); -# endif +# define cl_env (*ecl_process_env()) + extern ECL_API cl_env_ptr ecl_process_env(void) __attribute__((const)); + extern ECL_API cl_env_ptr ecl_process_env_unsafe(void) __attribute__((const)); #else # define cl_env (*cl_env_p) # define ecl_process_env() cl_env_p @@ -1927,10 +1920,8 @@ extern ECL_API cl_object si_coerce_to_base_string(cl_object x); extern ECL_API cl_object si_coerce_to_extended_string(cl_object x); #define ecl_alloc_simple_extended_string(l) ecl_alloc_simple_vector((l),ecl_aet_ch) extern ECL_API cl_object ecl_alloc_adjustable_extended_string(cl_index l); -# ifdef ECL_UNICODE_NAMES extern ECL_API cl_object _ecl_ucd_code_to_name(ecl_character c); extern ECL_API cl_object _ecl_ucd_name_to_code(cl_object name); -# endif #else #define si_base_char_p cl_characterp #define si_base_string_p cl_stringp