Mercurial > hg > xemacs-beta
diff src/ChangeLog @ 4962:e813cf16c015
merge
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Mon, 01 Feb 2010 05:29:05 -0600 |
parents | 45b6288416e3 b3ce27ca7647 |
children | 4ec0248f9185 |
line wrap: on
line diff
--- a/src/ChangeLog Sun Jan 31 21:11:44 2010 -0600 +++ b/src/ChangeLog Mon Feb 01 05:29:05 2010 -0600 @@ -1023,6 +1023,1632 @@ 2010-01-18 Ben Wing <ben@xemacs.org> + * redisplay-gtk.c: + * redisplay-gtk.c (gtk_bevel_area): + * redisplay-x.c: + * redisplay-x.c (THIS_IS_X): + * redisplay-xlike-inc.c: + * redisplay-xlike-inc.c (XLIKE_text_width_single_run): + * redisplay-xlike-inc.c (XLIKE_text_width): + * redisplay-xlike-inc.c (XLIKE_output_display_block): + * redisplay-xlike-inc.c (XLIKE_get_gc): + * redisplay-xlike-inc.c (XLIKE_output_string): + * redisplay-xlike-inc.c (XLIKE_OUTPUT_XLIKE_PIXMAP): + * redisplay-xlike-inc.c (XLIKE_output_pixmap): + * redisplay-xlike-inc.c (XLIKE_output_vertical_divider): + * redisplay-xlike-inc.c (XLIKE_output_blank): + * redisplay-xlike-inc.c (XLIKE_output_horizontal_line): + * redisplay-xlike-inc.c (XLIKE_clear_region): + * redisplay-xlike-inc.c (XLIKE_output_eol_cursor): + * redisplay-xlike-inc.c (XLIKE_clear_frame_window): + * redisplay-xlike-inc.c (XLIKE_clear_frame): + * redisplay-xlike-inc.c (XLIKE_flash): + * redisplay-xlike-inc.c (console_type_create_redisplay_XLIKE): + Move lots more code into redisplay-xlike-inc.c. Use macros to + isolate the code that differs among X vs. GTK, to reduce the need + for ifdefs in the middle of the code. Now, redisplay-x.c and + redisplay-gtk.c only contain a few functions whose implementation + is completely different from one to the other, or which are not + present at all in one of them. + + GTK code not currently tested, but it has bitrotted somewhat + any. Doing this will help keep it less bitrotty. + + * depend: Regenerate. + +2010-01-18 Ben Wing <ben@xemacs.org> + + * redisplay-xlike-inc.c: + * redisplay-xlike-inc.c (separate_textual_runs_nomule): + * redisplay-xlike-inc.c (separate_textual_runs_xft_nomule): + * redisplay-xlike-inc.c (separate_textual_runs_xft_mule): + * redisplay-xlike-inc.c (separate_textual_runs_mule): + Break separate_textual_runs_* functions from redisplay-x.c. + (Code in redisplay-gtk.c should have been identical but was + bit-rotted.) + + * redisplay-gtk.c: + * redisplay-x.c: + Delete code, replace with include statement. + + * depend: Regenerate. + +2010-01-18 Ben Wing <ben@xemacs.org> + + * lisp.h: + * print.c: + New variable `in_debug_print'. + + * alloc.c: + * alloc.c (free_managed_lcrecord): + If gc_in_progress and in_debug_print, just return instead of + crashing. This only happens when the programmer calls debug_print() + or a variation inside of a debugger, and is probably already + diagnosing a crash. + + * print.c (struct debug_bindings): + * print.c (debug_prin1_exit): + * print.c (debug_prin1): + At entrance, record the old value of in_debug_print in the + debug_bindings, set up an unwind-protect to restore the old value, + and set in_debug_print to 1. In the unwind-protect, restore the + old value. + + +2010-01-16 Ben Wing <ben@xemacs.org> + + * win32.c (mswindows_read_link_1): + Conditionalize COM support on HAVE_MS_WINDOWS because otherwise we + haven't linked with the appropriate libraries. + +2010-01-15 Ben Wing <ben@xemacs.org> + + * doprnt.c (emacs_doprnt_1): + Cosmetic: Use Qunbound, not Qnil as second arg to call to + syntax_error() to get cleaner error message. + +2010-01-15 Ben Wing <ben@xemacs.org> + + * intl-encap-win32.c: + Add `review' lines for all functions seen in the headers that we + process but not yet associated with an encapsulation command. + These will cause an error to be signaled if these functions are + used. + * intl-auto-encap-win32.c: + * intl-auto-encap-win32.h: + Regenerate. + +2010-01-15 Ben Wing <ben@xemacs.org> + + * intl-auto-encap-win32.c: + * intl-auto-encap-win32.c (qxeExtractAssociatedIcon): + * intl-auto-encap-win32.c (qxeShellExecuteEx): + * intl-auto-encap-win32.c (qxeSHFileOperation): + * intl-auto-encap-win32.c (qxeSHQueryRecycleBin): + * intl-auto-encap-win32.c (qxeSHEmptyRecycleBin): + * intl-auto-encap-win32.c (qxeWNetAddConnection): + * intl-auto-encap-win32.c (qxeWNetAddConnection2): + * intl-auto-encap-win32.c (qxeWNetAddConnection3): + * intl-auto-encap-win32.c (qxeWNetCancelConnection): + * intl-auto-encap-win32.c (qxeWNetCancelConnection2): + * intl-auto-encap-win32.c (qxeWNetGetConnection): + * intl-auto-encap-win32.c (qxeWNetUseConnection): + * intl-auto-encap-win32.c (qxeWNetConnectionDialog1): + * intl-auto-encap-win32.c (qxeWNetDisconnectDialog1): + * intl-auto-encap-win32.c (qxeWNetOpenEnum): + * intl-auto-encap-win32.c (qxeWNetEnumResource): + * intl-auto-encap-win32.c (qxeWNetGetUniversalName): + * intl-auto-encap-win32.c (qxeWNetGetUser): + * intl-auto-encap-win32.c (qxeWNetGetProviderName): + * intl-auto-encap-win32.c (qxeWNetGetNetworkInformation): + * intl-auto-encap-win32.c (qxeWNetGetLastError): + * intl-auto-encap-win32.c (qxeMultinetGetConnectionPerformance): + * intl-auto-encap-win32.c (qxeAppendMenu): + * intl-auto-encap-win32.c (qxeCopyAcceleratorTable): + * intl-auto-encap-win32.c (qxeDlgDirSelectComboBoxEx): + * intl-auto-encap-win32.c (qxeEnumDesktops): + * intl-auto-encap-win32.c (qxeEnumWindowStations): + * intl-auto-encap-win32.c (qxeGetClassInfo): + * intl-auto-encap-win32.c (qxeGetClassLong): + * intl-auto-encap-win32.c (qxeGetClassName): + * intl-auto-encap-win32.c (qxeGetKeyboardLayoutName): + * intl-auto-encap-win32.c (qxeGetWindowLong): + * intl-auto-encap-win32.c (qxeGetUserObjectInformation): + * intl-auto-encap-win32.c (qxeGetWindowTextLength): + * intl-auto-encap-win32.c (qxeGrayString): + * intl-auto-encap-win32.c (qxeInsertMenu): + * intl-auto-encap-win32.c (qxeSetProp): + * intl-auto-encap-win32.c (qxeEnumICMProfiles): + * intl-auto-encap-win32.c (qxeExtTextOut): + * intl-auto-encap-win32.c (qxeSetICMProfile): + * intl-auto-encap-win32.c (qxeTextOut): + * intl-auto-encap-win32.c (qxeSHGetPathFromIDList): + * intl-auto-encap-win32.c (qxeFindText): + * intl-auto-encap-win32.c (qxeReplaceText): + * intl-auto-encap-win32.c (qxeImmInstallIME): + * intl-auto-encap-win32.c (qxeImmGetDescription): + * intl-auto-encap-win32.c (qxeImmGetIMEFileName): + * intl-auto-encap-win32.c (qxeImmGetCompositionString): + * intl-auto-encap-win32.c (qxeImmGetCandidateListCount): + * intl-auto-encap-win32.c (qxeImmGetCandidateList): + * intl-auto-encap-win32.c (qxeImmGetGuideLine): + * intl-auto-encap-win32.c (qxeImmConfigureIME): + * intl-auto-encap-win32.c (qxeImmEscape): + * intl-auto-encap-win32.c (qxeImmGetConversionList): + * intl-auto-encap-win32.c (qxeImmRegisterWord): + * intl-auto-encap-win32.c (qxeImmUnregisterWord): + * intl-auto-encap-win32.c (qxeImmEnumRegisterWord): + * intl-auto-encap-win32.c (qxesndPlaySound): + * intl-auto-encap-win32.c (qxePlaySound): + * intl-auto-encap-win32.c (qxewaveOutGetErrorText): + * intl-auto-encap-win32.c (qxewaveInGetErrorText): + * intl-auto-encap-win32.c (qxemidiOutGetErrorText): + * intl-auto-encap-win32.c (qxemidiInGetErrorText): + * intl-auto-encap-win32.c (qxemmioStringToFOURCC): + * intl-auto-encap-win32.c (qxemmioInstallIOProc): + * intl-auto-encap-win32.c (qxemmioOpen): + * intl-auto-encap-win32.c (qxemmioRename): + * intl-auto-encap-win32.c (qxemciSendCommand): + * intl-auto-encap-win32.c (qxemciSendString): + * intl-auto-encap-win32.c (qxemciGetDeviceID): + * intl-auto-encap-win32.c (qxemciGetErrorString): + * intl-auto-encap-win32.h: + * intl-auto-encap-win32.h (qxemciGetErrorString): + Regenerate these files from Cygwin headers. + + * intl-encap-win32.c: + Bracket more functions in HAVE_MS_WINDOWS, to fix build problems + when building --with-msw=no on Cygwin. + + Fixes for Cygwin headers: + -- Comment out IME.H, non-existent in Cygwin. + -- Make MessageBoxIndirect a `no' (don't encapsulate but generate + error if used) because it has a structure parameter that needs + to be A/W split but is declared as FOO*, and our parser can't + split this. + +2010-01-15 Ben Wing <ben@xemacs.org> + + * Makefile.in.in: + Build xemacs-export.o whenever we're on any Windows OS (WIN32_ANY) + instead of only when we build support for the GUI portion of + MS-Windows (HAVE_MS_WINDOWS). + + Cosmetic: Use WIN32_ANY in place of equivalent + (WIN32_NATIVE or CYGWIN). + +2010-01-15 Ben Wing <ben@xemacs.org> + + * emacs.c: + * emacs.c (debug_can_access_memory): + When checking for bad memory, we need to read all bytes from memory; + try even harder to avoid the possibility that a super-optimizing + compiler will optimize away the memory reads. + +2010-01-15 Ben Wing <ben@xemacs.org> + + * syswindows.h (LOCAL_FILE_FORMAT_TO_TSTR): + * syswindows.h (LOCAL_FILE_FORMAT_TO_INTERNAL_MSWIN): + * syswindows.h (INTERNAL_MSWIN_TO_LOCAL_FILE_FORMAT): + Declare some temporary pointer variables const to avoid compile + errors under C++ and/or Visual Studio 6. + +2010-01-24 Aidan Kehoe <kehoea@parhasard.net> + + * number.c (Fnumerator, Fdenominator, Fcanonicalize_number): + Be more careful to return integers in their canonical forms here, + and to give the same answer all the time when treating a rational + that is itself is an integer as a ratio. + +2010-01-24 Aidan Kehoe <kehoea@parhasard.net> + + Fix problems with #'eql, extended number types, and the hash table + implementation; change the Bintegerp bytecode to fixnump semantics + even on bignum builds, since #'integerp can have a fast + implementation in terms of #'fixnump for most of its extant uses, + but not vice-versa. + + * lisp.h: Always #include number.h; we want the macros provided in + it, even if the various number types are not available. + * number.h (NON_FIXNUM_NUMBER_P): New macro, giving 1 when its + argument is of non-immediate number type. Equivalent to FLOATP if + WITH_NUMBER_TYPES is not defined. + + * elhash.c (lisp_object_eql_equal, lisp_object_eql_hash): + Use NON_FIXNUM_NUMBER_P in these functions, instead of FLOATP, + giving more correct behaviour in the presence of the extended + number types. + * bytecode.c (Bfixnump, execute_optimized_program): + Rename Bintegerp to Bfixnump; change its semantics to reflect the + new name on builds with bignum support. + + * data.c (Ffixnump, Fintegerp, syms_of_data, vars_of_data): + Always make #'fixnump available, even on non-BIGNUM builds; + always implement #'integerp in this file, even on BIGNUM builds. + Move most-positive-fixnum, most-negative-fixnum here from + number.c, so they are Lisp constants even on builds without number + types, and attempts to change or bind them error. + Use the NUMBERP and INTEGERP macros even on builds without + extended number types. + * data.c (fixnum_char_or_marker_to_int): + Rename this function from integer_char_or_marker_to_int, to better + reflect the arguments it accepts. + + * number.c (Fevenp, Foddp, syms_of_number): + Never provide #'integerp in this file. Remove #'oddp, + #'evenp; their implementations are overridden by those in cl.el. + * number.c (vars_of_number): + most-positive-fixnum, most-negative-fixnum are no longer here. + +2010-02-01 Ben Wing <ben@xemacs.org> + + * compiler.h: + Create a USED() macro to force unused-var warnings to go away, + in certain cases where it's inconvenient to do otherwise (e.g. + when THIS_IS_GTK in redisplay-xlike-inc.c). + + * console-x.h: + Remove unneeded decls, make some static. + + * redisplay-xlike-inc.c: + * console-xlike-inc.h: New file. Include defns from + redisplay-xlike-inc.c that may be useful in other XLIKE files. + Correct the handling of colors and font-style setting functions + in the xlike defns. Lots of fixes in the GTK-specific defns. + + * depend: Regenerate. + + * event-xlike-inc.c: + * event-xlike-inc.c (USE_UNICODE_MAP): + * event-xlike-inc.c (endif): + * gccache-gtk.c: + * gtk-glue.c (xemacs_list_to_gtklist): + * gtk-glue.c (xemacs_gtklist_to_list): + * gtk-glue.c (FROB): + * gtk-glue.c (face_to_gc): + * gtk-glue.c (face_to_style): + * gtk-glue.c (gdk_event_to_emacs_event): + * gtk-xemacs.h (struct _GtkXEmacs): + * gtk-xemacs.h (struct _GtkXEmacsClass): + * objects-xlike-inc.c: + Cosmetic, comment fixes. + + * glyphs.c (pixmap_to_lisp_data): + Unused var fixes. + + + * gtk-glue.c: + * gccache-gtk.c: + * gtk-xemacs.c: + * gtk-xemacs.h: + * objects-xlike-inc.c: + * ui-gtk.c: + * ui-gtk.h: + * xgccache.c: + * xgccache.c (GC_CACHE_SIZE): + * xgccache.h: + Misc include-file fixes. + + * objects-xlike-inc.c (XFUN): + * objects-xlike-inc.c (xlistfonts_checking_charset): + Combine some ifdeffed stuff using defs in console-xlike-inc.h. + + * redisplay-gtk.c: + * redisplay-gtk.c (THIS_IS_GTK): + * redisplay-gtk.c (XLIKE_bevel_area): + * redisplay-gtk.c (XLIKE_ring_bell): + * redisplay-gtk.c (gdk_draw_text_image): + Fix numerous compile problems. Delete gtk_output_shadows(), + which mostly duplicates generic bevel_modeline(). Fix up + gtk_bevel_modeline() into XLIKE_bevel_area() and make use of + the style var properly to set the appropriate GTK constant. + + * redisplay-x.c: + * redisplay-x.c (XLIKE_window_output_begin): + * redisplay-x.c (XLIKE_window_output_end): + * redisplay-x.c (XLIKE_bevel_area): + * redisplay-x.c (x_output_shadows): + * redisplay-x.c (XLIKE_ring_bell): + Make x_output_shadows be static. Change the defn of various + functions to look like XLIKE_foo() so it matches the calling + convention elsewhere. + + * redisplay-xlike-inc.c: + * redisplay-xlike-inc.c (NEED_GCCACHE_H): + * redisplay-xlike-inc.c (XLIKE_text_width): + * redisplay-xlike-inc.c (XLIKE_get_gc): + * redisplay-xlike-inc.c (XLIKE_text_width_single_run): + * redisplay-xlike-inc.c (XFT_FROB_LISP_COLOR): + * redisplay-xlike-inc.c (XLIKE_output_xlike_pixmap): + * redisplay-xlike-inc.c (XLIKE_output_pixmap): + * redisplay-xlike-inc.c (XLIKE_output_vertical_divider): + * redisplay-xlike-inc.c (XLIKE_flash): + Lots of header fixes. Lots of stuff moved to console-xlike-inc.h. + Use XFUN() to generate function names instead of directly + calling XLIKE_PASTE(). Remove unnecessary prototypes. + Unify calls to text_width funs. Make XLIKE_get_gc non-static + since it's called from gtk. Change the color-function calls + and fill-style-setting calls to match the changes in + console-xlike-inc.h. Use USED() to avoid some warnings. + + * symsinit.h: + Sort the prototypes, and add a fun `sort-symsinit' in a comment + that does the sorting (using sort-regexp-fields). + + * symsinit.h (init_number): + + + * sysgtk.h: New file, wraps the various GTK headers. + * sysgdkx.h: New file, wraps <gtk/gdkx.h>. Keep this separate to + * event-gtk.h: Delete. Combine stuff into console-gtk.h. + help isolate X-specific code from GTK. + + * device-gtk.c: + * event-gtk.c: + * console-gtk.h: + * frame-gtk.c: + * gccache-gtk.c: + * gccache-gtk.h: + * glyphs-gtk.c (gtk_colorize_image_instance): + * glyphs-gtk.h: + * gtk-xemacs.h: + * objects-gtk.c: + * objects-gtk.c (MAX_FONT_COUNT): + * ui-gtk.h: + Use sysgtk.h or sysgdkx.h instead of directly including GTK + headers. Don't include event-gtk.h. + +2010-02-01 Ben Wing <ben@xemacs.org> + + * abbrev.c (abbrev_match_mapper): + * buffer.h (CANON_TABLE_OF): + * buffer.h: + * editfns.c (Fchar_equal): + * minibuf.c (scmp_1): + * text.c (qxestrcasecmp_i18n): + * text.c (qxestrncasecmp_i18n): + * text.c (qxetextcasecmp): + * text.c (qxetextcasecmp_matching): + Create new macro CANONCASE that converts to a canonical mapping + and use it to do caseless comparisons instead of DOWNCASE. + + * alloc.c: + * alloc.c (cons_equal): + * alloc.c (vector_equal): + * alloc.c (string_equal): + * bytecode.c (compiled_function_equal): + * chartab.c (char_table_entry_equal): + * chartab.c (char_table_equal): + * data.c (weak_list_equal): + * data.c (weak_box_equal): + * data.c (ephemeron_equal): + * device-msw.c (equal_devmode): + * elhash.c (hash_table_equal): + * events.c (event_equal): + * extents.c (properties_equal): + * extents.c (extent_equal): + * faces.c: + * faces.c (face_equal): + * faces.c (face_hash): + * floatfns.c (float_equal): + * fns.c: + * fns.c (bit_vector_equal): + * fns.c (plists_differ): + * fns.c (Fplists_eq): + * fns.c (Fplists_equal): + * fns.c (Flax_plists_eq): + * fns.c (Flax_plists_equal): + * fns.c (internal_equal): + * fns.c (internal_equalp): + * fns.c (internal_equal_0): + * fns.c (syms_of_fns): + * glyphs.c (image_instance_equal): + * glyphs.c (glyph_equal): + * glyphs.c (glyph_hash): + * gui.c (gui_item_equal): + * lisp.h: + * lrecord.h (struct lrecord_implementation): + * marker.c (marker_equal): + * number.c (bignum_equal): + * number.c (ratio_equal): + * number.c (bigfloat_equal): + * objects.c (color_instance_equal): + * objects.c (font_instance_equal): + * opaque.c (equal_opaque): + * opaque.c (equal_opaque_ptr): + * rangetab.c (range_table_equal): + * specifier.c (specifier_equal): + Add a `foldcase' param to the equal() method and use it to implement + `equalp' comparisons. Also add to plists_differ(), although we + don't currently use it here. + + Rewrite internal_equalp(). Implement cross-type vector comparisons. + Don't implement our own handling of numeric promotion -- just use + the `=' primitive. + + Add internal_equal_0(), which takes a `foldcase' param and calls + either internal_equal() or internal_equalp(). + + * buffer.h: + When given a 0 for buffer (which is the norm when functions don't + have a specific buffer available), use the current buffer's table, + not `standard-case-table'; otherwise the current settings are + ignored. + + * casetab.c: + * casetab.c (set_case_table): + When handling old-style vectors of 256 in `set-case-table' don't + overwrite the existing table! Instead create a new table and + populate. + + * device-msw.c (sync_printer_with_devmode): + * lisp.h: + * text.c (lisp_strcasecmp_ascii): + Rename lisp_strcasecmp to lisp_strcasecmp_ascii and use + lisp_strcasecmp_i18n for caseless comparisons in some places. + + * elhash.c: + Delete unused lisp_string_hash and lisp_string_equal(). + + * events.h: + * keymap-buttons.h: + * keymap.h: + * keymap.c (keymap_lookup_directly): + * keymap.c (keymap_store): + * keymap.c (FROB): + * keymap.c (key_desc_list_to_event): + * keymap.c (describe_map_mapper): + * keymap.c (INCLUDE_BUTTON_ZERO): + New file keymap-buttons.h; use to handle buttons 1-26 in place of + duplicating code 26 times. + + * frame-gtk.c (allocate_gtk_frame_struct): + * frame-msw.c (mswindows_init_frame_1): + Fix some comments about internal_equal() in redisplay that don't + apply any more. + + * keymap-slots.h: + * keymap.c: + New file keymap-slots.h. Use it to notate the slots in a keymap + structure, similar to frameslots.h or coding-system-slots.h. + + * keymap.c (MARKED_SLOT): + * keymap.c (keymap_equal): + * keymap.c (keymap_hash): + Implement. + +2010-01-31 Aidan Kehoe <kehoea@parhasard.net> + + * symbols.c (Fspecial_operator_p, syms_of_symbols): + * eval.c (print_subr, Finteractive_p, Ffuncall) + (Ffunction_min_args, Ffunction_max_args, vars_of_eval): + * editfns.c: + * data.c (Fsubr_max_args): + * doc.c (Fbuilt_in_symbol_file): + Change "special form" to "special operator" in our sources. + +2010-01-31 Aidan Kehoe <kehoea@parhasard.net> + + * search.c (search_buffer): + When checking the octets of c for identity, don't compare the + same octet with itself. Thank you Ben Wing! + +2010-01-30 Ben Wing <ben@xemacs.org> + + * intl-auto-encap-win32.c: + * intl-auto-encap-win32.c (qxeExtractAssociatedIcon): + * intl-auto-encap-win32.c (qxeExtractIconEx): + * intl-auto-encap-win32.c (qxeCreateMDIWindow): + * intl-auto-encap-win32.c (qxeCreateWindowStation): + * intl-auto-encap-win32.c (qxeDdeCreateStringHandle): + * intl-auto-encap-win32.c (qxeAbortSystemShutdown): + * intl-auto-encap-win32.c (qxeRegConnectRegistry): + * intl-auto-encap-win32.c (qxeGetICMProfile): + * intl-auto-encap-win32.h: + Rebuild. + + * intl-encap-win32.c: + * intl-encap-win32.c (qxeUpdateICMRegKey): + Delete manual definitions of functions with former errors in + Cygwin headers but no longer. Use "override" with some functions + where Cygwin or VS6 accidentally omits a const declaration or + includes an extra one. Use "no" on SendMessageTimeout, which + has an error in the VS6 prototype (you could manually fix this + with an ifdef to split the Cygwin vs. VS6 calls, if we ever + actually used this function). + +2010-01-30 Aidan Kehoe <kehoea@parhasard.net> + + * search.c (search_buffer): + Don't use Boyer-Moore for case-insensitive search if the search + pattern contains repeated Ibytes and the corresponding character + has case information (or, equivalently, if one of its case + equivalents would contain repeated Ibytes). + +2010-01-28 Jerry James <james@xemacs.org> + + * Makefile.in.in: Remove internationalization rules, since the + lib-src programs they invoke are now gone. + +2010-01-29 Ben Wing <ben@xemacs.org> + + * search.c (boyer_moore): Fix longstanding bug involving + searching for Control-1 chars; code was trying to directly + extract the last byte in the textual representation of a char + from an Ichar (and doing it in a buggy fashion) rather than + just converting the Ichar to text and looking at the last byte. + +2010-01-28 Ben Wing <ben@xemacs.org> + + * syswindows.h: + Add typedefs for PCVOID and PDWORD_PTR for non-Cygwin-headers folks + (i.e. Visual Studio et al.). + +2010-01-27 Aidan Kehoe <kehoea@parhasard.net> + + * number.c (Fdenominator): + Oops, change #else to #endif here; thank you Vin Shelton, thank + you Robert Delius Royar. + +2010-01-28 Ben Wing <ben@xemacs.org> + + * device-x.c (x_init_device): + * emodules.c (emodules_load): + * emodules.c (emodules_doc_subr): + * emodules.c (emodules_doc_sym): + * emodules.h: + Make the externally-called functions emodules_doc_sym() and + emodules_doc_subr() take Ascbyte * pointers since they're usually + passed string constants and we can't guarantee the encoding if + it's not ASCII. Fix pointer type in calls to dll_variable(), etc. + +2010-01-27 Ben Wing <ben@xemacs.org> + + * lread.c (vars_of_lread): + Turn on load-ignore-out-of-date-elc-files by default. + +2010-01-27 Ben Wing <ben@xemacs.org> + + * event-unixoid.c (read_event_from_tty_or_stream_desc): + Don't try to write one byte into a four-byte variable, leaving + the rest undefined. This is a recipe for crashing. + +2010-01-27 Ben Wing <ben@xemacs.org> + + * .gdbinit.in.in: + * README: + * abbrev.c (write_abbrev): + * abbrev.c (describe_abbrev): + * alloc.c (make_extstring): + * alloc.c (build_istring): + * alloc.c (build_cistring): + * alloc.c (build_ascstring): + * alloc.c (build_extstring): + * alloc.c (build_msg_istring): + * alloc.c (build_defer_istring): + * buffer.c (Fgenerate_new_buffer_name): + * buffer.c (init_buffer_2): + * console-tty.c (tty_init_console): + * console-x.c (get_display_arg_connection): + * console-x.c (x_perhaps_init_unseen_key_defaults): + * database.c (dbm_map): + * database.c (dbm_get): + * database.c (berkdb_get): + * database.c (berkdb_map): + * device-gtk.c (FROB_PIXMAP): + * device-gtk.c (Fgtk_style_info): + * device-msw.c (msprinter_default_printer): + * device-msw.c (sync_printer_with_devmode): + * device-x.c (coding_system_of_xrm_database): + * device-x.c (x_init_device): + * device-x.c (signal_if_x_error): + * device-x.c (Fx_get_resource): + * device-x.c (Fx_server_vendor): + * device-x.c (Fx_get_font_path): + * dialog-x.c (maybe_run_dbox_text_callback): + * doc.c (extract_object_file_name): + * doc.c (unparesseuxify_doc_string): + * doc.c (get_doc_string): + * doc.c (get_object_file_name): + * doc.c (Fdocumentation): + * doc.c (Fsnarf_documentation): + * doc.c (Fsubstitute_command_keys): + * editfns.c (init_editfns): + * editfns.c (Ftemp_directory): + * editfns.c (Fuser_login_name): + * editfns.c (Fuser_real_login_name): + * editfns.c (Fuser_home_directory): + * editfns.c (Fformat_time_string): + * editfns.c (Fcurrent_time_string): + * editfns.c (Fcurrent_time_zone): + * emacs.c: + * emacs.c (main_1): + * emodules.c (Flist_modules): + * emodules.c (emodules_load): + * emodules.c (emodules_doc_sym): + * emodules.c (vars_of_module): + * event-Xt.c (x_has_keysym): + * event-gtk.c (emacs_gtk_format_magic_event): + * event-gtk.c (dragndrop_data_received): + * event-gtk.c (gtk_reset_key_mapping): + * event-msw.c (mswindows_dde_callback): + * event-msw.c (mswindows_wnd_proc): + * faces.c (complex_vars_of_faces): + * file-coding.c (find_coding_system): + * file-coding.c (setup_eol_coding_systems): + * file-coding.c (make_coding_system_1): + * file-coding.c (snarf_coding_system): + * fileio.c: + * fileio.c (lisp_strerror): + * fileio.c (Ffile_name_directory): + * fileio.c (Ffile_name_as_directory): + * fileio.c (Fdirectory_file_name): + * fileio.c (if): + * fileio.c (Ffile_symlink_p): + * fileio.c (Fencrypt_string): + * fileio.c (Fdecrypt_string): + * filelock.c (lock_file): + * filelock.c (Ffile_locked_p): + * floatfns.c (matherr): + * font-mgr.c (build_fcapi_string): + * font-mgr.c (make_xlfd_font_regexp): + * frame-msw.c (mswindows_window_id): + * frame-msw.c (mswindows_frame_property): + * frame-x.c: + * frame-x.c (color_to_string): + * frame-x.c (maybe_set_frame_title_format): + * frame-x.c (x_cde_transfer_callback): + * frame-x.c (Fx_window_id): + * glade.c (connector): + * glade.c (Fglade_xml_textdomain): + * glade.c (syms_of_glade): + * glyphs-eimage.c (jpeg_instantiate): + * glyphs-eimage.c (png_instantiate): + * glyphs-eimage.c (tiff_instantiate): + * glyphs-gtk.c (font_instantiate): + * glyphs-gtk.c (BUILD_GLYPH_INST): + * glyphs-x.c (x_locate_pixmap_file): + * glyphs-x.c (font_instantiate): + * glyphs-x.c (x_widget_property): + * glyphs-x.c (BUILD_GLYPH_INST): + * glyphs.c (print_image_instance): + * glyphs.c (bitmap_to_lisp_data): + * glyphs.c (pixmap_to_lisp_data): + * gpmevent.c (turn_off_gpm): + * gpmevent.c (Fgpm_enabled_p): + * gpmevent.c (Fgpm_enable): + * gtk-glue.c (__make_string_mapper): + * gtk-glue.c (xemacs_gtklist_to_list): + * gtk-xemacs.c (FROB_FACE): + * gtk-xemacs.c (xemacs_gtk_convert_color): + * hpplay.c (player_error_internal): + * hpplay.c (myHandler): + * insdel.c (buffer_insert_ascstring_1): + * insdel.h: + * insdel.h (buffer_insert_ascstring): + * intl.c (Fcurrent_locale): + * intl.c (Fset_current_locale): + * keymap.c (make_key_description): + * keymap.c (Ftext_char_description): + * keymap.c (describe_command): + * keymap.c (describe_map): + * lisp.h: + * lread.c: + * lread.c (locate_file_in_directory_mapper): + * lread.c (locate_file_construct_suffixed_files_mapper): + * mule-charset.c (Fmake_charset): + * nt.c (Fmswindows_short_file_name): + * nt.c (Fmswindows_long_file_name): + * objects-gtk.c (__get_gtk_font_truename): + * objects-gtk.c (__gtk_font_list_internal): + * objects-msw.c (font_enum_callback_2): + * objects-msw.c (create_hfont_from_font_spec): + * objects-msw.c (mswindows_font_list): + * objects-msw.c (mswindows_font_spec_matches_charset_stage_2): + * objects-tty.c (tty_initialize_font_instance): + * objects-x.c (x_font_truename): + * objects-x.c (x_font_instance_truename): + * objects-x.c (x_font_instance_properties): + * objects-x.c (x_font_list): + * print.c (write_cistring): + * print.c (print_vector_internal): + * print.c (print_cons): + * process-nt.c (nt_canonicalize_host_name): + * process-unix.c (unix_create_process): + * process-unix.c (unix_canonicalize_host_name): + * process.c (status_message): + * process.c (status_notify): + * process.c (init_xemacs_process): + * process.c (syms_of_process): + * redisplay-tty.c (term_get_fkeys_1): + * redisplay-tty.c (CONDITIONAL_REASSIGN): + * search.c (compile_pattern_1): + * select-common.h (selection_data_to_lisp_data): + * select-gtk.c (atom_to_symbol): + * select-gtk.c (PROCESSING_GTK_CODE): + * select-msw.c (mswindows_get_foreign_selection): + * select-x.c (x_atom_to_symbol): + * select-x.c (Fx_get_cutbuffer_internal): + * symbols.c (intern_istring): + * symbols.c (intern): + * symbols.c (intern_converting_underscores_to_dashes): + * symbols.c (Fintern): + * sysdep.c (init_system_name): + * sysdll.c (dll_error): + * sysdll.c (dll_open): + * syswindows.h: + * syswindows.h (build_tstr_string): + * tests.c (DFC_CHECK_LENGTH): + * tests.c (DFC_CHECK_CONTENT): + * tests.c (DFC_RESULT_PASS): + * tests.c (Ftest_data_format_conversion): + * text.c: + * text.c (new_dfc_convert_now_damn_it): + * text.h: + * text.h (build_wext_string): + * tooltalk.c (tt_build_c_string): + * tooltalk.c (Ftooltalk_default_procid): + * tooltalk.c (Ftooltalk_default_session): + * tooltalk.c (init_tooltalk): + * ui-byhand.c (Fgtk_clist_get_text): + * ui-byhand.c (Fgtk_clist_get_pixtext): + * ui-byhand.c (Fgtk_label_get): + * ui-byhand.c (Fgtk_notebook_query_tab_label_packing): + * ui-gtk.c (emacs_gtk_object_printer): + * ui-gtk.c (emacs_gtk_boxed_printer): + * ui-gtk.c (gtk_type_to_lisp): + * ui-gtk.c (symbol_to_enum): + * ui-gtk.c (enum_to_symbol): + * unexaix.c (report_error): + * unexaix.c (ERROR0): + * unexec.c (report_error): + * unexec.c (ERROR0): + * unicode.c (unicode_to_ichar): + * win32.c (tstr_to_local_file_format): + * win32.c (Fmswindows_cygwin_to_win32_path): + * win32.c (struct read_link_hash): + * xemacs.def.in.in: + + Rename: + + write_c_string -> write_cistring + build_intstring -> build_istring + build_string -> build_cistring + build_ext_string -> build_extstring + make_ext_string -> make_extstring + buffer_insert_c_string -> buffer_insert_ascstring + intern_int -> intern_istring + + These functions have been renamed so that the naming harmonizes + with the typedefs for strings: `cistring' along with CIbyte *, + `istring' along with Ibyte *, `extstring' along with Extbyte *, + `ascstring' along with Ascbyte *. + + Also make buffer_insert_ascstring take Ascbyte * and assert + that its argument is ASCII. + +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. + +2010-01-26 Ben Wing <ben@xemacs.org> + + * .gdbinit.in.in: Allow an argument to check-xemacs and check-temacs + to check a specific file. + +2010-01-24 Aidan Kehoe <kehoea@parhasard.net> + + * number.c (Fnumerator, Fdenominator, Fcanonicalize_number): + Be more careful to return integers in their canonical forms here, + and to give the same answer all the time when treating a rational + that is itself is an integer as a ratio. + +2010-01-24 Ben Wing <ben@xemacs.org> + + * chartab.c (decode_char_table_range): + * extents.c (extent_fragment_update): + * objects-msw.c (initialize_font_instance): + * process.c (Fgetenv): + * redisplay-output.c (get_next_display_block): + Fix warnings about possible use of uninitialized vars. + + * compiler.h: + * compiler.h (REGISTER): + * event-stream.c (is_scrollbar_event): + * window.c (window_scrollbar_width): + * window.c (window_scrollbar_height): + * window.c (window_left_window_gutter_width): + * window.c (window_right_window_gutter_width): + Add USED_IF_SCROLLBARS. Use it to fix warnings about unused + vars when --with-scrollbars=no. + + * config.h.in: + Change comment to explain better why DECLARE_INLINE_HEADER + is needed. + + * dialog-msw.c: + * emacs.c (SHEBANG_EXE_PROGNAME_LENGTH): + * emacs.c (main_1): + * event-msw.c (struct mswin_message_debug): + * event-msw.c (debug_output_mswin_message): + * font-mgr.c: + * font-mgr.c (Ffc_config_filename): + * glyphs-msw.c (struct): + * glyphs-msw.c (bitmap_table): + * glyphs-x.c (update_widget_face): + * intl-win32.c (struct lang_to_string): + * intl-win32.c (lang_to_string_table): + * nas.c: + * objects-xlike-inc.c: + * objects-xlike-inc.c (xft_find_charset_font): + * syswindows.h: + * win32.c (mswindows_output_last_error): + Fix g++ 4.3 complaints about implicit conversions of string + literals (const char *) to char *. + + * lisp.h: + G++ 4.3 needs #include <limits> to avoid errors about min/max. + + * lisp.h (disabled_assert_with_message): + Use disabled_assert* whenever asserts are disabled. Rewrite + disabled_assert* to avoid complaints about unused vars by + pretending to use the vars but casting them to (void). + Remove code that defined assert() weirdly if DEBUG_XEMACS but + not USE_ASSERTIONS -- configure sets USE_ASSERTIONS automatically + when DEBUG_XEMACS, and if the user has forced it off, then + so be it. + + * lisp.h (SYMBOL_KEYWORD): + Put some of the combined `extern Lisp_Object's back under + the file they are declared in. Cosmetic fix. + + * number.h: + Remove `extern Lisp_Object' decls that duplicate lisp.h, + since they have different C vs. C++ linkage. + +2010-01-21 Ben Wing <ben@xemacs.org> + + * Makefile.in.in: + Oops. Use two hashes for comments in Makefile.in.in. + +2010-01-20 Ben Wing <ben@xemacs.org> + + * symbols.c: + Add long comment about the types of magic symbols, and the various + declarations that go along with them. + +2010-01-20 Ben Wing <ben@xemacs.org> + + * .gdbinit.in.in: + Moved here from etc/.gdbinit.in. + Put @srcdir@ in various places rather than just `..' whenever + Makefile.in.in does so. Fixes various strange crashes and errors + than occur when using `..'. + * Makefile.in.in (config-changed): + Add target, useful when building both Unicode-internal and + old-Mule workspaces using --srcdir and don't run configure before + switching from one to the other. + +2010-01-20 Ben Wing <ben@xemacs.org> + + * lrecord.h: + * lrecord.h (enum lrecord_type): + * lrecord.h (struct lrecord_implementation): + Clean up description of finalizer methods. Clean up and expand + the long comment at the top of lrecord.h. Add a section about why + New-GC requires a bunch of new internal objects to be created (not + completely understood). + +2010-01-20 Ben Wing <ben@xemacs.org> + + * lisp.h: + Disable error-checking code in Dynarr_at and related lookup + functions. It leads to a crash in the glyph-cachels code under + Cygwin 1.7 and GCC 3.4.4. I assume this is a compiler bug since + the code in question doesn't (or shouldn't) modify anything. + Changing the code from inline to non-inline didn't help. + +2010-01-19 Ben Wing <ben@xemacs.org> + + * console-impl.h (struct console_methods): + * console-stream.c (stream_text_width): + * redisplay-msw.c (mswindows_output_string): + * redisplay-msw.c (mswindows_text_width): + * redisplay-tty.c (tty_text_width): + * redisplay-xlike-inc.c (XLIKE_text_width): + * redisplay-xlike-inc.c (XLIKE_output_string): + * redisplay.c: + * redisplay.c (redisplay_window_text_width_ichar_string): + * redisplay.c (redisplay_text_width_string): + Change the text_width method to take a window instead of a frame. + Needed for Unicode-internal. + +2010-01-18 Ben Wing <ben@xemacs.org> + + * redisplay-gtk.c: + * redisplay-gtk.c (gtk_bevel_area): + * redisplay-x.c: + * redisplay-x.c (THIS_IS_X): + * redisplay-xlike-inc.c: + * redisplay-xlike-inc.c (XLIKE_text_width_single_run): + * redisplay-xlike-inc.c (XLIKE_text_width): + * redisplay-xlike-inc.c (XLIKE_output_display_block): + * redisplay-xlike-inc.c (XLIKE_get_gc): + * redisplay-xlike-inc.c (XLIKE_output_string): + * redisplay-xlike-inc.c (XLIKE_OUTPUT_XLIKE_PIXMAP): + * redisplay-xlike-inc.c (XLIKE_output_pixmap): + * redisplay-xlike-inc.c (XLIKE_output_vertical_divider): + * redisplay-xlike-inc.c (XLIKE_output_blank): + * redisplay-xlike-inc.c (XLIKE_output_horizontal_line): + * redisplay-xlike-inc.c (XLIKE_clear_region): + * redisplay-xlike-inc.c (XLIKE_output_eol_cursor): + * redisplay-xlike-inc.c (XLIKE_clear_frame_window): + * redisplay-xlike-inc.c (XLIKE_clear_frame): + * redisplay-xlike-inc.c (XLIKE_flash): + * redisplay-xlike-inc.c (console_type_create_redisplay_XLIKE): + Move lots more code into redisplay-xlike-inc.c. Use macros to + isolate the code that differs among X vs. GTK, to reduce the need + for ifdefs in the middle of the code. Now, redisplay-x.c and + redisplay-gtk.c only contain a few functions whose implementation + is completely different from one to the other, or which are not + present at all in one of them. + + GTK code not currently tested, but it has bitrotted somewhat + any. Doing this will help keep it less bitrotty. + + * depend: Regenerate. + +2010-01-18 Ben Wing <ben@xemacs.org> + + * redisplay-xlike-inc.c: + * redisplay-xlike-inc.c (separate_textual_runs_nomule): + * redisplay-xlike-inc.c (separate_textual_runs_xft_nomule): + * redisplay-xlike-inc.c (separate_textual_runs_xft_mule): + * redisplay-xlike-inc.c (separate_textual_runs_mule): + Break separate_textual_runs_* functions from redisplay-x.c. + (Code in redisplay-gtk.c should have been identical but was + bit-rotted.) + + * redisplay-gtk.c: + * redisplay-x.c: + Delete code, replace with include statement. + + * depend: Regenerate. + +2010-01-18 Ben Wing <ben@xemacs.org> + + * lisp.h: + * print.c: + New variable `in_debug_print'. + + * alloc.c: + * alloc.c (free_managed_lcrecord): + If gc_in_progress and in_debug_print, just return instead of + crashing. This only happens when the programmer calls debug_print() + or a variation inside of a debugger, and is probably already + diagnosing a crash. + + * print.c (struct debug_bindings): + * print.c (debug_prin1_exit): + * print.c (debug_prin1): + At entrance, record the old value of in_debug_print in the + debug_bindings, set up an unwind-protect to restore the old value, + and set in_debug_print to 1. In the unwind-protect, restore the + old value. + + +2010-01-16 Ben Wing <ben@xemacs.org> + + * win32.c (mswindows_read_link_1): + Conditionalize COM support on HAVE_MS_WINDOWS because otherwise we + haven't linked with the appropriate libraries. + +2010-01-15 Ben Wing <ben@xemacs.org> + + * doprnt.c (emacs_doprnt_1): + Cosmetic: Use Qunbound, not Qnil as second arg to call to + syntax_error() to get cleaner error message. + +2010-01-15 Ben Wing <ben@xemacs.org> + + * intl-encap-win32.c: + Add `review' lines for all functions seen in the headers that we + process but not yet associated with an encapsulation command. + These will cause an error to be signaled if these functions are + used. + * intl-auto-encap-win32.c: + * intl-auto-encap-win32.h: + Regenerate. + +2010-01-15 Ben Wing <ben@xemacs.org> + + * intl-auto-encap-win32.c: + * intl-auto-encap-win32.c (qxeExtractAssociatedIcon): + * intl-auto-encap-win32.c (qxeShellExecuteEx): + * intl-auto-encap-win32.c (qxeSHFileOperation): + * intl-auto-encap-win32.c (qxeSHQueryRecycleBin): + * intl-auto-encap-win32.c (qxeSHEmptyRecycleBin): + * intl-auto-encap-win32.c (qxeWNetAddConnection): + * intl-auto-encap-win32.c (qxeWNetAddConnection2): + * intl-auto-encap-win32.c (qxeWNetAddConnection3): + * intl-auto-encap-win32.c (qxeWNetCancelConnection): + * intl-auto-encap-win32.c (qxeWNetCancelConnection2): + * intl-auto-encap-win32.c (qxeWNetGetConnection): + * intl-auto-encap-win32.c (qxeWNetUseConnection): + * intl-auto-encap-win32.c (qxeWNetConnectionDialog1): + * intl-auto-encap-win32.c (qxeWNetDisconnectDialog1): + * intl-auto-encap-win32.c (qxeWNetOpenEnum): + * intl-auto-encap-win32.c (qxeWNetEnumResource): + * intl-auto-encap-win32.c (qxeWNetGetUniversalName): + * intl-auto-encap-win32.c (qxeWNetGetUser): + * intl-auto-encap-win32.c (qxeWNetGetProviderName): + * intl-auto-encap-win32.c (qxeWNetGetNetworkInformation): + * intl-auto-encap-win32.c (qxeWNetGetLastError): + * intl-auto-encap-win32.c (qxeMultinetGetConnectionPerformance): + * intl-auto-encap-win32.c (qxeAppendMenu): + * intl-auto-encap-win32.c (qxeCopyAcceleratorTable): + * intl-auto-encap-win32.c (qxeDlgDirSelectComboBoxEx): + * intl-auto-encap-win32.c (qxeEnumDesktops): + * intl-auto-encap-win32.c (qxeEnumWindowStations): + * intl-auto-encap-win32.c (qxeGetClassInfo): + * intl-auto-encap-win32.c (qxeGetClassLong): + * intl-auto-encap-win32.c (qxeGetClassName): + * intl-auto-encap-win32.c (qxeGetKeyboardLayoutName): + * intl-auto-encap-win32.c (qxeGetWindowLong): + * intl-auto-encap-win32.c (qxeGetUserObjectInformation): + * intl-auto-encap-win32.c (qxeGetWindowTextLength): + * intl-auto-encap-win32.c (qxeGrayString): + * intl-auto-encap-win32.c (qxeInsertMenu): + * intl-auto-encap-win32.c (qxeSetProp): + * intl-auto-encap-win32.c (qxeEnumICMProfiles): + * intl-auto-encap-win32.c (qxeExtTextOut): + * intl-auto-encap-win32.c (qxeSetICMProfile): + * intl-auto-encap-win32.c (qxeTextOut): + * intl-auto-encap-win32.c (qxeSHGetPathFromIDList): + * intl-auto-encap-win32.c (qxeFindText): + * intl-auto-encap-win32.c (qxeReplaceText): + * intl-auto-encap-win32.c (qxeImmInstallIME): + * intl-auto-encap-win32.c (qxeImmGetDescription): + * intl-auto-encap-win32.c (qxeImmGetIMEFileName): + * intl-auto-encap-win32.c (qxeImmGetCompositionString): + * intl-auto-encap-win32.c (qxeImmGetCandidateListCount): + * intl-auto-encap-win32.c (qxeImmGetCandidateList): + * intl-auto-encap-win32.c (qxeImmGetGuideLine): + * intl-auto-encap-win32.c (qxeImmConfigureIME): + * intl-auto-encap-win32.c (qxeImmEscape): + * intl-auto-encap-win32.c (qxeImmGetConversionList): + * intl-auto-encap-win32.c (qxeImmRegisterWord): + * intl-auto-encap-win32.c (qxeImmUnregisterWord): + * intl-auto-encap-win32.c (qxeImmEnumRegisterWord): + * intl-auto-encap-win32.c (qxesndPlaySound): + * intl-auto-encap-win32.c (qxePlaySound): + * intl-auto-encap-win32.c (qxewaveOutGetErrorText): + * intl-auto-encap-win32.c (qxewaveInGetErrorText): + * intl-auto-encap-win32.c (qxemidiOutGetErrorText): + * intl-auto-encap-win32.c (qxemidiInGetErrorText): + * intl-auto-encap-win32.c (qxemmioStringToFOURCC): + * intl-auto-encap-win32.c (qxemmioInstallIOProc): + * intl-auto-encap-win32.c (qxemmioOpen): + * intl-auto-encap-win32.c (qxemmioRename): + * intl-auto-encap-win32.c (qxemciSendCommand): + * intl-auto-encap-win32.c (qxemciSendString): + * intl-auto-encap-win32.c (qxemciGetDeviceID): + * intl-auto-encap-win32.c (qxemciGetErrorString): + * intl-auto-encap-win32.h: + * intl-auto-encap-win32.h (qxemciGetErrorString): + Regenerate these files from Cygwin headers. + + * intl-encap-win32.c: + Bracket more functions in HAVE_MS_WINDOWS, to fix build problems + when building --with-msw=no on Cygwin. + + Fixes for Cygwin headers: + -- Comment out IME.H, non-existent in Cygwin. + -- Make MessageBoxIndirect a `no' (don't encapsulate but generate + error if used) because it has a structure parameter that needs + to be A/W split but is declared as FOO*, and our parser can't + split this. + +2010-01-15 Ben Wing <ben@xemacs.org> + + * Makefile.in.in: + Build xemacs-export.o whenever we're on any Windows OS (WIN32_ANY) + instead of only when we build support for the GUI portion of + MS-Windows (HAVE_MS_WINDOWS). + + Cosmetic: Use WIN32_ANY in place of equivalent + (WIN32_NATIVE or CYGWIN). + +2010-01-15 Ben Wing <ben@xemacs.org> + + * emacs.c: + * emacs.c (debug_can_access_memory): + When checking for bad memory, we need to read all bytes from memory; + try even harder to avoid the possibility that a super-optimizing + compiler will optimize away the memory reads. + +2010-01-15 Ben Wing <ben@xemacs.org> + + * syswindows.h (LOCAL_FILE_FORMAT_TO_TSTR): + * syswindows.h (LOCAL_FILE_FORMAT_TO_INTERNAL_MSWIN): + * syswindows.h (INTERNAL_MSWIN_TO_LOCAL_FILE_FORMAT): + Declare some temporary pointer variables const to avoid compile + errors under C++ and/or Visual Studio 6. + +2010-01-27 Ben Wing <ben@xemacs.org> + + * casetab.c: Typo in comment. + +2010-01-18 Ben Wing <ben@xemacs.org> + + * redisplay-gtk.c: + * redisplay-gtk.c (gtk_bevel_area): + * redisplay-x.c: + * redisplay-x.c (THIS_IS_X): + * redisplay-xlike-inc.c: + * redisplay-xlike-inc.c (XLIKE_text_width_single_run): + * redisplay-xlike-inc.c (XLIKE_text_width): + * redisplay-xlike-inc.c (XLIKE_output_display_block): + * redisplay-xlike-inc.c (XLIKE_get_gc): + * redisplay-xlike-inc.c (XLIKE_output_string): + * redisplay-xlike-inc.c (XLIKE_OUTPUT_XLIKE_PIXMAP): + * redisplay-xlike-inc.c (XLIKE_output_pixmap): + * redisplay-xlike-inc.c (XLIKE_output_vertical_divider): + * redisplay-xlike-inc.c (XLIKE_output_blank): + * redisplay-xlike-inc.c (XLIKE_output_horizontal_line): + * redisplay-xlike-inc.c (XLIKE_clear_region): + * redisplay-xlike-inc.c (XLIKE_output_eol_cursor): + * redisplay-xlike-inc.c (XLIKE_clear_frame_window): + * redisplay-xlike-inc.c (XLIKE_clear_frame): + * redisplay-xlike-inc.c (XLIKE_flash): + * redisplay-xlike-inc.c (console_type_create_redisplay_XLIKE): + Move lots more code into redisplay-xlike-inc.c. Use macros to + isolate the code that differs among X vs. GTK, to reduce the need + for ifdefs in the middle of the code. Now, redisplay-x.c and + redisplay-gtk.c only contain a few functions whose implementation + is completely different from one to the other, or which are not + present at all in one of them. + + GTK code not currently tested, but it has bitrotted somewhat + any. Doing this will help keep it less bitrotty. + + * depend: Regenerate. + +2010-01-18 Ben Wing <ben@xemacs.org> + + * redisplay-xlike-inc.c: + * redisplay-xlike-inc.c (separate_textual_runs_nomule): + * redisplay-xlike-inc.c (separate_textual_runs_xft_nomule): + * redisplay-xlike-inc.c (separate_textual_runs_xft_mule): + * redisplay-xlike-inc.c (separate_textual_runs_mule): + Break separate_textual_runs_* functions from redisplay-x.c. + (Code in redisplay-gtk.c should have been identical but was + bit-rotted.) + + * redisplay-gtk.c: + * redisplay-x.c: + Delete code, replace with include statement. + + * depend: Regenerate. + +2010-01-18 Ben Wing <ben@xemacs.org> + * lisp.h: * print.c: New variable `in_debug_print'.