view src/xemacs.def.in.in @ 4952:19a72041c5ed

Mule-izing, various fixes related to char * arguments -------------------- ChangeLog entries follow: -------------------- modules/ChangeLog addition: 2010-01-26 Ben Wing <ben@xemacs.org> * postgresql/postgresql.c: * postgresql/postgresql.c (CHECK_LIVE_CONNECTION): * postgresql/postgresql.c (print_pgresult): * postgresql/postgresql.c (Fpq_conn_defaults): * postgresql/postgresql.c (Fpq_connectdb): * postgresql/postgresql.c (Fpq_connect_start): * postgresql/postgresql.c (Fpq_result_status): * postgresql/postgresql.c (Fpq_res_status): Mule-ize large parts of it. 2010-01-26 Ben Wing <ben@xemacs.org> * ldap/eldap.c (print_ldap): * ldap/eldap.c (allocate_ldap): Use write_ascstring(). src/ChangeLog addition: 2010-01-26 Ben Wing <ben@xemacs.org> * alloc.c: * alloc.c (build_ascstring): * alloc.c (build_msg_cistring): * alloc.c (staticpro_1): * alloc.c (staticpro_name): * alloc.c (staticpro_nodump_1): * alloc.c (staticpro_nodump_name): * alloc.c (unstaticpro_nodump_1): * alloc.c (mcpro_1): * alloc.c (mcpro_name): * alloc.c (object_memory_usage_stats): * alloc.c (common_init_alloc_early): * alloc.c (init_alloc_once_early): * buffer.c (print_buffer): * buffer.c (vars_of_buffer): * buffer.c (common_init_complex_vars_of_buffer): * buffer.c (init_initial_directory): * bytecode.c (invalid_byte_code): * bytecode.c (print_compiled_function): * bytecode.c (mark_compiled_function): * chartab.c (print_table_entry): * chartab.c (print_char_table): * config.h.in: * console-gtk.c: * console-gtk.c (gtk_device_to_console_connection): * console-gtk.c (gtk_semi_canonicalize_console_connection): * console-gtk.c (gtk_canonicalize_console_connection): * console-gtk.c (gtk_semi_canonicalize_device_connection): * console-gtk.c (gtk_canonicalize_device_connection): * console-stream.c (stream_init_frame_1): * console-stream.c (vars_of_console_stream): * console-stream.c (init_console_stream): * console-x.c (x_semi_canonicalize_console_connection): * console-x.c (x_semi_canonicalize_device_connection): * console-x.c (x_canonicalize_device_connection): * console-x.h: * data.c (eq_with_ebola_notice): * data.c (Fsubr_interactive): * data.c (Fnumber_to_string): * data.c (digit_to_number): * device-gtk.c (gtk_init_device): * device-msw.c (print_devmode): * device-x.c (x_event_name): * dialog-msw.c (handle_directory_dialog_box): * dialog-msw.c (handle_file_dialog_box): * dialog-msw.c (vars_of_dialog_mswindows): * doc.c (weird_doc): * doc.c (Fsnarf_documentation): * doc.c (vars_of_doc): * dumper.c (pdump): * dynarr.c: * dynarr.c (Dynarr_realloc): * editfns.c (Fuser_real_login_name): * editfns.c (get_home_directory): * elhash.c (print_hash_table_data): * elhash.c (print_hash_table): * emacs.c (main_1): * emacs.c (vars_of_emacs): * emodules.c: * emodules.c (_emodules_list): * emodules.c (Fload_module): * emodules.c (Funload_module): * emodules.c (Flist_modules): * emodules.c (find_make_module): * emodules.c (attempt_module_delete): * emodules.c (emodules_load): * emodules.c (emodules_doc_subr): * emodules.c (emodules_doc_sym): * emodules.c (syms_of_module): * emodules.c (vars_of_module): * emodules.h: * eval.c (print_subr): * eval.c (signal_call_debugger): * eval.c (build_error_data): * eval.c (signal_error): * eval.c (maybe_signal_error): * eval.c (signal_continuable_error): * eval.c (maybe_signal_continuable_error): * eval.c (signal_error_2): * eval.c (maybe_signal_error_2): * eval.c (signal_continuable_error_2): * eval.c (maybe_signal_continuable_error_2): * eval.c (signal_ferror): * eval.c (maybe_signal_ferror): * eval.c (signal_continuable_ferror): * eval.c (maybe_signal_continuable_ferror): * eval.c (signal_ferror_with_frob): * eval.c (maybe_signal_ferror_with_frob): * eval.c (signal_continuable_ferror_with_frob): * eval.c (maybe_signal_continuable_ferror_with_frob): * eval.c (syntax_error): * eval.c (syntax_error_2): * eval.c (maybe_syntax_error): * eval.c (sferror): * eval.c (sferror_2): * eval.c (maybe_sferror): * eval.c (invalid_argument): * eval.c (invalid_argument_2): * eval.c (maybe_invalid_argument): * eval.c (invalid_constant): * eval.c (invalid_constant_2): * eval.c (maybe_invalid_constant): * eval.c (invalid_operation): * eval.c (invalid_operation_2): * eval.c (maybe_invalid_operation): * eval.c (invalid_change): * eval.c (invalid_change_2): * eval.c (maybe_invalid_change): * eval.c (invalid_state): * eval.c (invalid_state_2): * eval.c (maybe_invalid_state): * eval.c (wtaerror): * eval.c (stack_overflow): * eval.c (out_of_memory): * eval.c (print_multiple_value): * eval.c (issue_call_trapping_problems_warning): * eval.c (backtrace_specials): * eval.c (backtrace_unevalled_args): * eval.c (Fbacktrace): * eval.c (warn_when_safe): * event-Xt.c (modwarn): * event-Xt.c (modbarf): * event-Xt.c (check_modifier): * event-Xt.c (store_modifier): * event-Xt.c (emacs_Xt_format_magic_event): * event-Xt.c (describe_event): * event-gtk.c (dragndrop_data_received): * event-gtk.c (store_modifier): * event-gtk.c (gtk_reset_modifier_mapping): * event-msw.c (dde_eval_string): * event-msw.c (Fdde_alloc_advise_item): * event-msw.c (mswindows_dde_callback): * event-msw.c (FROB): * event-msw.c (emacs_mswindows_format_magic_event): * event-stream.c (external_debugging_print_event): * event-stream.c (execute_help_form): * event-stream.c (vars_of_event_stream): * events.c (print_event_1): * events.c (print_event): * events.c (event_equal): * extents.c (print_extent_1): * extents.c (print_extent): * extents.c (vars_of_extents): * faces.c (print_face): * faces.c (complex_vars_of_faces): * file-coding.c: * file-coding.c (print_coding_system): * file-coding.c (print_coding_system_in_print_method): * file-coding.c (default_query_method): * file-coding.c (find_coding_system): * file-coding.c (make_coding_system_1): * file-coding.c (chain_print): * file-coding.c (undecided_print): * file-coding.c (gzip_print): * file-coding.c (vars_of_file_coding): * file-coding.c (complex_vars_of_file_coding): * fileio.c: * fileio.c (report_file_type_error): * fileio.c (report_error_with_errno): * fileio.c (report_file_error): * fileio.c (barf_or_query_if_file_exists): * fileio.c (vars_of_fileio): * floatfns.c (matherr): * fns.c (print_bit_vector): * fns.c (Fmapconcat): * fns.c (add_suffix_to_symbol): * fns.c (add_prefix_to_symbol): * frame-gtk.c: * frame-gtk.c (Fgtk_window_id): * frame-x.c (def): * frame-x.c (x_cde_transfer_callback): * frame.c: * frame.c (Fmake_frame): * gc.c (show_gc_cursor_and_message): * gc.c (vars_of_gc): * glyphs-eimage.c (png_instantiate): * glyphs-eimage.c (tiff_instantiate): * glyphs-gtk.c (gtk_print_image_instance): * glyphs-msw.c (mswindows_print_image_instance): * glyphs-x.c (x_print_image_instance): * glyphs-x.c (update_widget_face): * glyphs.c (make_string_from_file): * glyphs.c (print_image_instance): * glyphs.c (signal_image_error): * glyphs.c (signal_image_error_2): * glyphs.c (signal_double_image_error): * glyphs.c (signal_double_image_error_2): * glyphs.c (xbm_mask_file_munging): * glyphs.c (pixmap_to_lisp_data): * glyphs.h: * gui.c (gui_item_display_flush_left): * hpplay.c (player_error_internal): * hpplay.c (myHandler): * intl-win32.c: * intl-win32.c (langcode_to_lang): * intl-win32.c (sublangcode_to_lang): * intl-win32.c (Fmswindows_get_locale_info): * intl-win32.c (lcid_to_locale_mule_or_no): * intl-win32.c (mswindows_multibyte_to_unicode_print): * intl-win32.c (complex_vars_of_intl_win32): * keymap.c: * keymap.c (print_keymap): * keymap.c (ensure_meta_prefix_char_keymapp): * keymap.c (Fkey_description): * keymap.c (Ftext_char_description): * lisp.h: * lisp.h (struct): * lisp.h (DECLARE_INLINE_HEADER): * lread.c (Fload_internal): * lread.c (locate_file): * lread.c (read_escape): * lread.c (read_raw_string): * lread.c (read1): * lread.c (read_list): * lread.c (read_compiled_function): * lread.c (init_lread): * lrecord.h: * marker.c (print_marker): * marker.c (marker_equal): * menubar-msw.c (displayable_menu_item): * menubar-x.c (command_builder_operate_menu_accelerator): * menubar.c (vars_of_menubar): * minibuf.c (reinit_complex_vars_of_minibuf): * minibuf.c (complex_vars_of_minibuf): * mule-charset.c (Fmake_charset): * mule-charset.c (complex_vars_of_mule_charset): * mule-coding.c (iso2022_print): * mule-coding.c (fixed_width_query): * number.c (bignum_print): * number.c (ratio_print): * number.c (bigfloat_print): * number.c (bigfloat_finalize): * objects-msw.c: * objects-msw.c (mswindows_color_to_string): * objects-msw.c (mswindows_color_list): * objects-tty.c: * objects-tty.c (tty_font_list): * objects-tty.c (tty_find_charset_font): * objects-xlike-inc.c (xft_find_charset_font): * objects-xlike-inc.c (endif): * print.c: * print.c (write_istring): * print.c (write_ascstring): * print.c (Fterpri): * print.c (Fprint): * print.c (print_error_message): * print.c (print_vector_internal): * print.c (print_cons): * print.c (print_string): * print.c (printing_unreadable_object): * print.c (print_internal): * print.c (print_float): * print.c (print_symbol): * process-nt.c (mswindows_report_winsock_error): * process-nt.c (nt_canonicalize_host_name): * process-unix.c (unix_canonicalize_host_name): * process.c (print_process): * process.c (report_process_error): * process.c (report_network_error): * process.c (make_process_internal): * process.c (Fstart_process_internal): * process.c (status_message): * process.c (putenv_internal): * process.c (vars_of_process): * process.h: * profile.c (vars_of_profile): * rangetab.c (print_range_table): * realpath.c (vars_of_realpath): * redisplay.c (vars_of_redisplay): * search.c (wordify): * search.c (Freplace_match): * sheap.c (sheap_adjust_h): * sound.c (report_sound_error): * sound.c (Fplay_sound_file): * specifier.c (print_specifier): * symbols.c (Fsubr_name): * symbols.c (do_symval_forwarding): * symbols.c (set_default_buffer_slot_variable): * symbols.c (set_default_console_slot_variable): * symbols.c (store_symval_forwarding): * symbols.c (default_value): * symbols.c (defsymbol_massage_name_1): * symbols.c (defsymbol_massage_name_nodump): * symbols.c (defsymbol_massage_name): * symbols.c (defsymbol_massage_multiword_predicate_nodump): * symbols.c (defsymbol_massage_multiword_predicate): * symbols.c (defsymbol_nodump): * symbols.c (defsymbol): * symbols.c (defkeyword): * symbols.c (defkeyword_massage_name): * symbols.c (check_module_subr): * symbols.c (deferror_1): * symbols.c (deferror): * symbols.c (deferror_massage_name): * symbols.c (deferror_massage_name_and_message): * symbols.c (defvar_magic): * symeval.h: * symeval.h (DEFVAR_SYMVAL_FWD): * sysdep.c: * sysdep.c (init_system_name): * sysdll.c: * sysdll.c (MAYBE_PREPEND_UNDERSCORE): * sysdll.c (dll_function): * sysdll.c (dll_variable): * sysdll.c (dll_error): * sysdll.c (dll_open): * sysdll.c (dll_close): * sysdll.c (image_for_address): * sysdll.c (my_find_image): * sysdll.c (search_linked_libs): * sysdll.h: * sysfile.h: * sysfile.h (DEFAULT_DIRECTORY_FALLBACK): * syswindows.h: * tests.c (DFC_CHECK_LENGTH): * tests.c (DFC_CHECK_CONTENT): * tests.c (Ftest_hash_tables): * text.c (vars_of_text): * text.h: * tooltalk.c (tt_opnum_string): * tooltalk.c (tt_message_arg_ival_string): * tooltalk.c (Ftooltalk_default_procid): * tooltalk.c (Ftooltalk_default_session): * tooltalk.c (init_tooltalk): * tooltalk.c (vars_of_tooltalk): * ui-gtk.c (Fdll_load): * ui-gtk.c (type_to_marshaller_type): * ui-gtk.c (Fgtk_import_function_internal): * ui-gtk.c (emacs_gtk_object_printer): * ui-gtk.c (emacs_gtk_boxed_printer): * unicode.c (unicode_to_ichar): * unicode.c (unicode_print): * unicode.c (unicode_query): * unicode.c (vars_of_unicode): * unicode.c (complex_vars_of_unicode): * win32.c: * win32.c (mswindows_report_process_error): * window.c (print_window): * xemacs.def.in.in: BASIC IDEA: Further fixing up uses of char * and CIbyte * to reflect their actual semantics; Mule-izing some code; redoing of the not-yet-working code to handle message translation. Clean up code to handle message-translation (not yet working). Create separate versions of build_msg_string() for working with Ibyte *, CIbyte *, and Ascbyte * arguments. Assert that Ascbyte * arguments are pure-ASCII. Make build_msg_string() be the same as build_msg_ascstring(). Create same three versions of GETTEXT() and DEFER_GETTEXT(). Also create build_defer_string() and variants for the equivalent of DEFER_GETTEXT() when building a string. Remove old CGETTEXT(). Clean up code where GETTEXT(), DEFER_GETTEXT(), build_msg_string(), etc. was being called and introduce some new calls to build_msg_string(), etc. Remove GETTEXT() from calls to weird_doc() -- we assume that the message snarfer knows about weird_doc(). Remove uses of DEFER_GETTEXT() from error messages in sysdep.c and instead use special comments /* @@@begin-snarf@@@ */ and /* @@@end-snarf@@@ */ that the message snarfer presumably knows about. Create build_ascstring() and use it in many instances in place of build_string(). The purpose of having Ascbyte * variants is to make the code more self-documenting in terms of what sort of semantics is expected for char * strings. In fact in the process of looking for uses of build_string(), much improperly Mule-ized was discovered. Mule-ize a lot of code as described in previous paragraph, e.g. in sysdep.c. Make the error functions take Ascbyte * strings and fix up a couple of places where non-pure-ASCII strings were being passed in (file-coding.c, mule-coding.c, unicode.c). (It's debatable whether we really need to make the error functions work this way. It helps catch places where code is written in a way that message translation won't work, but we may well never implement message translation.) Make staticpro() and friends take Ascbyte * strings instead of raw char * strings. Create a const_Ascbyte_ptr dynarr type to describe what's held by staticpro_names[] and friends, create pdump descriptions for const_Ascbyte_ptr dynarrs, and use them in place of specially-crafted staticpro descriptions. Mule-ize certain other functions (e.g. x_event_name) by correcting raw use of char * to Ascbyte *, Rawbyte * or another such type, and raw use of char[] buffers to another type (usually Ascbyte[]). Change many uses of write_c_string() to write_msg_string(), write_ascstring(), etc. Mule-ize emodules.c, emodules.h, sysdll.h. Fix some un-Mule-ized code in intl-win32.c. A comment in event-Xt.c and the limitations of the message snarfer (make-msgfile or whatever) is presumably incorrect -- it should be smart enough to handle function calls spread over more than one line. Clean up code in event-Xt.c that was written awkwardly for this reason. In config.h.in, instead of NEED_ERROR_CHECK_TYPES_INLINES, create a more general XEMACS_DEFS_NEEDS_INLINE_DECLS to indicate when inlined functions need to be declared in xemacs.defs.in.in, and make use of it in xemacs.defs.in.in. We need to do this because postgresql.c now calls qxestrdup(), which is an inline function. Make nconc2() and other such functions MODULE_API and put them in xemacs.defs.in.in since postgresql.c now uses them. Clean up indentation in lread.c and a few other places. In text.h, document ASSERT_ASCTEXT_ASCII() and ASSERT_ASCTEXT_ASCII_LEN(), group together the stand-in encodings and add some more for DLL symbols, function and variable names, etc.
author Ben Wing <ben@xemacs.org>
date Tue, 26 Jan 2010 23:22:30 -0600
parents 9987da5935bd
children 304aebb79cd3
line wrap: on
line source

/* The module API: core symbols that are visible to modules.
   Copyright (C) 2008 Jerry James
   Copyright (C) 2010 Ben Wing.

This file is part of XEmacs.

XEmacs is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.

XEmacs is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
General Public License for more details.

You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING.  If not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA. */

/* The symbol to import/export is on the left.  If the symbol is not
   meant to be used directly, but a macro or inline function in the
   API expands to a form containing the symbol, then the macro or
   inline function is named in a comment to the right. */

#define NOT_C_CODE
#include <config.h>

#if defined (ERROR_CHECK_TYPES) && defined (XEMACS_DEFS_NEEDS_INLINE_DECLS)
#define XEMACS_DEFS_NEEDS_ERROR_CHECK_TYPES_DECLS
#endif

NAME xemacs.exe
EXPORTS
/* Exported functions */
acons
#ifdef NEW_GC
alloc_lrecord			/* alloc_lrecord_type */
lrecord_subr			/* DEFSUBR */
lrecord_symbol_value_forward	/* DEFVAR_SYMVAL_FWD */
#ifdef DEBUG_XEMACS
mcpro_1				/* mcpro */
#endif
mc_alloc			/* DEFSUBR */
#else /* not NEW_GC */
alloc_automanaged_lcrecord	/* old_alloc_lcrecord_type */
#endif /* not NEW_GC */
apply1
#ifdef USE_ASSERTIONS
assert_failed			/* abort(), assert(), etc. */
#endif
build_ext_string
build_intstring
build_string
build_ascstring
build_msg_istring
build_msg_cistring
build_msg_ascstring
#ifdef MULE
bytecount_to_charcount_fun	/* bytecount_to_charcount */
#endif
call0
call1
call2
call3
call4
call5
call6
call7
call8
#ifdef MULE
charcount_to_bytecount_fun	/* charcount_to_bytecount */
#endif
check_quit			/* QUITP */
check_what_happened		/* QUIT */
concat2
concat3
cons3
copy_lisp_object
dead_wrong_type_argument	/* CHECK_xxx */
#ifdef DEBUG_GCPRO
debug_gcpro1			/* GCPRO1 */
debug_gcpro2			/* GCPRO2 */
debug_gcpro3			/* GCPRO3 */
debug_gcpro4			/* GCPRO4 */
debug_gcpro5			/* GCPRO5 */
debug_ungcpro			/* UNGCPRO */
#endif
deferror
deferror_massage_name		/* DEFERROR */
deferror_massage_name_and_message /* DEFERROR_STANDARD */
defkeyword
defkeyword_massage_name		/* DEFKEYWORD */
defsubr				/* DEFSUBR */
defsubr_macro			/* DEFSUBR_MACRO */
defsymbol
defsymbol_nodump		/* == defsymbol in modules */
defsymbol_massage_multiword_predicate /* DEFSYMBOL_MULTIWORD_PREDICATE */
defsymbol_massage_multiword_predicate_nodump /* DEFSYMBOL_MULTIWORD_PREDICATE_NO_DUMP */
defsymbol_massage_name		/* DEFSYMBOL */
defsymbol_massage_name_nodump	/* DEFSYMBOL_NO_DUMP == DEFSYMBOL in modules */
defvar_magic			/* DEFVAR_LISP, DEFVAR_INT, ... */
dfc_coding_system_is_unicode	/* TO_INTERNAL_FORMAT */
dfc_convert_to_external_format	/* TO_EXTERNAL_FORMAT */
dfc_convert_to_internal_format	/* TO_INTERNAL_FORMAT */
egetenv				
#ifndef EMODULES_GATHER_VERSION
emodules_doc_subr		/* CDOCSUBR */
emodules_doc_sym		/* CDOCSYM */
#endif
eputenv
#ifdef DEBUG_XEMACS
eq_with_ebola_notice		/* EQ_WITH_EBOLA_NOTICE */
#endif
#ifdef XEMACS_DEFS_NEEDS_ERROR_CHECK_TYPES_DECLS
error_check_cons
#ifdef HAVE_LDAP
error_check_ldap
#endif
error_check_opaque_ptr
#ifdef HAVE_POSTGRESQL
error_check_pgconn
error_check_pgresult
#endif
error_check_string
#ifdef NEW_GC
error_check_string_direct_data
error_check_string_indirect_data
#endif
#endif /* XEMACS_DEFS_NEEDS_ERROR_CHECK_TYPES_DECLS */
free_opaque_ptr
get_coding_system_for_text_file
intern
invalid_argument
invalid_argument_2
invalid_constant
invalid_operation
invalid_operation_2
list1
list2
list3
list4
list5
list6
make_ext_string
make_float
make_opaque_ptr
make_string
make_vector
maybe_invalid_operation
message
nconc2
new_dfc_convert_copy_data	/* C_STRING_TO_EXTERNAL, ... */
new_dfc_convert_malloc		/* C_STRING_TO_EXTERNAL_MALLOC, ... */
new_dfc_convert_size		/* C_STRING_TO_EXTERNAL, ... */
#ifdef MULE
non_ascii_itext_copy_ichar	/* itext_copy_ichar */
non_ascii_itext_ichar		/* itext_ichar */
non_ascii_set_itext_ichar	/* set_itext_ichar */
non_ascii_valid_ichar_p		/* valid_ichar_p */
#endif
out_of_memory			/* The postgresql module uses this */
printing_unreadable_object
#ifdef XEMACS_DEFS_NEEDS_INLINE_DECLS
qxestrdup
qxestrlen
qxestrcharlen
qxestrcmp
qxestrcmp_ascii
qxestrncmp
qxestrncmp_ascii
qxestrcpy
qxestrcpy_ascii
qxestrncpy
qxestrncpy_ascii
qxestrcat
qxestrcat_ascii
qxestrncat
qxestrncat_ascii
qxestrchr
qxestrrchr
qxestrstr
qxestrcspn
qxestrspn
qxestrpbrk
qxestrtok
qxestrtod
qxestrtol
qxestrtoul
qxeatoi
qxestrupr
qxestrlwr
qxesprintf
qxesscanf_ascii_1
#endif /* XEMACS_DEFS_NEEDS_INLINE_DECLS */
record_unwind_protect
record_unwind_protect_freeing
report_process_error
signal_circular_list_error	/* EXTERNAL_LIST_LOOP* */
signal_circular_property_list_error	/* EXTERNAL_PROPERTY_LIST_LOOP* */
signal_error
signal_ferror
signal_malformed_list_error	/* EXTERNAL_LIST_LOOP* */
signal_malformed_property_list_error	/* EXTERNAL_PROPERTY_LIST_LOOP* */
signal_quit			/* QUIT */
slow_down_interrupts
speed_up_interrupts
#ifndef DEBUG_XEMACS
staticpro
staticpro_nodump
#else
staticpro_1
staticpro_nodump_1
#endif
unbind_to_1			/* unbind_to */
#ifndef DEBUG_XEMACS
unstaticpro_nodump
#else
unstaticpro_nodump_1
#endif
vconcat2
vconcat3
vector1
vector2
vector3
warn_when_safe
#ifdef XEMACS_DEFS_NEEDS_ERROR_CHECK_TYPES_DECLS
wrap_record_1
#endif
write_c_string
write_fmt_string
write_fmt_string_lisp
write_istring
write_ascstring
wrong_type_argument		/* CONCHECK_xxx */
xemacs_c_alloca			/* ALLOCA */
xfree_1				/* xfree */
xmalloc
xmalloc_and_zero
xrealloc
xstrdup
Dynarr_delete_many		/* Dynarr_delete, Dynarr_delete_object, ... */
Dynarr_free
Dynarr_insert_many		/* Dynarr_add_{literal,lisp}_string */
Dynarr_newf			/* Dynarr_new, Dynarr_new2 */
Dynarr_resize			/* Dynarr_add */
Fappend
Fapply
Fbuffer_modified_p
Fbuffer_name
Fcall_with_condition_handler
Fcons
Fcurrent_buffer
Fequal
Feval
Fexpand_abbrev
Ffuncall
Fget
Fkill_buffer
Flength
Flist
Fmake_list
Fmake_string
Fmake_symbol
Fmake_vector
Fnreverse
Fprovide
Fput
Freverse
Fset_buffer
Fsignal
Fthrow
Fvector
#ifdef XEMACS_DEFS_NEEDS_ERROR_CHECK_TYPES_DECLS
XINT_1
#endif

/* Exported variables */
__temp_alloca_size__		/* ALLOCA */
#ifdef DEBUG_XEMACS
debug_issue_ebola_notices	/* EQ_WITH_EBOLA_NOTICE */
#endif
dont_check_for_quit		/* QUITP, QUIT */
gcprolist			/* GCPRO1, GCPRO2, ... */
initialized			/* LOADHIST_ATTACH */
lrecord_cons			/* CONSP */
lrecord_implementations_table	/* RECORD_DUMPABLE */
lrecord_marker			/* MARKERP */
#ifdef USE_KKCC
lrecord_memory_descriptions	/* INIT_LRECORD_IMPLEMENTATION */
#else
lrecord_markers			/* INIT_LRECORD_IMPLEMENTATION */
#endif
lrecord_string			/* STRINGP */
lrecord_symbol	 		/* SYMBOLP */
lrecord_type_count		/* INIT_EXTERNAL_LRECORD_IMPLEMENTATION */
lrecord_uid_counter
need_to_check_c_alloca		/* ALLOCA */
print_readably
quit_check_signal_happened	/* QUITP */
#ifdef ERROR_CHECK_MALLOC
regex_malloc_disallowed		/* REGEX_MALLOC_CHECK */
#endif
#ifdef MULE
rep_bytes_by_first_byte		/* itext_ichar_len, INC_IBYTEPTR, ... */
#endif
something_happened		/* QUIT */
specpdl_depth_counter		/* specpdl_depth */
Qconsp				/* CHECK_CONS */
Qcritical			/* QUIT, QUITP */
Qdelete
Qfile_name			/* Qdll_filename_encoding */
Qintegerp			/* CHECK_INT, CONCHECK_INT */
Qinvalid_argument
Qnative
Qnil
Qnotice
#ifdef USE_UNION_TYPE
Qnull_pointer			/* DEFVAR_xxx */
#endif
Qprocess_error
Qsearch
Qsimple
Qstringp			/* CHECK_STRING */
Qsymbolp			/* CHECK_SYMBOL */
Qsyntax_error
Qt
Qunbound
#ifdef USE_UNION_TYPE
Qzero				/* ZEROP */
#endif
Vinhibit_quit			/* QUIT, QUITP */
Vquit_flag			/* QUIT, QUITP */