comparison src/doc.c @ 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 061e030e3270
children 304aebb79cd3
comparison
equal deleted inserted replaced
4951:de60897044f4 4952:19a72041c5ed
489 return tem; 489 return tem;
490 } 490 }
491 491
492 492
493 static void 493 static void
494 weird_doc (Lisp_Object sym, const CIbyte *weirdness, const CIbyte *type, 494 weird_doc (Lisp_Object sym, const Ascbyte *weirdness, const Ascbyte *type,
495 int pos) 495 int pos)
496 { 496 {
497 if (!strcmp (weirdness, GETTEXT ("duplicate"))) return; 497 if (!strcmp (weirdness, "duplicate")) return;
498 message ("Note: Strange doc (%s) for %s %s @ %d", 498 message ("Note: Strange doc (%s) for %s %s @ %d",
499 weirdness, type, XSTRING_DATA (XSYMBOL (sym)->name), pos); 499 GETTEXT (weirdness), GETTEXT (type),
500 XSTRING_DATA (XSYMBOL (sym)->name), pos);
500 } 501 }
501 502
502 DEFUN ("built-in-symbol-file", Fbuilt_in_symbol_file, 1, 2, 0, /* 503 DEFUN ("built-in-symbol-file", Fbuilt_in_symbol_file, 1, 2, 0, /*
503 Return the C source file built-in symbol SYM comes from. 504 Return the C source file built-in symbol SYM comes from.
504 Don't use this. Use the more general `symbol-file' (q.v.) instead. 505 Don't use this. Use the more general `symbol-file' (q.v.) instead.
787 and make it negative for a user-variable 788 and make it negative for a user-variable
788 (doc starts with a `*'). */ 789 (doc starts with a `*'). */
789 Lisp_Object old = Fget (sym, Qvariable_documentation, Qzero); 790 Lisp_Object old = Fget (sym, Qvariable_documentation, Qzero);
790 if (!ZEROP (old)) 791 if (!ZEROP (old))
791 { 792 {
792 weird_doc (sym, GETTEXT ("duplicate"), 793 weird_doc (sym, "duplicate",
793 GETTEXT ("variable"), pos); 794 "variable", pos);
794 /* In the case of duplicate doc file entries, always 795 /* In the case of duplicate doc file entries, always
795 take the later one. But if the doc is not an int 796 take the later one. But if the doc is not an int
796 (a string, say) leave it alone. */ 797 (a string, say) leave it alone. */
797 if (!INTP (old)) 798 if (!INTP (old))
798 goto weird; 799 goto weird;
828 /src/xemacs/mule/src/abbrev.c:269: warning: `SFexpand_abbrev' defined but not used 829 /src/xemacs/mule/src/abbrev.c:269: warning: `SFexpand_abbrev' defined but not used
829 830
830 So I'm disabling this. --ben */ 831 So I'm disabling this. --ben */
831 832
832 /* May have been #if'ed out or something */ 833 /* May have been #if'ed out or something */
833 weird_doc (sym, GETTEXT ("not fboundp"), 834 weird_doc (sym, "not fboundp",
834 GETTEXT ("function"), pos); 835 "function", pos);
835 #endif 836 #endif
836 goto weird; 837 goto weird;
837 } 838 }
838 else if (SUBRP (fun)) 839 else if (SUBRP (fun))
839 { 840 {
840 /* Lisp_Subrs have a slot for it. */ 841 /* Lisp_Subrs have a slot for it. */
841 if (XSUBR (fun)->doc) 842 if (XSUBR (fun)->doc)
842 { 843 {
843 weird_doc (sym, GETTEXT ("duplicate"), 844 weird_doc (sym, "duplicate",
844 GETTEXT ("subr"), pos); 845 "subr", pos);
845 goto weird; 846 goto weird;
846 } 847 }
847 XSUBR (fun)->doc = (char *) (- XINT (offset)); 848 XSUBR (fun)->doc = (char *) (- XINT (offset));
848 } 849 }
849 else if (CONSP (fun)) 850 else if (CONSP (fun))
857 INTP (XCAR (tem))) 858 INTP (XCAR (tem)))
858 { 859 {
859 Lisp_Object old = XCAR (tem); 860 Lisp_Object old = XCAR (tem);
860 if (!ZEROP (old)) 861 if (!ZEROP (old))
861 { 862 {
862 weird_doc (sym, GETTEXT ("duplicate"), 863 if (EQ (tem, Qlambda))
863 (EQ (tem, Qlambda) 864 weird_doc (sym, "duplicate", "lambda",
864 ? GETTEXT ("lambda") 865 pos);
865 : GETTEXT ("autoload")), 866 else
866 pos); 867 weird_doc (sym, "duplicate", "autoload",
868 pos);
867 /* In the case of duplicate doc file entries, 869 /* In the case of duplicate doc file entries,
868 always take the later one. But if the doc 870 always take the later one. But if the doc
869 is not an int (a string, say) leave it 871 is not an int (a string, say) leave it
870 alone. */ 872 alone. */
871 if (!INTP (old)) 873 if (!INTP (old))
873 } 875 }
874 XCAR (tem) = offset; 876 XCAR (tem) = offset;
875 } 877 }
876 else if (!CONSP (tem)) 878 else if (!CONSP (tem))
877 { 879 {
878 weird_doc (sym, GETTEXT ("!CONSP(tem)"), 880 weird_doc (sym, "!CONSP(tem)", "function", pos);
879 GETTEXT ("function"), pos);
880 goto cont; 881 goto cont;
881 } 882 }
882 else 883 else
883 { 884 {
884 /* DOC string is a string not integer 0 */ 885 /* DOC string is a string not integer 0 */
885 #if 0 886 #if 0
886 weird_doc (sym, GETTEXT ("!INTP(XCAR(tem))"), 887 weird_doc (sym, "!INTP(XCAR(tem))",
887 GETTEXT ("function"), pos); 888 "function", pos);
888 #endif 889 #endif
889 goto cont; 890 goto cont;
890 } 891 }
891 } 892 }
892 else 893 else
893 { 894 {
894 weird_doc (sym, GETTEXT ("not lambda or autoload"), 895 weird_doc (sym, "not lambda or autoload",
895 GETTEXT ("function"), pos); 896 "function", pos);
896 goto cont; 897 goto cont;
897 } 898 }
898 } 899 }
899 else if (COMPILED_FUNCTIONP (fun)) 900 else if (COMPILED_FUNCTIONP (fun))
900 { 901 {
909 have any doc, which is a legal if slightly 910 have any doc, which is a legal if slightly
910 bogus situation, so don't blow up. */ 911 bogus situation, so don't blow up. */
911 912
912 if (! (f->flags.documentationp)) 913 if (! (f->flags.documentationp))
913 { 914 {
914 weird_doc (sym, GETTEXT ("no doc slot"), 915 weird_doc (sym, "no doc slot", "bytecode", pos);
915 GETTEXT ("bytecode"), pos);
916 goto weird; 916 goto weird;
917 } 917 }
918 else 918 else
919 { 919 {
920 Lisp_Object old = 920 Lisp_Object old =
921 compiled_function_documentation (f); 921 compiled_function_documentation (f);
922 if (!ZEROP (old)) 922 if (!ZEROP (old))
923 { 923 {
924 weird_doc (sym, GETTEXT ("duplicate"), 924 weird_doc (sym, "duplicate", "bytecode", pos);
925 GETTEXT ("bytecode"), pos);
926 /* In the case of duplicate doc file entries, 925 /* In the case of duplicate doc file entries,
927 always take the later one. But if the doc is 926 always take the later one. But if the doc is
928 not an int (a string, say) leave it alone. */ 927 not an int (a string, say) leave it alone. */
929 if (!INTP (old)) 928 if (!INTP (old))
930 goto weird; 929 goto weird;
934 } 933 }
935 else 934 else
936 { 935 {
937 /* Otherwise the function is undefined or 936 /* Otherwise the function is undefined or
938 otherwise weird. Ignore it. */ 937 otherwise weird. Ignore it. */
939 weird_doc (sym, GETTEXT ("weird function"), 938 weird_doc (sym, "weird function", "function", pos);
940 GETTEXT ("function"), pos);
941 goto weird; 939 goto weird;
942 } 940 }
943 } 941 }
944 else 942 else
945 { 943 {
1313 DEFVAR_LISP ("internal-doc-file-name", &Vinternal_doc_file_name /* 1311 DEFVAR_LISP ("internal-doc-file-name", &Vinternal_doc_file_name /*
1314 Name of file containing documentation strings of built-in symbols. 1312 Name of file containing documentation strings of built-in symbols.
1315 */ ); 1313 */ );
1316 Vinternal_doc_file_name = Qnil; 1314 Vinternal_doc_file_name = Qnil;
1317 1315
1318 QSsubstitute = build_string (" *substitute*"); 1316 QSsubstitute = build_ascstring (" *substitute*");
1319 staticpro (&QSsubstitute); 1317 staticpro (&QSsubstitute);
1320 } 1318 }