1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-10 21:50:37 -08:00
Commit graph

38692 commits

Author SHA1 Message Date
Alan Mackenzie
9dcf599893 Amend parse-partial-sexp correctly to handle two character comment delimiters
Do this by adding a new field to the parser state: the syntax of the last
character scanned, should that be the first char of a (potential) two char
construct, nil otherwise.
This should make the parser state complete.
Also document element 9 of the parser state.  Also refactor the code a bit.

* src/syntax.c (struct lisp_parse_state): Add a new field.
(SYNTAX_FLAGS_COMSTARTEND_FIRST): New function.
(internalize_parse_state): New function, extracted from scan_sexps_forward.
(back_comment): Call internalize_parse_state.
(forw_comment): Return the syntax of the last character scanned to the caller
when that character might be the first of a two character construct.
(Fforward_comment, scan_lists): New dummy variables, passed to forw_comment.
(scan_sexps_forward): Remove a redundant state parameter.  Access all `state'
information via the address parameter `state'.  Remove the code which converts
from external to internal form of `state'.  Access buffer contents only from
`from' onwards.  Reformulate code at the top of the main loop correctly to
recognize comment openers when starting in the middle of one.  Call
forw_comment with extra argument (for return of syntax value of possible first
char of a two char construct).
(Fparse_partial_sexp): Document elements 9, 10 of the parser state in the
doc string.  Clarify the doc string in general.  Call
internalize_parse_state.  Take account of the new elements when consing up the
output parser state.

* doc/lispref/syntax.texi: (Parser State): Document element 9 and the new
element 10.  Minor wording corrections (remove reference to "trivial
cases").
(Low Level Parsing): Minor corrections.

* etc/NEWS: Note new element 10, and documentation of element 9 of parser
state.
2016-03-20 13:19:48 +00:00
Paul Eggert
17ba74742c * src/alloc.c (purecopy): Use AUTO_STRING. 2016-03-20 05:58:17 -07:00
Paul Eggert
9d5f235112 No need to block input when reading directories
* src/dired.c: Don’t include blockinput.h.
(open_directory, directory_files_internal_unwind)
(directory_files_internal, file_attributes):
Don’t block input here, as the reasons for blocking input should
no longer apply.  See blockinput.h FIXME.  (Bug#22996).
2016-03-19 18:45:09 -07:00
Fabrice Popineau
326fff41fa Improve w32notify notifications
* src/w32notify.c (DIRWATCH_BUFFER_SIZE): New macro.
(struct notification): 'terminate' is now a HANDLE.
(send_notifications): Argument is now a pointer to a
notification.  Don't loop waiting for the notification to be
acknowledged by the main thread; instead, just add the
notification to the linked list of notifications waiting to be
acknowledged.
(watch_end): Don't close the directory handle.
(watch_completion): Allocate a new notification structure to be
added to the notifications set.  Call ReadDirectoryChangesW
immediately after adding the new notification, and before sending
a message to the main thread about them.
(watch_worker): Don't loop calling ReadDirectoryChangesW; instead,
call it just once -- it will be called again in watch_completion.
Loop waiting for the main thread's indication to terminate.
(start_watching): Create the event to be used to indicate to the
worker thread that its should terminate.
(remove_watch): Indicate to the worker thread that it should
terminate.
* src/w32term.c (queue_notifications): Loop over all the
notifications in the linked list, processing all of them in one
go.
* src/w32inevt.c (handle_file_notifications): Loop over all the
notifications in the linked list.
* src/w32xfns.c (init_crit): Initialize the linked list of file
notifications.
(delete_crit): Free the linked list of file notifications,
including any unprocessed notifications left in it.
* src/w32term.h (struct notifications_se): New struct.

* test/lisp/filenotify-tests.el (file-notify-test02-events)
(file-notify-test05-dir-validity): Add read-event calls to
facilitate event recognition by the main thread in batch mode.
2016-03-19 14:44:53 +02:00
Paul Eggert
ed909c049e ; Spelling fixes 2016-03-18 08:55:26 -07:00
Paul Eggert
6da3a6dc9e Port to strict C99 offsetof
* src/bidi.c (bidi_copy_it):
* src/lisp.h (CHAR_TABLE_EXTRA_SLOTS):
Use only a single identifier as the second argument of offsetof.
Found by using clang -pedantic.
2016-03-18 08:43:32 -07:00
Paul Eggert
de7601f149 Port to GTK with strict C11 compiler
* src/gtkutil.c (xg_create_frame_widgets, xg_toggle_notify_cb):
Cast from function type to void * where the C standard requires this.
This works around a problem in the prototypes for
g_signal_handler_find and g_signal_handlers_block_by_func, which
use gpointer instead of GCallback.  Found by using gcc -pedantic.
2016-03-18 08:43:32 -07:00
Paul Eggert
658aa2dae8 Port to GTK with strict C99 compiler
* src/emacsgtkfixed.c: Use workaround for GNOME bug 683906 only
in glib 2.35.6 and earlier, since the bug is fixed in 2.35.7.
* src/emacsgtkfixed.c (EmacsFixedPrivate):
* src/emacsgtkfixed.h (EmacsFixedClass):
Remove duplicate typedef, which strict C99 does not allow (Bug#23003).
2016-03-17 23:45:23 -07:00
Anders Lindgren
1df7173eb2 Avoid screen artifacts with new OS X visible bell after scrolling
* src/nsterm.m (EmacsBell): Save NSView when displaying the
visible bell and set `needsDisplay' when removed.
(hide_bell): Trace.
(ns_copy_bits): Trace.
2016-03-17 21:07:04 +01:00
Eli Zaretskii
d6d164f611 Avoid segfaults due to frame image cache being absent
* src/image.c (cache_image): If the frame doesn't have an image
cache, create it.  (Bug#23028)
2016-03-16 19:04:16 +02:00
Eli Zaretskii
6b6916e872 ; * src/xdisp.c (with_echo_area_buffer): Fix typos in comments. 2016-03-16 18:52:36 +02:00
Paul Eggert
7950e1dd3f Port to clang 3.7.0 on x86-64
* configure.ac: Use AS_IF so that gl_WARN_ADD’s prerequisites are
not done conditionally.  This helps clang, which needs
-Wunknown-warning-option later when configured with warnings.
* src/editfns.c (invalid_time): Now _Noreturn, since clang isn’t
smart enough to figure this out on its own if warnings are enabled.
(lisp_time_struct): Redo for clarity, and to pacify clang.
* src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Don’t use
uninitialized locals.  This avoids undefined behavior and pacifies
clang.
2016-03-15 13:49:58 -07:00
Eli Zaretskii
38b276d162 Fix startup of "emacs -nw" on systems that CANNOT_DUMP
* src/xdisp.c (syms_of_xdisp) <resize-mini-windows>: Initialize to
nil.

* lisp/loadup.el <resize-mini-windows>: Set to 'grow-only' after
loading window.el.  (Bug#22975)
2016-03-15 19:46:26 +02:00
Stefan Monnier
e6776f8362 * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_echo_area
(read_key_sequence): Test it here, as before.
(bug#22825).
2016-03-14 20:52:34 -04:00
Eli Zaretskii
48196164aa Avoid crashes at startup on systems that CANNOT_DUMP
* src/xdisp.c (syms_of_xdisp) <redisplay--inhibit-bidi>: New
boolean variable.
(init_iterator, reseat_to_string)
(Fcurrent_bidi_paragraph_direction)
(Fbidi_find_overridden_directionality): Use
redisplay--inhibit-bidi instead of purify-flag, to determine when
it's safe to reorder bidirectional text.

* lisp/loadup.el (redisplay--inhibit-bidi): Set to t at the
beginning of the file.  Reset to nil when charprop.el is
successfully loaded, or when we are going to dump, whichever
happens last.  (Bug#22975)
2016-03-12 11:51:03 +02:00
John Wiegley
63efcc2686 Merge from origin/emacs-25
facb5e2 Update Emacs manual section related to character folding
4efea8e ; * etc/DEBUG: Fix a typo.  (Bug#22984)
f8df21b Update admin/notes/unicode
950be68 Add symref-filepattern entries for c?perl-mode
8b8a6ad Don't use XRANDR 1.3 extensions if the server doesn't support them.
985dacf ; NEWS update for the last change in etags
741a6f8 Sync with gnulib
7352c6c Rework C source files to avoid ^(
a589e9a By default, etags produces unqualified Perl tag names
72c7438 Indent methods with keyword names correctly
28532a9 Propertize character literals and special global variables
        differently
a7d6f39 ; Fix last change in NEWS
83b2a20 Change how /etc/NEWS presents character folding
b417c5a Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding
        off by default""
711ca36 Properly handle lambda as read function (bug 22961)
1b9d616 Propertize operator symbol names with symbol syntax class
9b16bc2 Stop recognizing :#{} as symbol in ruby-mode
366ec77 Allow using the left shift operator without spaces on both sides
02bf7cc Properly handle unquoting in wdired (bug 22938)
16cf469 ; Spelling fix and tighten up comment
f50bc04 Allow splat operator before percent literal
991c801 Don't apply the return value of goto-char as syntax class
6e63b3e Guard against nested percent literals
066f3bc Recognize iuwu-mod after an escaped newline
6f7a57c Fix symbolic mode string conversion for s and t
50b9826 Update 'ucs-names' database
993b2fb Improve doc string of 'shell-command'
b71c717 Make the code in movemail_strftime more general
cc057e4 Speed up redisplay of binary files with long series of nulls
e51b27e Remove the highlighting support for quoting 'like this' inside
        Lisp docstrings
b1abce1 Restore leading space in movemail pop output
98b8d44 Fix bidi-paragraph-direction in Rmail view buffer
dc9d837 Don't misindent computed property generator methods
7923112 Fix mbox files produced by movemail on MS-Windows
c45a1ca doc string file descriptor exhaustion fix
265141b Fix Bug#22814
2016-03-11 13:33:32 -08:00
Ken Raeburn
8b8a6ad3e3 Don't use XRANDR 1.3 extensions if the server doesn't support them.
* src/xterm.h (struct x_display_info): Add fields to save XRANDR
version number.
* src/xfns.c (x_get_monitor_attributes): Save the version numbers
after querying the X server.
(x_get_monitor_attributes_xrandr): Don't use XRRGetOutputPrimary or
XRRGetScreenResourcesCurrent if the server doesn't support at least
RANDR version 1.3.  Conditionalize the code blocks on compiling
against library version 1.3 or better, rather than feature tests for
each function.
* configure.ac: Stop testing for those two functions.
2016-03-10 14:28:54 -05:00
Paul Eggert
7352c6c695 Rework C source files to avoid ^(
Work around Bug#22884 by rewording comments and strings to avoid ‘(’
at the start of a line unless it starts a function.  This change
is a short-term hack; in the longer run we plan to fix cc-mode’s
performance for C files that have ‘(’ at the start of a line in a
comment or string.
2016-03-10 07:59:19 -08:00
Alain Schneble
dda6201a97 Fix asynchronous TLS connections on MS-Windows
* src/w32.c (sys_write): Don't switch the socket to blocking mode
if the connection attempt is in progress.  Instead, return either
EWOULDBLOCK immediately if the connection is in progress, or the
error code produced by '_sys_wait_connect' if the connection
failed.  Switching the socket to blocking mode was found to
interfere with GnuTLS handshake.  (Bug#22789)
2016-03-10 16:43:09 +02:00
Paul Eggert
f0b3108014 Minor fixes for getaddrinfo_a usage
* src/process.c (Fdelete_process): Check gai_cancel return value.
That way, there’s no need to invoke gai_error.  Check gai_suspend
return value.
(Fmake_network_process): Don’t assume gai_strerror returns a UTF-8
string.  Simplify call to connect_network_socket.
(check_for_dns): Avoid unnecessary initialization of local.
2016-03-09 16:25:41 -08:00
Andreas Schwab
711ca362e7 Properly handle lambda as read function (bug 22961)
* src/lread.c (readchar): Be more strict about checking for
string in cons for read_vector.
(unreadchar): Likewise.
2016-03-09 19:45:40 +01:00
Paul Eggert
e0400b72a2 Pacify --enable-gcc-warnings
* src/xfns.c (x_create_tip_frame): Omit unused local.
(Fx_show_tip): Don’t jump over auto initialization.
2016-03-08 07:35:17 -08:00
Martin Rudalics
80864c2a04 Optionally reuse tooltip frames instead of deleting/recreating them.
* src/frame.c (tooltip_reuse_hidden_frame): New option.
* src/w32fns.c (x_create_tip_frame): Remove argument TEXT.  Fix
handling of dividers.
(x_hide_tip): New function.
(Fx_show_tip): Try to reuse old tooltip frame when
`tooltip-reuse-hidden-frame' is non-nil and frame parameters
have not changed.  Insert STRING here instead of passing it to
x_create_tip_frame.  Compute size of tooltip window with
Fwindow_text_pixel_size.  Obey Vw32_tooltip_extra_pixels when
padding tooltip window.
(Fx_hide_tip): Call x_hide_tip.
(Vw32_tooltip_extra_pixels): New variable.
* src/xdisp.c (Fwindow_text_pixel_size): Don't return negative y
value.  Fix doc-string.
* src/xfns.c (x_create_tip_frame): Remove argument TEXT.  Call
make_frame with mini_p argument false.
(x_hide_tip): New function.
(Fx_show_tip): Try to reuse old tooltip frame when
`tooltip-reuse-hidden-frame' is non-nil and frame parameters
have not changed.  Insert STRING here instead of passing it to
x_create_tip_frame.  Compute size of tooltip window with
Fwindow_text_pixel_size.
(Fx_hide_tip): Call x_hide_tip.
* lisp/cus-start.el (tooltip-reuse-hidden-frame): Add
customization entry.
2016-03-08 08:51:38 +01:00
Paul Eggert
59c7a5d711 Assume getaddrinfo in C code
* admin/CPP-DEFINES, configure.ac: Remove HAVE_GETADDRINFO, HAVE_H_ERRNO.
All uses removed.
* doc/lispref/processes.texi (Network, Network Processes), etc/NEWS:
Say that port numbers can be integer strings.
* lib-src/pop.c (h_errno) [!WINDOWSNT && !HAVE_H_ERRNO]: Remove decl.
(socket_connection): Assume HAVE_GETADDRINFO.
* lisp/mpc.el (mpc--proc-connect):
* lisp/net/network-stream.el (open-network-stream):
It’s now OK to use integer strings as port numbers.
* src/process.c (conv_numerical_to_lisp) [!HAVE_GETADDRINFO]: Remove.
(Fmake_network_process): Assume HAVE_GETADDRINFO.
2016-03-07 18:55:20 -08:00
Paul Eggert
6bc8689c04 Remove support for IRIX
The IRIX port wasn’t really working anyway, and the code was
getting in the way of other changes (e.g., getaddrinfo fixes).
IRIX’s supplier dropped support for IRIX in 2013.
* admin/CPP-DEFINES:
* configure.ac (opsys):
* doc/lispref/os.texi (System Environment):
* etc/MACHINES, etc/PROBLEMS:
* lisp/find-dired.el (find-grep-options):
* lisp/lpr.el (lpr-lp-system):
* lisp/ls-lisp.el (ls-lisp-emulation):
* lisp/mail/rmail.el (rmail-spool-directory):
* lisp/net/net-utils.el (ping-program-options):
* lisp/progmodes/gud.el (gud-irix-p, gud-dbx-use-stopformat-p):
* lisp/progmodes/ps-mode.el (ps-mode-print-function):
* src/conf_post.h [IRIX6_5]:
* src/emacs.c (Vsystem_type):
* src/filelock.c (get_boot_time_1):
* src/process.c (process_send_signal):
* src/unexelf.c (unexec):
Omit IRIX-specific code and/or documentation.
* configure.ac (NON_GCC_TEST_OPTIONS, IRIX6_5, PREFER_VSUSP):
Remove.  All uses removed.
* etc/NEWS: Document the change.
2016-03-07 08:26:36 -08:00
Ken Brown
258f1034d7 Fix Cygwin-w32 build
* src/w32fns.c (funhook, setup_w32_kbdhook, remove_w32_kbdhook):
Define only if WINDOWSNT, and update all uses accordingly.
* src/w32term.h (check_w32_winkey_state, setup_w32_kbdhook)
(remove_w32_kbdhook): Declare only if WINDOWSNT.
(w32_kbdhook_active): Define as 0 if not WINDOWSNT.
2016-03-06 12:08:39 -05:00
Eli Zaretskii
cc057e4313 Speed up redisplay of binary files with long series of nulls
* src/bidi.c (bidi_resolve_weak): Avoid entering a loop searching
for a character needed for resolving the type of a series of BN
and ET characters, as required by rule W5 of UAX#9, if the results
of the resolution are known in advance, because we are at level
zero, and the previous strong character was L.
(bidi_resolve_neutral): Partially resurrect the optimization for a
long series of control characters in an otherwise strictly L2R
text.
(bidi_level_of_next_char): Don't enter the loop that searches for
a paragraph separator if the current character is already at base
embedding level.  (Bug#22739)
2016-03-06 18:14:46 +02:00
Lars Magne Ingebrigtsen
20cc418259 Don't signal errors on E_AGAIN
* src/gnutls.c (Fgnutls_errorp): Qgnutls_e_again is not an
error now that TLS is async.
2016-03-06 10:22:37 +01:00
Lars Magne Ingebrigtsen
21b509d444 Allow making TLS negotiation blocking
* lisp/net/gnutls.el (gnutls-negotiate): Make negotiation blocking.

* src/gnutls.c (Fgnutls_boot): Provide a new keyword,
:complete-negotiation, to specify that we want complete
negotiation even if the socket is non-blocking.
(gnutls_try_handshake): Complete negotiation if given that keyword.

* src/process.h (L): Added gnutls_complete_negotiation_p.
2016-03-05 17:04:34 +01:00
Eli Zaretskii
bc96f6e827 Implement getaddrinfo fallback for MS-Windows
See http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg01602.html
for more details.

* nt/mingw-cfg.site (ac_cv_func_getaddrinfo)
(ac_cv_func_gai_strerror): Set to "yes", as the configure script's
test program is not smart enough to auto-detect these.
* nt/inc/sys/socket.h (getaddrinfo, freeaddrinfo): Redirect to
sys_getaddrinfo and sys_freeaddrinfo.  Provide prototypes for
sys_getaddrinfo and sys_freeaddrinfo.

* src/w32.c (init_winsock): Try loading getaddrinfo and
freeaddrinfo from ws2_32.dll.
(sys_getaddrinfo, sys_freeaddrinfo): New functions.

* lib-src/pop.c [WINDOWSNT]: Include winsock2.h, not winsock.h,
and also ws2tcpip.h.
(getaddrinfo, freeaddrinfo) [WINDOWSNT]: Redirect to
sys_getaddrinfo and sys_freeaddrinfo, respectively.
(load_ws2, sys_getaddrinfo, sys_freeaddrinfo) [WINDOWSNT]: New
functions.
2016-03-05 12:12:58 +02:00
Paul Eggert
c45a1ca3c4 doc string file descriptor exhaustion fix
* src/doc.c (get_doc_string): Move newly-added check to a better
location (Bug#22814).
2016-03-04 16:30:43 -08:00
Lars Ingebrigtsen
2d5b20f68c Add accessors for `file-attributes'
* doc/lispref/files.texi (File Attributes): Mention the accessors.

* lisp/files.el (file-attribute-type)
(file-attribute-link-number, file-attribute-user-id)
(file-attribute-group-id, file-attribute-access-time)
(file-attribute-modification-time)
(file-attribute-change-time, file-attribute-size)
(file-attribute-modes, file-attribute-inode-number)
(file-attribute-device-number): New functions.

* src/dired.c (Ffile_attributes): Mention the accessors (bug#22890).
2016-03-04 15:33:38 +00:00
Michael Albinus
4849677967 Fix Bug#22814
* lisp/autorevert.el (global-auto-revert-mode): Do not set
`auto-revert-use-notify' to nil.

* etc/NEWS: Mention this.

* etc/PROBLEMS: Remove problem Bug#22814.

* src/kqueue.c: Include <sys/resource.h>.
(Fkqueue_add_watch): Limit the number of used file descriptors.
(Bug#22814)

* test/lisp/filenotify-tests.el (file-notify--test-remote-enabled)
(file-notify-test00-availability, file-notify-test01-add-watch)
(file-notify-test02-events, file-notify-test06-many-events):
Use #' read syntax for functions.
(file-notify-test05-dir-validity)
(file-notify-test06-many-events): Simplify directory creation.
(file-notify-test09-sufficient-ressources): New test.
2016-03-04 14:01:36 +00:00
Michael Albinus
265141b332 Fix Bug#22814
* src/doc.c (get_doc_string): Raise an error in case too many
files are open.  (Bug#22814)
2016-03-04 12:57:43 +00:00
John Wiegley
17982e08d7 Merge from origin/emacs-25
d6f6b7d * etc/AUTHORS: Update the AUTHORS file
5cf7c39 authors.el updates
a26f193 ; fix changelog entries
fbc85c7 ; make change-history-commit
06da00c Fix Bug#22859
ab30bf5 ; * src/w32proc.c: Update the commentary to sys_select.
1481029 Fix reordering of bidi text in an isolate inside an override
60e0596 Document c-guess-basic-syntax in the CC Mode manual.
2016-03-03 23:53:38 -08:00
John Wiegley
de3fa655de Merge from origin/emacs-25
cb1e3da Also allow setting the paragraph direction to nil
bbe8a89 Made the new OS X visible bell more visible.
2016-03-03 23:53:27 -08:00
John Wiegley
692caf1e8d Merge from origin/emacs-25
b13cab6 Add a eww command to toggle paragraph direction
4e46128 * nextstep/WISHLIST: Merge into etc/TODO and remove.
9e078e5 Fix char signedness issue in bidi code
064adf6 * lib-src/pop.c (socket_connection): Fix format string.
14060a9 Avoid inflooping in thing-at-point-looking-at
098d47b * lisp/emacs-lisp/derived.el (define-derived-mode): Revert
        indent change.
b5db8e0 etc/PROBLEMS: Mention problems with using file descriptors
ec10ef9 * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
d2dd614 Remove unneeded workaround in xftfont.c
9b7593c ; * etc/NEWS: Reflect latest changes in saveplace.
fde0cd1 * lisp/saveplace.el (save-place-local-mode): New minor mode
06a872b Fix redisplay on a TTY after 'make-frame'
95f5a43 Make double-click-1 work with unbalanced parens in CC Mode.
        Fixes bug#5560.
7d206fc Input method polish-slash should not use keyboard translation
8be32cf Fix an assertion
040e0d6 Fix 'toggle-save-place'
5244db2 * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
2016-03-03 23:53:08 -08:00
John Wiegley
68fa05fd93 Merge from origin/emacs-25
e6a3819 Update HISTORY section in readme for the NextStep interface.
f67f1ed ; * doc/lispref/modes.texi (Font Lock Basics): Minor rewording.
7c81a0b Improve documentation of 'save-place-mode'
cab3f0a Allocate glyph matrices for the initial frame
e01c72f Fix white space in last checkin
370eb67 Make `insert-pair' always leave the cursor where documented
b594393 etc/NEWS: Mention the new second parameter to `package-install'
2016-03-03 23:52:27 -08:00
John Wiegley
68ed6bfb65 Merge from origin/emacs-25
bd58c13 Improve documentation of focus-related hooks
00a4720 Further improve doc string of 'disable-point-adjustment'
c582def Further adaptions in file-notify-tests.el for w32notify
a1585e1 Don't bug out on localised dates in gnus-icalendar
2016-03-03 23:52:26 -08:00
Lars Ingebrigtsen
0c5c04d58e Ensure TLS negotiation progress
* src/gnutls.h (GNUTLS_EMACS_HANDSHAKES_LIMIT): Increase the
number of retries so that we try for about a minute.

* src/process.c (wait_reading_process_output): Ensure progress
for DNS resolution and TLS negotiation.
2016-03-03 05:14:55 +00:00
Paul Eggert
227ab51db6 emacs-module.h slight simplification
* src/emacs-module.c (emacs_init_function, emacs_subr): Move here ...
* src/emacs-module.h: ... from here, as they don’t need to be public.
(enum emacs_arity): Remove useless enum tag.  The enum value is
used in ptrdiff_t contexts.

* src/emacs-module.c (CHECK_USER_PTR): Fix typo in previous change.
2016-03-02 14:31:21 -08:00
Paul Eggert
5840068864 * src/emacs-module.c (CHECK_USER_PTR): Fix typo in previous change. 2016-03-02 14:16:25 -08:00
Paul Eggert
08e239a219 emacs-module.c simplification and tuneup
* src/emacs-module.c (CHECK_USER_PTR): New function.
(module_get_user_ptr, module_set_user_ptr)
(module_get_user_finalizer, module_set_user_finalizer): Use it.
(module_make_global_ref, module_copy_string_contents)
(module_make_string, module_vec_set, module_vec_get): Omit
unnecessary runtime tests.  For example, vector sizes are always
fixnums, so we don’t need to test that they are in fixnum range.
2016-03-02 10:48:06 -08:00
Philipp Stephani
d20d02fef7 Use standard checks whenever possible.
This is possible in all functions where we catch signals anyway.

* emacs-module.c (module_make_global_ref, module_funcall)
(module_copy_string_contents, module_make_string): Use xsignal0
and CHECK macros for argument checks.
2016-03-02 10:48:06 -08:00
Paul Eggert
65f692658e Deterministic build improvements
* configure.ac (BUILD_DETAILS): Rename from DETERMINISTIC_DUMP,
and negate its sense.  Use it via AC_SUBST, not AC_DEFINE,
and have its value be either empty or --no-build-details.
All uses changed.  Change option to --disable-build-details.
* doc/lispref/cmdargs.texi (Initial Options):
Document --no-build-details.
* doc/lispref/internals.texi (Building Emacs):
* etc/NEWS:
Document --disable-build-details.
* doc/lispref/intro.texi (Version Info): Say that
emacs-build-time can be nil.
* lisp/erc/erc-compat.el (erc-emacs-build-time):
Now nil if details are omitted.
* lisp/erc/erc.el (erc-cmd-SV):
* lisp/version.el (emacs-build-time):
Now nil if no build details.
(emacs-version):
Output build time only if build details.
* src/Makefile.in (BUILD_DETAILS): New macro.
(temacs, bootstrap-emacs): Use it.
* src/emacs.c (build_details): New var.
(standard_args, main): Support --no-build-details.
(Vdeterministic_dump): Remove; all uses replaced
by !build_details.
(syms_of_emacs): Set Vbuild_details to a boolean, not
to a Lisp_Object.
* src/lisp.h (build_details): New decl.
* src/sysdep.c (init_system_name): When !build_details,
set system-name to nil, not to "elided".
2016-03-02 10:24:11 -08:00
Philipp Stephani
d5a18a9327 Remove build system name from deterministic dumps
* configure.ac (DETERMINISTIC_DUMP): New configuration option.
* lisp/version.el (emacs-build-time): Add a comment to make the
build time deterministic if requested.
(emacs-build-system): Make variable deterministic if requested.
* src/emacs.c (main): Initialize `deterministic-dump' from the
configuration option.
(syms_of_emacs): New constant `deterministic-dump'.
* src/sysdep.c (init_system_name): Use a constant
if a deterministic dump is requested.
2016-03-02 10:24:11 -08:00
Eli Zaretskii
ab30bf5e87 ; * src/w32proc.c: Update the commentary to sys_select. 2016-03-01 20:18:10 +02:00
Paul Eggert
7d69780681 * src/syntax.c (syntax_multibyte): Omit unnecessary parens. 2016-03-01 09:23:48 -08:00
Eli Zaretskii
14810299f2 Fix reordering of bidi text in an isolate inside an override
* src/bidi.c (bidi_resolve_explicit): Override the orig_type value
of FSI with either LRI or RLI, as determined by the first strong
directional character in the isolate.  This prevents failure to
isolate when the FSI...PDI text is inside a directional override.
(Bug#22786)
2016-03-01 18:41:04 +02:00
Anders Lindgren
bbe8a899ac Made the new OS X visible bell more visible.
* src/nsterm.m: (EmacsBell:init:) Scaled up the visible bell
  "caution" image five times, as the image in its original size
  was hard to see.
2016-02-29 21:54:15 +01:00