1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-31 09:20:54 -08:00
Commit graph

33271 commits

Author SHA1 Message Date
Dmitry Antipov
7961135cf7 Fix last change to allow compilation with low optimization levels.
* intervals.c (INTERVALS_INLINE): Define to EXTERN_INLINE.
Reported by Jan Djärv <jan.h.d@swipnet.se>.
2012-08-10 17:24:20 +04:00
Dmitry Antipov
42b3a44436 Use common inline syntax in intervals.h.
* intervals.h (INTERVALS_INLINE): New macro.
Change all users from LISP_INLINE.
2012-08-10 13:37:43 +04:00
Dmitry Antipov
9fb0c95731 Define Qnone once for all platforms.
* frame.c (Qnone): Define here.
(syms_of_frame): DEFSYM it.
* lisp.h (Qnone): New declaration.
* nsfns.m, nsterm.h, nsterm.m, w32fns.c, w32font.c:
* xfns.c: Remove duplication.  Adjust users.
2012-08-10 13:24:03 +04:00
Dmitry Antipov
65e8ee5293 Remove unused macros from intervals.h.
* intervals.h (MERGE_INSERTIONS, DISPLAY_INVISIBLE_GLYPH): Remove.
* intervals.c: Adjust comment.
2012-08-10 13:04:19 +04:00
Eli Zaretskii
9b855fd632 Improve commit in 2012-08-10T06:54:37Z!eliz@gnu.org.
src/w32fns.c <w32_unicode_gui>: New static variable.
 (globals_of_w32fns): Initialize it according to os_subtype.
 (w32_init_class, w32_msg_pump, w32_wnd_proc): Use it instead of
 testing os_subtype.
2012-08-10 10:16:58 +03:00
Glenn Morris
39cb9e56e9 ChangeLog fixes 2012-08-10 00:00:40 -07:00
Eli Zaretskii
d30be705df Fix bug #10299 with Unicode characters sent on MS-Windows by MSKLC.
src/w32fns.c (INIT_WINDOW_CLASS): New macro.
 (w32_init_class): Use it to initialize the Emacs class with either
 ANSI or Unicode API calls.
 (w32_msg_pump): Call GetMessageW and DispatchMessageW on NT and
 later.
 (w32_wnd_proc): If the character code sent by WM_CHAR or
 WM_SYSCHAR is above 255, post a WM_UNICHAR message, not the
 original message.  Call DefWindowProcW on NT and later.
2012-08-10 09:54:37 +03:00
Glenn Morris
4b94e8cfe5 * src/Makefile.in (config_h): Fix conf_post.h out-of-tree build location. 2012-08-09 20:47:21 -04:00
Glenn Morris
9374581a24 Move DIRECTORY_SEP from lisp.h to config.h
* configure.ac (DIRECTORY_SEP): Move here from src/lisp.h.

* src/lisp.h (DIRECTORY_SEP): Let configure set it.

* nt/config.nt (DIRECTORY_SEP): Move here from src/lisp.h.

* lib-src/movemail.c (DIRECTORY_SEP, IS_DIRECTORY_SEP):
* lib-src/make-docfile.c (DIRECTORY_SEP, IS_DIRECTORY_SEP):
* lib-src/emacsclient.c (DIRECTORY_SEP, IS_DIRECTORY_SEP, IS_DEVICE_SEP):
Remove (they are in config.h now).
2012-08-09 20:02:10 -04:00
Dmitry Antipov
a275282808 Use TSET for write access to Lisp_Object slots of struct terminal.
* termhooks.h (TSET): New macro.
* coding.c, terminal.c, xselect.c: Adjust users.
2012-08-09 09:14:23 +04:00
Stefan Monnier
cc92c454ad * src/xdisp.c (safe_eval_handler): Remove prototype. Receive args describing
the failing expression, include them in the error message.
* src/eval.c (internal_condition_case_n): Pass nargs and args to hfun.
* src/lisp.h (internal_condition_case_n): Update declaration.
2012-08-08 15:53:44 -04:00
Glenn Morris
08bb53058a Tiny comment updates 2012-08-08 08:53:52 -07:00
Dmitry Antipov
4cb3e6b38a Inline functions to examine and change buffer overlays.
* buffer.c (unchain_both): New function.
* buffer.h (buffer_get_overlays, buffer_set_overlays):
(buffer_has_overlays): New function.
(enum overlay_type): New enum.
* alloc.c, buffer.c, editfns.c, fileio.c, indent.c:
* insdel.c, intervals.c, print.c, xdisp.c: Adjust users.
2012-08-08 18:47:11 +04:00
Dmitry Antipov
8707c1e56c Inline functions to examine and change buffer intervals.
* alloc.c (mark_interval_tree): Remove.
(MARK_INTERVAL_TREE): Simplify.
(UNMARK_BALANCE_INTERVALS): Remove.  Adjust users.
* intervals.c (buffer_balance_intervals): New function.
(graft_intervals_into_buffer): Adjust indentation.
(set_intervals_multibyte): Simplify.
* buffer.h (BUF_INTERVALS): Remove.
(buffer_get_intervals, buffer_set_intervals): New function.
* alloc.c, buffer.c, editfns.c, fileio.c, indent.c, insdel.c:
* intervals.c, textprop.c: Adjust users.
2012-08-08 16:12:40 +04:00
Dmitry Antipov
ad8c997f72 Inline functions to examine and change string intervals.
* lisp.h (STRING_INTERVALS, STRING_SET_INTERVALS): Remove.
(string_get_intervals, string_set_intervals): New function.
* alloc.c, buffer.c, editfns.c, fns.c, insdel.c, intervals.c:
* lread.c, print.c, textprop.c: Adjust users.
2012-08-08 14:23:04 +04:00
Glenn Morris
32ac3a6ba3 Merge language/persian.el into language/misc-lang.el
* lisp/language/persian.el: Remove file.
* lisp/language/misc-lang.el: Move non-unique part of persian.el here.
* lisp/loadup.el: Remove language/persian.

* src/lisp.mk (lisp): Remove language/persian.elc.

* etc/NEWS: Improve entry.
2012-08-08 00:19:58 -07:00
Dmitry Antipov
77c7bcb115 Cleanup intervals.
* intervals.h (NULL_INTERVAL, DEFAULT_INTERVAL): Remove.
(NULL_INTERVAL_P): Likewise.  Adjust users.
(FRONT_STICKY_P, END_NONSTICKY_P, FRONT_NONSTICKY_P): Adjust
comment.  Move under #if 0.
* alloc.c, buffer.c, editfns.c, fns.c, insdel.c, intervals.c:
* print.c, syntax.c, textprop.c, xdisp.c: Adjust users.
2012-08-08 10:11:29 +04:00
Dmitry Antipov
9c08a8d4b5 Check total length of intervals with eassert.
* intervals.h (CHECK_TOTAL_LENGTH): Remove.
* intervals.c: Change all users to eassert.
2012-08-08 09:23:02 +04:00
Eli Zaretskii
26d16b356c Fix .gdbinit to match changes with INTERNAL_FIELD.
src/.gdbinit (xframe, xwindow, nextcons, xcar, xcdr, xlist): Rename
 fields to match removal of FGET and WGET and disuse of
 INTERNAL_FIELD in Lisp_Cons.
2012-08-07 19:53:38 +03:00
Dmitry Antipov
c644523bd8 Revert and cleanup Lisp_Cons, Lisp_Misc and Lisp_Symbol things.
* src/lisp.h (struct Lisp_Symbol): Change xname to meaningful
name since all xname users are fixed long time ago.  Do not use
INTERNAL_FIELD.
(set_symbol_name, set_symbol_function, set_symbol_plist):
(set_symbol_next, set_overlay_plist): New function.
(struct Lisp_Cons): Do not use INTERNAL_FIELD.
(struct Lisp_Overlay): Likewise.
(CVAR, MVAR, SVAR): Remove.
* src/alloc.c, src/buffer.c, src/buffer.h, src/bytecode.c:
* src/cmds.c, src/data.c, src/doc.c, src/eval.c, src/fns.c:
* src/keyboard.c, src/lread.c, src/nsselect.m, src/xterm.c:
Adjust users.
* src/.gdbinit: Change to use name field of struct Lisp_Symbol
where appropriate.
* admin/coccinelle/overlay.cocci, admin/coccinelle/symbol.cocci:
Remove.
2012-08-07 17:37:21 +04:00
Dmitry Antipov
6a3d20cc46 Basic functions to set Lisp_Object and pointer slots of intervals.
* intervals.h (interval_set_parent, interval_set_object):
(interval_set_left, interval_set_right, interval_set_plist):
(interval_copy_parent): New function.
(SET_INTERVAL_OBJECT, SET_INTERVAL_PARENT, INTERVAL_PTR_SIZE): Remove.
(RESET_INTERVAL, COPY_INTERVAL_CACHE, MERGE_INTERVAL_CACHE): Adjust
indentation.
(INTERVAL_SIZE): Remove.  Adjust users.
* alloc.c, intervals.c, lread.c, textprop.c: Use new functions.
2012-08-07 15:28:41 +04:00
Dmitry Antipov
4d2b044cdc Drop PGET and revert read access to Lisp_Objects slots of Lisp_Process.
* process.h (PGET): Remove.
(struct Lisp_Process): Do not use INTERNAL_FIELD.
* gnutls.c, print.c, process.c, sysdep.c, w32.c, xdisp.c: Adjust users.
2012-08-07 11:42:34 +04:00
Dmitry Antipov
d3d50620ed Drop WGET and revert read access to Lisp_Objects slots of struct window.
* window.h (WGET): Remove.
(struct window): Do not use INTERNAL_FIELD.
* alloc.c, buffer.c, composite.c, dispextern.h, dispnew.c, editfns.c:
* fileio.c, font.c, fontset.c, frame.c, frame.h, fringe.c, indent.c:
* insdel.c, keyboard.c, keymap.c, lisp.h, minibuf.c, msdos.c, nsfns.m:
* nsmenu.m, nsterm.m, print.c, textprop.c, w32fns.c, w32menu.c:
* w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c, xterm.c:
Adjust users.
2012-08-07 11:33:18 +04:00
Chong Yidong
d10a51dcdf Check for live frames explicitly in window.c functions which need it.
* window.c (Fwindow_edges, Fwindow_pixel_edges)
(Fwindow_absolute_pixel_edges, Fdelete_other_windows_internal)
(Fdelete_window_internal): Signal an error if the window is not on
a live frame.

Fixes: debbugs:12025
2012-08-07 15:02:04 +08:00
Dmitry Antipov
e69b096079 Drop FGET and revert read access to Lisp_Objects slots of struct frame.
* frame.h (FGET): Remove.
(struct frame): Do not use INTERNAL_FIELD.
* buffer.c, data.c, dispnew.c, dosfns.c, eval.c, fontset.c, frame.c:
* fringe.c, gtkutil.c, minibuf.c, msdos.c, nsfns.m, nsmenu.m, nsterm.m:
* print.c, term.c, w32fns.c, w32menu.c, w32term.c, window.c, window.h:
* xdisp.c, xfaces.c, xfns.c, xmenu.c, xterm.c: Adjust users.
2012-08-07 09:29:25 +04:00
Juanma Barranquero
25a20a3ad8 src/w32.c: Silence compiler warnings.
(map_w32_filename): Remove unused variable `is_fat'.
(chase_symlinks): Add parentheses around expression.
2012-08-07 00:07:01 +02:00
Glenn Morris
1db4583ad2 Guard against potential configure bug wrt HAVE_GETWD
* configure.ac (BROKEN_GETWD) [unixware]: New define.

* src/sysdep.c: Respect BROKEN_GETWD.
2012-08-06 16:29:45 -04:00
Glenn Morris
1c6f11f42a Remove GNU_LIBRARY_PENDING_OUTPUT_COUNT
* configure.ac (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Remove.
(PENDING_OUTPUT_COUNT): Absorb GNU_LIBRARY_PENDING_OUTPUT_COUNT.
(DISPNEW_NEEDS_STDIO_EXT): New define.

* src/dispnew.c (GNU_LIBRARY_PENDING_OUTPUT_COUNT, PENDING_OUTPUT_COUNT):
Let configure handle it.
(stdio_ext.h) [DISPNEW_NEEDS_STDIO_EXT]: Include it.

* nt/config.nt (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Remove.
(PENDING_OUTPUT_COUNT): Define it as dispnew.c used to.

* admin/CPP-DEFINES (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Remove.
2012-08-06 16:22:22 -04:00
Dmitry Antipov
2b90362b19 Use GCALIGNMENT where appropriate.
* alloc.c (XMALLOC_HEADER_ALIGNMENT, roundup_size):
(union aligned_Lisp_Symbol, union aligned_Lisp_Misc):
(mark_maybe_pointer, pure_alloc): Change to use GCALIGNMENT.
2012-08-06 20:55:46 +04:00
Eli Zaretskii
5f50daf249 Fix usage of FRAME_MENU_BAR_ITEMS in w32menu.c.
src/w32menu.c (set_frame_menubar, initialize_frame_menubar): Don't
 use FRAME_MENU_BAR_ITEMS as an lvalue.
2012-08-06 19:36:47 +03:00
Stefan Monnier
cbcc70072c * src/buffer.h (struct buffer): Revert `indirections' to a simple int;
that should be sufficient for everyone.
2012-08-06 12:22:43 -04:00
Jan Djärv
4d365fa4cc * keyboard.c (timer_check_2): Add break so timer_check returns next timeout. 2012-08-06 18:09:02 +02:00
Dmitry Antipov
dd86bd8258 Fix Windows build errors introduced after converting to WGET and WSET.
* w32term.c (w32_set_vertical_scroll_bar): Change to use WSET.
Reported by Andy Moreton <andrewjmoreton@gmail.com>.
2012-08-06 19:45:27 +04:00
Jan Djärv
054e16686c Use FSET.
* nsmenu.m (ns_update_menubar): Use FSET.

* nsterm.m (ns_frame_rehighlight): Use FSET.
2012-08-06 14:54:54 +02:00
Dmitry Antipov
21238f1173 Separate read and write access to Lisp_Object slots of Lisp_Process.
* process.h (PGET, PSET): New macros similar to AREF and ASET.
* gnutls.c, print.c, process.c, sysdep.c, w32.c, xdisp.c: Adjust users.
2012-08-06 15:16:07 +04:00
Dmitry Antipov
077288cf3f Separate read and write access to Lisp_Object slots of struct window.
* window.h (WGET, WSET): New macros similar to AREF and ASET.
* alloc.c, buffer.c, composite.c, dispextern.h, dispnew.c, editfns.c:
* fileio.c, font.c, fontset.c, frame.c, frame.h, fringe.c, indent.c:
* insdel.c, keyboard.c, keymap.c, lisp.h, minibuf.c, msdos.c, nsfns.m:
* nsmenu.m, nsterm.m, print.c, textprop.c, w32fns.c, w32menu.c:
* w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c, xterm.c:
Adjust users.
2012-08-06 14:24:26 +04:00
Dmitry Antipov
71688bd7f9 Fix Windows build errors introduced after converting to FGET and FSET.
* w32term.c (x_frame_rehighlight, x_scroll_bar_create):
(w32_condemn_scroll_bars, w32_redeem_scroll_bar):
(w32_judge_scroll_bars): Change to use FSET.
Reported by Andy Moreton <andrewjmoreton@gmail.com>.
2012-08-06 13:28:17 +04:00
Dmitry Antipov
f99bac932b Fix replacement typo.
* window.c (replace_window): Set root_window instead of
selected_window.  This fixes a total window subsystem
malfunction reported by Bastien Guerry <bzg@gnu.org>.
2012-08-06 12:32:49 +04:00
Glenn Morris
8c2a0f2dbf * src/lisp.mk (lisp): Add language/persian.elc. 2012-08-06 00:37:26 -07:00
Dmitry Antipov
edd74c3512 Separate read and write access to Lisp_Object slots of struct frame.
* frame.h (FGET, FSET): New macros similar to AREF and ASET.
* buffer.c, data.c, dispnew.c, dosfns.c, eval.c, fontset.c, frame.c:
* fringe.c, gtkutil.c, minibuf.c, msdos.c, nsfns.m, nsmenu.m, nsterm.m:
* print.c, term.c, w32fns.c, w32menu.c, w32term.c, window.c, window.h:
* xdisp.c, xfaces.c, xfns.c, xmenu.c, xterm.c: Adjust users.
2012-08-06 09:27:54 +04:00
Andreas Schwab
9927964e69 Ignore stamp-h.in 2012-08-05 23:44:21 +02:00
Andreas Schwab
8671676ca1 * emacs.c (decode_env_path): Only use defaulted if WINDOWSNT. 2012-08-05 23:44:21 +02:00
Dmitry Antipov
663e2b3f88 Generalize common compile-time constants.
* lisp.h (header_size, bool_header_size, word_size): Now here.
(struct Lisp_Vector): Add comment.
(struct Lisp_Bool_Vector): Move up to define handy constants.
(VECSIZE, PSEUDOVECSIZE): Simplify.
(SAFE_ALLOCA_LISP): Use new constant.  Adjust indentation.
* buffer.c, buffer.h, bytecode.c, callint.c, eval.c, fns.c:
* font.c, fontset.c, keyboard.c, keymap.c, macros.c, menu.c:
* msdos.c, w32menu.c, w32term.h, window.c, xdisp.c, xfaces.c:
* xfont.c, xmenu.c: Use word_size where appropriate.
2012-08-05 19:47:28 +04:00
Lawrence Mitchell
d32e47aff6 * search.c (Freplace_match): Treat \? in the replacement text literally.
Fixes: debbugs:8161
2012-08-05 21:30:15 +08:00
Chong Yidong
e5d9c0d111 Docfix for kill-buffer-hook and others.
* lisp/files.el (kill-buffer-hook): Provide a defvar.

* src/term.c (Vsuspend_tty_functions, Vresume_tty_functions):
* src/frame.c (Vdelete_frame_functions):
* src/emacs.c (Vkill_emacs_hook): Doc fix.
2012-08-05 15:45:12 +08:00
Eli Zaretskii
8da0576b32 Fix compilation --with-x-toolkit=no.
stc/xfns.c (x_set_menu_bar_lines): Fix compilation error in
 --with-x-toolkit=no builds by using FVAR.
 Reported by Carsten Mattner <carstenmattner@gmail.com>.
2012-08-04 17:36:36 +03:00
Chong Yidong
02676e5d3d Doc fixes and improvements for syntax tables.
* src/syntax.c (Fmodify_syntax_entry): Doc fix.

* doc/lispref/syntax.texi (Syntax Basics): Rearrange the text for clarity.
Fix description of syntax table inheritance.
(Syntax Table Functions): Don't refer to internal contents of
syntax table, since that is not explained yet.  Copyedits.
(Standard Syntax Tables): Node deleted.
(Syntax Table Internals): Misc clarifications.  Improve table
formatting.

* doc/lispref/keymaps.texi (Inheritance and Keymaps):
* doc/lispref/text.texi (Sticky Properties): Tweak index entry.
2012-08-04 22:33:00 +08:00
Eli Zaretskii
76151e2ce7 Fix bug #11959 with startup warnings on MS-Windows about ../site-lisp.
src/w32.c (init_environment): Change the default values of many
 environment variables in dflt_envvars[] to NULL, to avoid pushing
 them into environment when they were not already defined.  Remove
 the code that deletes site-lisp subdirectories from the default
 value of EMACSLOADPATH, as it is no longer needed.
 (check_windows_init_file): Now external, not static.  Use
 Vload_path as is, without adding anything, as this function is now
 called when Vload_path is already set up.
 src/w32.h (check_windows_init_file): Add prototype.
 src/emacs.c (init_cmdargs) [WINDOWSNT]: When running from the build
 directory, ignore the /*/i386/ tail in Vinvocation_directory, for
 compatibility with Posix platforms.
 (main): Move the call to check_windows_init_file to here from
 w32.c.
 (decode_env_path) [WINDOWSNT]: Expand the %emacs_dir%/ prefix, if
 any, in the DEFALT argument into the root of the Emacs build or
 installation tree, as appropriate.
 src/callproc.c (init_callproc_1): Call decode_env_path instead of
 doing its equivalent by hand.
 (init_callproc): Replace DOS_NT condition with MSDOS, thus letting
 the code that sets Vexec_path run on MS-Windows.
 src/lread.c (init_lread): Add comments to #ifdef's.

 nt/paths.h (PATH_LOADSEARCH, PATH_SITELOADSEARCH, PATH_EXEC)
 (PATH_DATA, PATH_DOC): Replace dummy directory names with
 directories relative to %emacs_dir%.
 (PATH_EXEC): Add lib-src/oo-spd/i386 and lib-src/oo/i386, to cater
 to the use case of running un-installed Emacs.
2012-08-04 17:17:10 +03:00
Eli Zaretskii
97147da956 Fix Sed scripts and msdos.c as fallout of latest changes. 2012-08-04 11:58:33 +03:00
Paul Eggert
185ee1468e Export DEFAULT_REHASH_* to GDB.
* lisp.h (DEFAULT_REHASH_THRESHOLD, DEFAULT_REHASH_SIZE):
Now constants, not macros.
2012-08-03 17:52:10 -07:00