- 05 Sep, 2012 3 commits
-
-
Paul Eggert authored
-
Juanma Barranquero authored
-
Juanma Barranquero authored
-
- 04 Sep, 2012 11 commits
-
-
Lars Ingebrigtsen authored
This allows tracking down what piece of code is outputting stuff in the echo area. * eval.c (call_debugger): Make the function non-static so that we can call it from set_message. * xdisp.c (set_message): Implement the new variable `debug-on-message'. (syms_of_xdisp): Defvar it and `inhibit-debug-on-message'.
-
Paul Eggert authored
* doc/emacs/trouble.texi (Crashing): New section, documenting this. * etc/NEWS: Document the change. * src/alloc.c [ENABLE_CHECKING]: Do not include <execinfo.h>. (die) [ENABLE_CHECKING]: Call fatal_error_backtrace instead of doing the work ourselves. * src/emacs.c (fatal_error_signal): Let fatal_error_backtrace do most of the work. (fatal_error_backtrace): New function, taken from the guts of the old fatal_error_signal, but with a new option to output a backtrace. (shut_down_emacs) [!DOS_NT]: Use strsignal to give more-useful info about the signal than just its number. * src/lisp.h (fatal_error_backtrace, emacs_backtrace): New decls. * src/sysdep.c: Include <execinfo.h> (emacs_backtrace): New function, taken partly from the previous code of the 'die' function. (emacs_abort): Call fatal_error_backtrace rather than abort.
-
Stefan Monnier authored
* src/lread.c (readevalloop): Call internal-macroexpand-for-load to perform eager (load-time) macro-expansion. * src/lisp.mk (lisp): Add macroexp. * lisp/loadup.el: Load macroexp. Remove hack. * lisp/emacs-lisp/macroexp.el (macroexp--eval-if-compile): New function. (macroexp--expand-all): Use it to get better warnings. (macroexp--backtrace, macroexp--trim-backtrace-frame) (internal-macroexpand-for-load): New functions. (macroexp--pending-eager-loads): New var. (emacs-startup-hook): New hack to replace one in loadup.el. * lisp/emacs-lisp/cl-macs.el (cl--compiler-macro-list*) (cl--compiler-macro-cXXr): Move to top, before they can be used. (cl-psetf): Simplify. (cl-defstruct): Add indent rule.
-
Paul Eggert authored
Do not try to redefine the 'abort' function. Instead, redo the code so that it calls 'emacs_abort' rather than 'abort'. This removes the need for the NO_ABORT configure-time macro and makes it easier to change the abort code to do a backtrace. * configure.ac (NO_ABRT): Remove. * admin/CPP-DEFINES (NO_ABORT): Remove. * nt/inc/ms-w32.h (w32_abort) [HAVE_NTGUI]: Remove. * src/.gdbinit: Just stop at emacs_abort, not at w32_abort or abort. * src/emacs.c (abort) [!DOS_NT && !NO_ABORT]: Remove; sysdep.c's emacs_abort now takes its place. * src/lisp.h (emacs_abort): New decl. All calls from Emacs code to 'abort' changed to use 'emacs_abort'. * src/msdos.c (dos_abort) [defined abort]: Remove; not used. (abort) [!defined abort]: Rename to ... (emacs_abort): ... new name. * src/sysdep.c (emacs_abort) [!HAVE_NTGUI]: New function, taking the place of the old 'abort' in emacs.c. * src/w32.c, src/w32fns.c (abort): Do not #undef. * src/w32.c (emacs_abort): Rename from w32_abort.
-
Eli Zaretskii authored
src/w32uniscribe.c (uniscribe_shape): Reverse the sign of offsets[j].dv, since the y axis of the screen coordinates points down, while the y axis of the font definition coordinates points up. This fixes display of Arabic diacritics such as KASRA and KASRATAN.
-
Lars Ingebrigtsen authored
* mail/smtpmail.el (smtpmail-send-it): Prefer the From: header over `user-mail-address' for the SMTP MAIL FROM envelope. (smtpmail-via-smtp): Ditto.
-
Glenn Morris authored
-
Paul Eggert authored
* alloc.c (test_setjmp, mark_stack): * image.c (PNG_LONGJMP) [PNG_LIBPNG_VER < 10500]: (PNG_JMPBUF) [! (PNG_LIBPNG_VER < 10500)]: (png_load, my_error_exit, jpeg_load): * process.c (send_process_trap, send_process): Uniformly prefer _setjmp and _longjmp to setjmp and longjmp. The underscored versions are up to 30x faster on some hosts. Formerly, the code used setjmp+longjmp sometimes and _setjmp+_longjmp at other times, with no particular reason to prefer setjmp+longjmp.
-
Paul Eggert authored
instead of by guessing. The guesses were wrong for recent versions of Solaris, such as Solaris 11.
-
Dmitry Gutov authored
-
Dmitry Gutov authored
(ruby-mode-map): Don't bind ruby-electric-brace, ruby-beginning-of-defun, ruby-end-of-defun, ruby-mark-defun, backward-kill-word, reindent-then-newline-and-indent. (ruby-mark-defun): Remove. (ruby-electric-brace): Remove. Obsoleted by electric-indent-chars. (ruby-mode): Set local beginning-of-defun-function and end-of-defun-function values.
-
- 03 Sep, 2012 8 commits
-
-
Lars Ingebrigtsen authored
-
Paul Eggert authored
-
Paul Eggert authored
It generates false alarms in doc.c, regex.c, xdisp.c. See <http://lists.gnu.org/archive/html/emacs-devel/2012-09/msg00040.html>.
-
Glenn Morris authored
-
Paul Eggert authored
This incorporates: 2012-08-29 stdbool: be more compatible with mixed C/C++ compiles 2011-11-30 manywarnings: update the list of "all" warnings
-
Paul Eggert authored
* buffer.c (Fdelete_all_overlays): Return nil. * doc.c (Fsubstitute_command_keys): * regex.c (WEAK_ALIAS): * xdisp.c (redisplay_internal): Move initialization down, to pacify GCC 4.7.1 -Wjump-misses-init.
-
Martin Rudalics authored
* buffer.c (Fdelete_all_overlays): New function. * window.el (temp-buffer-window-setup-hook) (temp-buffer-window-show-hook): New hooks. (temp-buffer-window-setup, temp-buffer-window-show) (with-temp-buffer-window): New functions. (fit-window-to-buffer): Remove unused optional argument OVERRIDE. (special-display-popup-frame): Make sure the window used shows BUFFER. * help.el (temp-buffer-resize-mode): Fix doc-string. (resize-temp-buffer-window): New optional argument WINDOW. * files.el (recover-file, save-buffers-kill-emacs): * dired.el (dired-mark-pop-up): Use with-temp-buffer-window.
-
Chong Yidong authored
-
- 02 Sep, 2012 16 commits
-
-
Paul Eggert authored
* emacs.c (initialized, inhibit_window_system, running_asynch_code): (malloc_using_checking) [DOUG_LEA_MALLOC]: (display_arg) [HAVE_X_WINDOWS || HAVE_NS]: (noninteractive, no_site_lisp, fatal_error_in_progress, argmatch) (main, decode_env_path, Fdaemon_initialized): * eval.c (call_debugger, Finteractive_p, interactive_p): (unwind_to_catch, Fsignal, wants_debugger, skip_debugger) (maybe_call_debugger, Fbacktrace): * process.c (read_process_output, exec_sentinel): Use bool for booleans. * emacs.c (shut_down_emacs): Omit unused boolean argument NO_X. All callers changed. * eval.c (interactive_p): Omit always-true boolean argument EXCLUDE_SUBRS_P. All callers changed. * dispextern.h, lisp.h: Reflect above API changes. * firstfile.c (dummy): Use the address of 'main', whose signature won't change, instead of the address of 'initialize', whose signature just changed from int to bool. * lisp.h (fatal_error_in_progress): New decl of boolean, moved here ... * msdos.c (fatal_error_in_progress): ... from here. * xdisp.c (redisplaying_p): Now a boolean. Set it to 1 instead of incrementing it. (redisplay_internal, unwind_redisplay): Simply clear REDISPLAYING_P when unwinding, instead of saving its previous, always-false value and then restoring it.
-
Paul Eggert authored
Mostly, this hoists extern decls out of .c files and into .h files. That way, we're more likely to catch errors if the interfaces change. * alloc.c [USE_GTK]: Include "gtkutil.h" so that we need not declare xg_mark_data. * dispextern.h (x_frame_parm_handlers): * font.h (Qxft): * lisp.h (Qlexical_binding, Qinternal_interpreter_environment) (Qextra_light, Qlight, Qsemi_light, Qsemi_bold, Qbold, Qextra_bold) (Qultra_bold, Qoblique, Qitalic): Move extern decl here from .c file. * alloc.c (xg_mark_data) [USE_GTK]: * doc.c (Qclosure): * eval.c (Qlexical_binding): * fns.c (time) [!HAVE_UNISTD_H]: * gtkutil.c (Qxft, Qnormal, Qextra_light, Qlight, Qsemi_light) (Qsemi_bold, Qbold, Qextra_bold, Qultra_bold, Qoblique, Qitalic): * image.c (Vlibrary_cache, QCloaded_from) [HAVE_NTGUI]: * lread.c (Qinternal_interpreter_environment): * minibuf.c (Qbuffer): * process.c (QCfamily, QCfilter): * widget.c (free_frame_faces): * xfaces.c (free_frame_menubar) [USE_X_TOOLKIT]: * xfont.c (x_clear_errors): * xterm.c (x_frame_parm_handlers): Remove now-redundant extern decls. * keyboard.c, keyboard.h (ignore_mouse_drag_p) [USE_GTK || HAVE_NS]: * xfaces.c (Qultra_light, Qreverse_oblique, Qreverse_italic): Now static. * xfaces.c: Remove unnecessary static decls. * xterm.c (updating_frame): Remove decl of nonexistent object.
-
Paul Eggert authored
when building globals.h, as the objects that are not built on this host are not needed to compile C files on this host.
-
Jan Djärv authored
Fixes: debbugs:12332
-
Jan Djärv authored
* frame.h: Add missing prototype for x_wm_set_size_hint. * gtkutil.h: Remove prototype for x_wm_set_size_hint.
-
Glenn Morris authored
-
Michael Albinus authored
remote definition of `default-directory', ensure we can connect.
-
Juri Linkov authored
http://lists.gnu.org/archive/html/emacs-devel/2012-09/msg00008.html * lisp/isearch.el (search-whitespace-regexp): Doc fix. Remove cons cell customization. (isearch-mode-map): Bind "\M-s " to isearch-toggle-lax-whitespace. (isearch-lax-whitespace, isearch-regexp-lax-whitespace): New variables. (isearch-forward, isearch-forward-regexp): Doc fix. (isearch-toggle-lax-whitespace): New command. (search-forward-lax-whitespace, search-backward-lax-whitespace) (re-search-forward-lax-whitespace) (re-search-backward-lax-whitespace): New functions. (isearch-whitespace-regexp): Remove function. (isearch-query-replace): Let-bind replace-search-function and replace-re-search-function. (isearch-occur): Let-bind search-spaces-regexp according to the value of isearch-lax-whitespace and isearch-regexp-lax-whitespace. (isearch-quote-char): Check isearch-regexp-lax-whitespace in the condition for C-q SPC. (isearch-search-fun-default): Use new functions mentioned above. (isearch-search-forward, isearch-search-backward): Remove functions. (isearch-search): Don't let-bind search-spaces-regexp. (isearch-lazy-highlight-space-regexp): Remove variable. (isearch-lazy-highlight-lax-whitespace) (isearch-lazy-highlight-regexp-lax-whitespace): New variables. (isearch-lazy-highlight-new-loop): Use them. (isearch-lazy-highlight-search): Don't let-bind search-spaces-regexp.
-
Paul Eggert authored
* doc.c (read_bytecode_char, get_doc_string, reread_doc_file) (Fdocumentation, Fdocumentation_property, Fsnarf_documentation) (Fsubstitute_command_keys): * editfns.c (region_limit, find_field, Fconstrain_to_field) (save_excursion_save, save_excursion_restore) (disassemble_lisp_time, decode_time_components, emacs_nmemftime) (format_time_string, general_insert_function) (make_buffer_string, make_buffer_string_both) (Fsubst_char_in_region, Ftranslate_region_internal, Fformat): * insdel.c (check_markers, gap_left, adjust_markers_for_insert) (copy_text, insert_1, insert_1_both, insert_from_string) (insert_from_string_before_markers, insert_from_string_1) (insert_from_buffer, insert_from_buffer_1, replace_range) (replace_range_2, del_range_1, del_range_byte, del_range_both) (del_range_2, modify_region): * intervals.c (intervals_equal, balance_possible_root_interval) (adjust_intervals_for_insertion, merge_properties_sticky) (graft_intervals_into_buffer, lookup_char_property) (adjust_for_invis_intang, set_point_both) (get_property_and_range, compare_string_intervals) (set_intervals_multibyte_1, set_intervals_multibyte): * keyboard.c (decode_timer): Use bool for boolean. * intervals.h, lisp.h, systime.h: Reflect above API changes. * editfns.c (struct info): Use 1-bit unsigned bitfields for booleans.
-
Chong Yidong authored
* windows.texi (Window Configurations): Recommend against using save-window-excursion. * control.texi (Catch and Throw): * positions.texi (Excursions): Don't mention it. Fixes: debbugs:12075
-
Chong Yidong authored
Fixes: debbugs:11758
-
Chong Yidong authored
Fixes: debbugs:11616
-
Chong Yidong authored
-
Juanma Barranquero authored
(CCL_H, W32FONT_H): New macros. (ATIMER_H, FONT_H, $(BLD)/alloc.$(O), $(BLD)/callproc.$(O)) ($(BLD)/editfns.$(O), $(BLD)/ccl.$(O), $(BLD)/chartab.$(O)) ($(BLD)/coding.$(O), $(BLD)/sysdep.$(O), $(BLD)/fontset.$(O)) ($(BLD)/sysdep.$(O), $(BLD)/w32fns.$(O), $(BLD)/keyboard.$(O)) ($(BLD)/w32term.$(O), $(BLD)/w32menu.$(O), $(BLD)/process.$(O)) ($(BLD)/w32font.$(O), $(BLD)/w32uniscribe.$(O)): Update.
-
Juanma Barranquero authored
(HAVE_EXECINFO_H, TERM_HEADER): New macros.
-
Glenn Morris authored
Fixes: debbugs:12283
-
- 01 Sep, 2012 2 commits
-
-
Glenn Morris authored
* lisp/term.el: (term-mode-map): Use easymenu for In/Out, Complete menus. (term-pager-break-map): Initialize in the defvar. (term-terminal-menu, term-signals-menu): Define with easymenu. (term-terminal-menu): Also show it in line-mode. (term-pager-menu): New, extracted from term-process-pager. (term-mode, term-char-mode, term-process-pager): Use easymenu-add. (term-update-mode-line): Propertize line/char and page items. (term-process-pager): Move keymap initialization elsewhere. Fixes: debbugs:11957
-
Paul Eggert authored
This ports to glibc 2.15 or later, when configured with --enable-gcc-warnings. See Eric Blake in <http://lists.gnu.org/archive/html/bug-grep/2012-09/msg00000.html>.
-