aboutsummaryrefslogtreecommitdiffstats
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* .gdbinit: Update to match recent lisp.h changes.Paul Eggert2012-06-132-2/+6
|
* Simplify lisp.h in minor ways that should not affect code.Paul Eggert2012-06-132-78/+47
| | | | | | | | | | | | | * lisp.h (USE_2_TAGS_FOR_INTS): Remove, as it was always defined. (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P) (LISP_INT1_TAG, enum Lisp_Type, XINT, XUINT, make_number): Simplify under the assumption that USE_2_TAGS_FOR_INTS is defined. (INTTYPEBITS): New macro, for clarity. (INTMASK, MOST_POSITIVE_FIXNUM): Use it. (LISP_INT1_TAG, LISP_STRING_TAG, LISP_INT_TAG_P): Simplify now that USE_LSB_TAG is always defined. (TYPEMASK, XINT) [USE_LSB_TAG]: Remove unnecessary cast. (make_number) [!USE_LSB_TAG]: Use INTMASK; that's simpler.
* src/makefile.w32-in ($(BLD)/data.$(O)): Update dependencies.Juanma Barranquero2012-06-132-0/+5
|
* Remove some unused definitions from src/sGlenn Morris2012-06-134-5/+13
| | | | | | | * src/s/bsd-common.h (BSD4_3): * src/s/usg5-4-common.h (USG5_4): No longer define; unused. * admin/CPP-DEFINES, src/s/template.h: Related edits.
* Use a simple struct to implement compile time checks for the Lisp_Object typeAndreas Schwab2012-06-1310-183/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * configure.in: Rename --enable-use-lisp-union-type to --enable-check-lisp-object-type and define CHECK_LISP_OBJECT_TYPE instead of USE_LISP_UNION_TYPE. * admin/make-emacs: Rename --union-type to --check-lisp-type. Define CHECK_LISP_OBJECT_TYPE insted of USE_LISP_UNION_TYPE. * admin/CPP-DEFINES (DEBUG_LISP_OBJECT_TYPE): Renamed from USE_LISP_UNION_TYPE. * src/lisp.h (Lisp_Object) [CHECK_LISP_OBJECT_TYPE]: Define as struct instead of union. (XLI, XIL): Define. (XHASH, XTYPE, XINT, XUINT, make_number, XSET, XPNTR, XUNTAG): Use them. * src/emacs.c (gdb_use_struct): Renamed from gdb_use_union. * src/.gdbinit: Check gdb_use_struct instead of gdb_use_union. * src/alloc.c (widen_to_Lisp_Object): Removed. (mark_memory): Use XIL instead of widen_to_Lisp_Object. * src/frame.c (delete_frame): Remove outdated comment. * src/w32fns.c (Fw32_register_hot_key): Use XLI instead of checking USE_LISP_UNION_TYPE. (Fw32_unregister_hot_key): Likewise. (Fw32_toggle_lock_key): Likewise. * src/w32menu.c (add_menu_item): Likewise. (w32_menu_display_help): Use XIL instead of checking USE_LISP_UNION_TYPE. * src/w32heap.c (allocate_heap): Don't check USE_LISP_UNION_TYPE. (init_heap): Likewise. * src/w32term.c (w32_read_socket): Update comment.
* Remove HAVE_SYSV_SIGPAUSE unused remnantsGlenn Morris2012-06-123-5/+3
| | | | | | | * src/s/usg5-4-common.h, src/s/unixware.h: Remove define/undef of HAVE_SYSV_SIGPAUSE (not used since 2010-05-04). * admin/CPP-DEFINES: Remove HAVE_SYSV_SIGPAUSE.
* * src/s/gnu.h (POSIX_SIGNALS): Remove (again).Glenn Morris2012-06-122-2/+4
| | | | | | | | This was added in 2012-01 in response to http://debbugs.gnu.org/10552 . However, this issue had already been fixed in the trunk two years earlier, by removing POSIX_SIGNALS altogether. Ref: http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00002.html
* USE_LISP_UNION_TYPE + USE_LSB_TAG cleanup (Bug#11604)Paul Eggert2012-06-129-124/+91
| | | | | | | | | | | | | | | | | | | | | | | * alloc.c (make_number) [!defined make_number]: Remove, as lisp.h always defines this now. (mark_maybe_pointer): Simplify since USE_LSB_TAG is always defined now. (roundup_size): Verify that it is a power of 2. * data.c (Fmake_variable_buffer_local, Fmake_local_variable): * ftfont.c (ftfont_driver): Use LISP_INITIALLY_ZERO. * lisp.h (USE_LSB_TAG): Allow the builder to compile with -DUSE_LSB_TAG=0, to override the automatically-selected default. USE_LSB_TAG now is always defined to be either 0 or 1. All uses changed. (union Lisp_Object): Don't worry about WORDS_BIGENDIAN; the code works fine either way, and efficiency is not a concern here, as the union type is for debugging, not for production. (LISP_MAKE_RVALUE, make_number) [USE_LISP_UNION_TYPE]: Use an inline function on all platforms when using the union type, since this is simpler and 'static inline' can be used portably within Emacs now. (LISP_INITIALLY_ZERO): New macro. (XFASTINT, XSETFASTINT) [USE_LISP_UNION_TYPE]: Remove. (XSET) [USE_LISP_UNION_TYPE]: Don't overparenthesize.
* Remove src/s/sol2-10.hGlenn Morris2012-06-123-14/+3
| | | | | | | | | * configure.in (HAVE_PROCFS, _STRUCTURED_PROC): New AC_DEFINEs. (opsysfile): Set specially for sol2-10. * src/s/gnu-linux.h (HAVE_PROCFS): Move to configure. * src/s/sol2-10.h: Remove file.
* Remove src/s/hpux11.hGlenn Morris2012-06-122-10/+1
| | | | | | | * configure.in (BROKEN_SA_RESTART, USG_SUBTTY_WORKS): New AC_DEFINEs. (opsysfile): Set specially for hpux11. * src/s/hpux11.h: Remove file.
* Remove a couple of src/s filesGlenn Morris2012-06-123-7/+2
| | | | | | * configure.in (opsysfile): Set specially for gnu-kfreebsd, openbsd. * src/s/gnu-kfreebsd.h, src/s/openbsd.h: Remove files.
* Move NO_TERMIO, BROKEN_SIGIO from src/s to configureGlenn Morris2012-06-127-18/+9
| | | | | | | | | | * configure.in (NO_TERMIO, BROKEN_SIGIO): New AC_DEFINEs. * src/s/bsd-common.h, src/s/darwin.h, src/s/gnu-kfreebsd.h, src/s/hpux10-20.h: Remove NO_TERMIO. * src/s/hpux10-20.h, src/s/openbsd.h, src/s/usg5-4-common.h: Remove BROKEN_SIGIO.
* Handle availability of MagickMergeImageLayers and MagickExportImagePixelsChong Yidong2012-06-122-53/+54
| | | | | | | | | | * configure.in: Check for MagickMergeImageLayers. * src/image.c (imagemagick_load_image): Use MagickFlattenImage if MagickMergeImageLayers is undefined. Use pixel pusher loop if MagickExportImagePixels is undefined. Fixes: debbugs:11678
* * image.c (imagemagick_load_image): Remove unused label.Paul Eggert2012-06-112-1/+4
|
* Move SYSTEM_TYPE from src/s to configureGlenn Morris2012-06-1114-55/+7
| | | | | | | | | | | | | * configure.in (SYSTEM_TYPE): New AC_DEFINE. * msdos/sed2v2.inp (SYSTEM_TYPE): Set it. * nt/config.nt (SYSTEM_TYPE): Define it. * src/s/aix4-2.h, src/s/bsd-common.h, src/s/cygwin.h, src/s/darwin.h: * src/s/gnu-kfreebsd.h, src/s/gnu-linux.h, src/s/gnu.h, src/s/hpux10-20.h: * src/s/irix6-5.h, src/s/ms-w32.h, src/s/msdos.h, src/s/template.h: * src/s/usg5-4-common.h: Remove SYSTEM_TYPE.
* Don't purify in Fmake_byte_code.Stefan Monnier2012-06-114-21/+34
| | | | | | * src/alloc.c (make_byte_code): New function. (Fmake_byte_code): Use it. Don't purify here. * src/lread.c (read1): Use it as well to avoid extra allocation.
* Support transparency for ImageMagick images.Chong Yidong2012-06-112-56/+61
| | | | | | | * src/image.c (imagemagick_load_image): Implement transparency. * doc/lispref/display.texi (ImageMagick Images): ImageMagick now supports the :background property.
* Merge from emacs-24; up to 2012-04-25T15:23:19Z!sdl.web@gmail.comChong Yidong2012-06-101-2/+10
|\
| * Bump version to 24.1.Chong Yidong2012-06-011-0/+4
| | | | | | | | | | Add release logs. Regenerate AUTHORS and ldefs-boot.el.
| * Improve commentary to 'struct it' in src/dispextern.h.Eli Zaretskii2012-06-011-2/+10
| |
* | * regex.c (at_begline_loc_p): Also recognize `(?N:' and correctlyAndreas Schwab2012-06-102-11/+35
| | | | | | | | account for preceding backslashes. (Bug#11663)
* | Add support for italic text on ttys.Chong Yidong2012-06-105-45/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/dispextern.h: Replace unused TTY_CAP_BLINK with TTY_CAP_ITALIC. (struct face): Remove unused fields tty_dim_p, tty_blinking_p, and tty_alt_charset_p. Add tty_italic_p. * src/term.c: Support italics in capable terminals. (no_color_bit): Replace unused NC_BLINK with NC_ITALIC. (turn_on_face): Output using TS_enter_italic_mode if available. Don't handle unused blinking and alt-charset cases. (turn_off_face): Handle italic case; discard unused tty_blinking_p and tty_alt_charset_p cases. (tty_capable_p, init_tty): Support italics. * src/termchar.h (struct tty_display_info): Add field for italics. Remove unused blink field. * src/xfaces.c (tty_supports_face_attributes_p, realize_tty_face): Handle slant. Fixes: debbugs:9652
* | * dbusbind.c (XD_BASIC_DBUS_TYPE): Use dbus_type_is_valid andMichael Albinus2012-06-092-18/+36
| | | | | | | | | | | | dbus_type_is_basic if available. (xd_extract_signed, xd_extract_unsigned): Rename from extract_signed and extract_unsigned, respectively. Adapt callers.
* | * xfaces.c (face_for_overlay_string): Handle face remapping.Chong Yidong2012-06-092-7/+9
| | | | | | | | Fixes: debbugs:2066
* | * fringe.c (Fset_fringe_bitmap_face): Handle the noninteractive case.Chong Yidong2012-06-092-5/+14
| | | | | | | | Fixes: debbugs:9752
* | * xdisp.c (vmessage): Treat frame message as multibyte.Paul Eggert2012-06-082-1/+8
| | | | | | | | | | | | Without this change, (let ((§ 1)) (make-variable-buffer-local '§)) would generate the diagnostic "Making \302\247 buffer-local while let-bound!".
* | Revert inadvertent commit in dispnew.c as part of ↵Eli Zaretskii2012-06-082-6/+8
| | | | | | | | | | | | | | | | | | 2012-06-08T08:44:45Z!eliz@gnu.org. src/dispnew.c (showing_window_margins_p): Undo last change, which was done due to an inadvertent commit. (adjust_frame_glyphs_for_frame_redisplay): Do call showing_window_margins_p.
* | Clean up scoping rule of predefined single-word vars.Stefan Monnier2012-06-083-4/+23
| | | | | | | | | | | | | | | | | | | | | | | | * lisp/startup.el (argv, argi): Make lexically scoped. * lisp/emacs-lisp/float-sup.el (pi): Use internal-make-var-non-special. * lisp/emacs-lisp/cl-macs.el: Use lexical-binding. Rename cl-bind-* to cl--bind-*. * lisp/files.el: Don't require `cl' since it doesn't use it. * lisp/emacs-lisp/pcase.el, lisp/emacs-lisp/macroexp.el: Add coding cookie. * src/eval.c (Fmake_var_non_special): New primitive. (syms_of_eval): Defsubr it. * src/lread.c (syms_of_lread): Mark `values' as lexically scoped.
* | src/dispnew.c (showing_window_margins_p): Wrap in #if 0.Juanma Barranquero2012-06-082-0/+7
| |
* | Fix BLOCK_INPUT/UNBLOCK_INPUT mismatch in ↵Eli Zaretskii2012-06-082-1/+8
| | | | | | | | | | | | 2012-06-08T08:44:30Z!dmantipov@yandex.ru. src/alloc.c (allocate_vectorlike): Fix last change.
* | Mention in "C-u C-x =" display how to insert the character w/o input methods.Eli Zaretskii2012-06-081-1/+4
| | | | | | | | | | | | | | lisp/descr-text.el (describe-char): Mention how to insert the character, if the current input method doesn't support it. See the discussion in this thread for the details: http://lists.gnu.org/archive/html/emacs-devel/2012-05/msg00533.html.
* | Block-based vector allocation of small vectors.Dmitry Antipov2012-06-083-43/+376
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/lisp.h (struct vectorlike_header): New field `nbytes', adjust comment accordingly. * src/alloc.c (enum mem_type): New type `MEM_TYPE_VECTOR_BLOCK' to denote vector blocks. Adjust users (live_vector_p, mark_maybe_pointer, valid_lisp_object_p) accordingly. (COMMON_MULTIPLE): Move outside #if USE_LSB_TAG. (VECTOR_BLOCK_SIZE, vroundup, VECTOR_BLOCK_BYTES), (VBLOCK_BYTES_MIN, VBLOCK_BYTES_MAX, VECTOR_MAX_FREE_LIST_INDEX), (VECTOR_FREE_LIST_FLAG, ADVANCE, VINDEX, SETUP_ON_FREE_LIST), (VECTOR_SIZE, VECTOR_IN_BLOCK): New macros. (roundup_size): New constant. (struct vector_block): New data type. (vector_blocks, vector_free_lists, zero_vector): New variables. (all_vectors): Renamed to `large_vectors'. (allocate_vector_from_block, init_vectors, allocate_vector_from_block) (sweep_vectors): New functions. (allocate_vectorlike): Return `zero_vector' as the only vector of 0 items. Allocate new vector from block if vector size is less than or equal to VBLOCK_BYTES_MAX. (Fgarbage_collect): Move all vector sweeping code to sweep_vectors. (init_alloc_once): Add call to init_vectors. * doc/lispref/internals.text (Garbage Collection): Document new vector management code and vectorlike_header structure.
* | * src/eval.c (Fmacroexpand): Stop if the macro returns the same form.Stefan Monnier2012-06-072-1/+11
| |
* | * doprnt.c (doprnt): Truncate multibyte char correctly.Paul Eggert2012-06-062-9/+21
| | | | | | | | | | | | | | Without this change, doprnt (buf, 2, "%s", FORMAT_END, AP) would mishandle a string argument "Xc" if X was a multibyte character of length 2: it would truncate after X's first byte rather than including all of X.
* | * buffer.c (word_wrap): Doc fix.Chong Yidong2012-06-062-1/+11
| |
* | * xdisp.c (note_mode_line_or_margin_highlight): Pacify gcc -Wall.Paul Eggert2012-06-032-2/+6
| |
* | tool-bar-style doc fixesGlenn Morris2012-06-032-2/+8
| | | | | | | | | | | | * lisp/cus-start.el (tool-bar-style, tool-bar-max-label-size): Fix :version. * src/xdisp.c (tool-bar-style): Doc fix.
* | Workaround dumping problem on PaX-enabled Linux kernelsUlrich Müller2012-06-032-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | * configure.in (PAXCTL): Check for paxctl. * src/Makefile.in (PAXCTL): Define. (temacs$(EXEEXT)): Disable memory randomization for the temacs binary via PaX flags if the paxctl utility is available. (emacs$(EXEEXT), bootstrap-emacs$(EXEEXT)): Restore PaX flags to their default. Fixes: debbugs:11398
* | Make mode line help-echo visible for unibyte buffers.Chong Yidong2012-06-032-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/xdisp.c (decode_mode_spec_coding): Display a space for a unibyte buffer. * lisp/bindings.el (mode-line-mule-info-help-echo) (mode-line-read-only-help-echo, mode-line-modified-help-echo): New functions. (mode-line-mule-info, mode-line-modified): Use them. (mode-line-eol-desc, propertized-buffer-identification): Consistency fixes for help text. Fixes: debbugs:11226
* | * xdisp.c (note_mode_line_or_margin_highlight): Fix last change.Chong Yidong2012-06-031-1/+1
| |
* | Implement default help-echo for mode line.Chong Yidong2012-06-034-50/+121
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/bindings.el: Remove explicit help-echo from format-mode-line. (mode-line-front-space, mode-line-end-spaces) (mode-line-misc-info): New variables. (mode-line-modes, mode-line-position): Move the default value to the variable definition. (mode-line-default-help-echo): New defcustom. * src/buffer.c (buffer_local_value_1): New function, split from Fbuffer_local_value; can return Qunbound. (Fbuffer_local_value): Use it. (Vmode_line_format): Docstring tweaks. * src/xdisp.c (calc_pixel_width_or_height): Use Fbuffer_local_value. (note_mode_line_or_margin_highlight): If there is no help echo, use mode-line-default-help-echo. Handle the case where the mouse position is past the end of the mode line string. * doc/lispref/modes.texi (Mode Line Data): Use "mode line construct" terminology for consistency.
* | * sysdep.c (system_process_attributes): Improve comment.Paul Eggert2012-06-022-1/+6
| |
* | * lisp/simple.el (execute-extended-command): Set real-this-command.Stefan Monnier2012-06-024-25/+34
| | | | | | | | | | | | | | | | * src/keyboard.c: Export real-this-command to Elisp. (syms_of_keyboard): Rename real_this_command to Vreal_this_command and DEFVAR it. Update all users. Fixes: debbugs:11506
* | * minibuf.c (Fassoc_string): Remove duplicate declaration.Paul Eggert2012-06-022-2/+2
| |
* | * sysdep.c (system_process_attributes) [SOLARIS2 && HAVE_PROCFS]:Paul Eggert2012-06-022-2/+8
| | | | | | | | | | Convert pctcpu and pctmem to Lisp float properly. Let the compiler fold better, as 100.0/0x8000 is exact.
* | * alloc.c (CONS_BLOCK_SIZE): Account for padding at the end ofAndreas Schwab2012-06-022-2/+9
| | | | | | | | cons_block.
* | * xfns.c (x_set_tool_bar_lines) [USE_GTK]: Adjust to bitfield change.Paul Eggert2012-06-012-1/+5
| |
* | For a 'struct window', replace some Lisp_Object fields toDmitry Antipov2012-06-018-107/+113
| | | | | | | | | | | | | | | | | | | | bitfields where appropriate, remove unused fields. * window.h (struct window): Remove unused 'last_mark_x' and 'last_mark_y' fields. Rename 'mini_p' field to 'mini', change it's type from Lisp_Object to bitfield. Change type of 'force_start', 'optional_new_start', 'last_had_star', 'update_mode_line' and 'start_at_line_beg' fields from Lisp_Object to bitfield. Adjust users accordingly.
* | Add option imagemagick-types-enableGlenn Morris2012-05-312-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/image.el: For clarity, call imagemagick-register-types at top-level, rather than relying on a custom :initialize. (imagemagick-types-enable): New option. (imagemagick-register-types): Respect imagemagick-types-inhibit. If disabling support, remove elements altogether rather than using an impossible regexp. (imagemagick-types-inhibit): Give it the default init function. * src/image.c (Fimagemagick_types): Doc fix. * etc/NEWS: Mention this. Fixes: debbugs:11557
* | Pacify gcc -Wdouble-precision when using Xaw.Paul Eggert2012-05-302-2/+10
| | | | | | | | | | | | | | * xterm.c (xaw_jump_callback, x_set_toolkit_scroll_bar_thumb) [HAVE_X_WINDOWS && USE_TOOLKIT_SCROLL_BARS && !USE_MOTIF && !USE_GTK]: Use 'float' consistently, rather than 'float' in most places and 'double' in a couple of places.