1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-30 12:21:25 -08:00
Commit graph

134044 commits

Author SHA1 Message Date
Noam Postavsky
c8b86362d4 Allow setf of buffer-modified-p without argument (Bug#21201)
* lisp/emacs-lisp/cl-lib.el (setf buffer-modified-p): Take current
buffer if optional argument BUF is not passed.
2018-08-27 18:54:23 -04:00
Alan Mackenzie
66bf12b6a1 CC Mode: Fix syntactic context of BOD sometimes being 'topmost-intro-cont
This happened when the type of the previous function was a struct, etc.,
declaration.

* lisp/progmodes/cc-mode (c-guess-basic-syntax CASE 5N): Check here (for
'topmost-intro-cont) that the first opening brace after BOD is the opening
brace preceding the starting point.
2018-08-27 20:37:49 +00:00
Alan Mackenzie
3266e69dab c-where-wrt-brace-construct: deal with point following a struct's semicolon.
More precisely, when point is right after the terminating semicolon of a
construct like "struct foo { .... } bar;", the function must return
'at-function-end.

* lisp/progmodes/cc-cmds.el (c-where-wrt-brace-construct): Surround an
existing test for 'at-function-end with an `or' form, the other arm testing
for being after the semicolon above.
2018-08-27 19:49:25 +00:00
Gemini Lasswell
674f276c0a Fix links in backtraces to work on advised built-ins (Bug#25393)
* lisp/emacs-lisp/backtrace.el (backtrace--print-func-and-args): Make
links to the original definition of advised functions.  Handle the
case when the function slot of the backtrace frame contains the
definition of a built-in function.
2018-08-27 10:43:57 -07:00
Michael Albinus
f2701917e2 Bump Tramp version to 2.4.1-pre
* doc/misc/trampver.texi:
* lisp/net/trampver.el: Change version to "2.4.1-pre".

* lisp/net/tramp.el: Add "Package-Requires" header.
2018-08-27 16:45:50 +02:00
Michael Albinus
c61fbc5293 Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs 2018-08-27 12:51:44 +02:00
Glenn Morris
1afd313334 Merge from origin/emacs-26
54fb383 (origin/emacs-26) Fix detection of freed emacs_values (Bug#32...
769d0cd ; Fix out-of-tree build for mod-test.so
9a1329e Avoid crashes with very wide TTY frames on MS-Windows
9a613d3 Prevent `modify-file-local-variable-prop-line' from adding ex...
624e7dc Update GNOME bugtracker URLs
51ef6d5 Clarify in the Emacs manual that ChangeLog files are not used
6e08019 Recognize codepage 65001 as a valid encoding
1a350d7 ; * etc/NEWS: Fix format of first lines of some entries.
22d1f53 Avoid compilation warning in nt/addpm.c
7bc9ce7 Fix duplicate custom group names in bibtex.el
a9cf938 Fix outdated text in the Calc manual

Conflicts:
	etc/NEWS
	etc/PROBLEMS
	src/emacs-module.c
	src/gtkutil.c
	src/image.c
	src/xterm.c
	test/Makefile.in
2018-08-26 15:10:50 -07:00
Eli Zaretskii
18d52b90a1 Fix a typo in alloc.c
* src/alloc.c (Fmemory_use_counts): The list we return now has
only 7 elements, not 8.  (Bug#32531)
2018-08-26 17:53:05 +03:00
Alan Mackenzie
5c642b2dc1 CC Mode: make c-display-defun-name work with a pointer return type.
Fixes bug #32403.

* lisp/progmodes/cc-cmds.el (c-in-function-trailer-p): No longer insist on
c-beginning-of-decl-1 returning 'same.
(c-where-wrt-brace-construct): Tighten up the test for looking at a symbol by
excluding keywords.  When point is after a }, do not return 'at-function-end
for a struct/union/class/...
(c-defun-name-1): Considerably simplify, by amalgamating the two cond arms
which find structs etc., and by using functions like c-forward-declarator
rather than the faulty analysis of the source by hand.
2018-08-26 11:05:22 +00:00
Stefan Monnier
e1370c36ce * lisp/net/tramp.el: Add "Version" header. 2018-08-26 10:33:09 +02:00
Paul Eggert
0edf605832 Improve format-seconds accuracy
* doc/lispref/os.texi (Time Parsing): It works with bignums.
* lisp/calendar/time-date.el (format-seconds):
Take the floor so that the resulting arithmetic is exact.
2018-08-25 19:57:01 -07:00
Sergey Vinokurov
54fb383af6 Fix detection of freed emacs_values (Bug#32479)
* src/emacs-module.c (module_free_global_ref): Compare a value to be
freed with all entries of the list.

* test/data/emacs-module/mod-test.c (Fmod_test_globref_free): New
function.
(emacs_module_init): Make it accessible from Lisp.
* test/src/emacs-module-tests.el (mod-test-globref-free-test): New
test which uses it.
2018-08-25 18:57:56 -04:00
Noam Postavsky
769d0cdaa9 ; Fix out-of-tree build for mod-test.so
* test/Makefile.in: Don't look for emacs-module.h in $(srcdir), since
it is generated.
2018-08-25 18:57:28 -04:00
Paul Eggert
2daf8b7e55 Prefer CONSP etc. to XTYPE
* src/nsmenu.m (process_dialog:):
(initFromContents:isQuestion:):
Prefer CONSP (x) to XTYPE (x) == Lisp_Cons,
and similarly for STRINGP (x).
2018-08-25 14:20:27 -07:00
Paul Eggert
ccdb08ef4e Improve performance of CONSP, FIXNUMP, etc.
Optimization opportunity noted by Pip Cet in:
https://lists.gnu.org/r/emacs-devel/2018-08/msg00828.html
On my platform (Fedora 28 x86-64, AMD Phenom II X4 910e,
user+system time), this improved ‘make compile-always’
performance by 0.4% and shrank text size by a similar amount.
* src/lisp.h (TAGGEDP, lisp_h_TAGGEDP): New macros and function.
(lisp_h_CONSP, lisp_h_FLOATP, lisp_h_SYMBOLP)
(lisp_h_VECTORLIKEP, make_lisp_ptr, STRINGP): Use them.
(lisp_h_FIXNUMP): Use the same idea that lisp_h_TAGGEDP uses.
2018-08-25 14:17:30 -07:00
Eli Zaretskii
9a1329e966 Avoid crashes with very wide TTY frames on MS-Windows
* src/w32console.c <glyph_base>: Reduce the number of elements
to 80.
<glyphs, glyphs_len>: New static variables.
(w32con_clear_end_of_line): If the line is wider than the
current size of the "empty row" in 'glyphs', reallocate
'glyphs' to support the full width of the frame.  This
avoids segfaults when the frame is wider than 256 columns.
(Bug#32445)
2018-08-25 15:26:41 +03:00
Wenjamin Petrenko
9a613d3ed0 Prevent `modify-file-local-variable-prop-line' from adding extra ';'
* lisp/files-x.el (modify-file-local-variable-prop-line): Handle
whitespace when checking if there's already a ';' before the
variable (Bug#23294).

Copyright-paperwork-exempt: yes
2018-08-24 21:54:16 -04:00
Glenn Morris
624e7dc778 Update GNOME bugtracker URLs
* configure.ac, admin/notes/multi-tty, etc/PROBLEMS:
* src/emacs.c (main):
* src/xterm.c (x_connection_closed): Update GNOME bugtracker URLs.
; * src/gtkutil.c (xg_display_close):
; * src/image.c (svg_load_image): Update URLs in comments.
2018-08-24 13:13:08 -04:00
Noam Postavsky
161139a42c Detect Chinese sudo password prompts (Bug#31075)
* lisp/comint.el (comint-password-prompt-regexp): Allow text between
the prompt prefix and password equivalent.
* lisp/eshell/esh-mode.el (eshell-password-prompt-regexp): Accept some
unicode alternatives to ":".
* test/lisp/comint-tests.el (comint-testsuite-password-strings): Add
test case.
2018-08-23 22:50:15 -04:00
Noam Postavsky
74277b0e88 Fix comint-password-prompt-regexp
The change from 2017-12-22 "Support French password prompts in shell"
tried to allow nonbreaking space in addition to whitespace syntax
characters around the colon, but used square brackets which cause "\s"
to be interpreted literally rather than as a backslash construct.
* lisp/comint.el (comint-password-prompt-regexp): Use [[:blank:]]
instead, which also has the benefit of not relying on the major mode's
whitespace syntax setting.
* test/lisp/comint-tests.el (comint-testsuite-password-strings):
Update French localized entry to have a space before the colon, as
reported in Bug#29729.
2018-08-23 22:49:04 -04:00
Charles A. Roelli
ca8dbde14b Replace 2 checks in rmailsum.el with 'pos-visible-in-window-p'
* lisp/mail/rmailsum.el (rmail-summary-scroll-msg-up)
(rmail-summary-scroll-msg-down): Use 'pos-visible-in-window-p'
instead of checking the condition by hand.
2018-08-23 22:10:08 +02:00
Eli Zaretskii
51ef6d5576 Clarify in the Emacs manual that ChangeLog files are not used
* doc/emacs/trouble.texi (Sending Patches): Use "commit log"
instead of "change log", to avoid the interpretation that we
are talking about literal ChangeLog files.  (Bug#32359)
2018-08-23 20:02:27 +03:00
Lars Ingebrigtsen
3946e1db24 Fix binding error in nnfolder-read-folder
* lisp/gnus/nnfolder.el (nnfolder-read-folder): Fix previous
checkin that left `active' unbound before using it.
2018-08-23 16:55:35 +02:00
Paul Eggert
a4a3c92e9d Prune most-positive-fixnum from Lisp source
I looked through all instances of most-negative-fixnum
and most-positive-fixnum in the Lisp source code, and
when it was easy I removed assumptions that integers
fit in fixnums.  The remaining instances are either
nontrivial to fix, or are inherent to the algorithm.
* lisp/arc-mode.el (archive-l-e): Do not convert to float,
since we have bignums now.  All uses changed.
* lisp/calc/calc.el (math-bignum):
Don’t special-case most-negative-fixnum.
* lisp/calendar/parse-time.el (parse-time-string):
* lisp/emacs-lisp/edebug.el (edebug-read-special):
* lisp/emacs-lisp/package.el (package--remove-hidden):
* lisp/gnus/nnfolder.el (nnfolder-read-folder):
* lisp/international/mule-util.el (filepos-to-bufferpos--dos):
* lisp/menu-bar.el (menu-bar-update-buffers):
* lisp/net/rcirc.el (rcirc-handler-317):
* lisp/org/org-agenda.el (org-cmp-ts):
* lisp/window.el (window--resize-child-windows):
Avoid arbitrary limit to most-positive-fixnum or to
most-negative-fixnum.
* lisp/calendar/time-date.el (days-to-time):
* lisp/erc/erc-dcc.el (erc-unpack-int):
Don’t worry about integer overflow.
* lisp/cedet/semantic/wisent/comp.el (wisent-BITS-PER-WORD):
* lisp/gnus/message.el (message-unique-id):
* lisp/org/org-footnote.el (org-footnote-new):
Simplify.
* lisp/erc/erc-dcc.el (erc-most-positive-int-bytes)
(erc-most-positive-int-msb): Remove; no longer needed.
* lisp/net/imap.el (imap-string-to-integer): Remove; unused.
* lisp/org/org-element.el (org-element--cache-generate-key):
Document fixnum limitation.
2018-08-22 20:46:08 -07:00
Paul Eggert
ee641b87cf Fix bugs when rounding to bignums
Also, since Emacs historically reported a range error when
rounding operations overflowed, do that consistently for all
bignum overflows.
* doc/lispref/errors.texi (Standard Errors):
* doc/lispref/numbers.texi (Integer Basics): Document range errors.
* src/alloc.c (range_error): Rename from integer_overflow.
All uses changed.
* src/floatfns.c (rounding_driver): When the result of a floating
point rounding operation does not fit into a fixnum, put it
into a bignum instead of always signaling an range error.
* test/src/floatfns-tests.el (divide-extreme-sign):
These tests now return the mathematically-correct answer
instead of signaling an error.
(bignum-round): Check that integers round to themselves.
2018-08-22 19:30:57 -07:00
Paul Eggert
be5fe6183e Undo part of previous change
Issue spotted by Pip Cet in:
https://lists.gnu.org/r/emacs-devel/2018-08/msg00758.html
* lisp/vc/vc-hg.el (vc-hg--raw-dirstate-search):
Go back to using eq on flen, since it must be a fixnum.
2018-08-22 14:14:21 -07:00
Paul Eggert
ae38a3b820 Make vc-hg safe for bignums
* lisp/vc/vc-hg.el (vc-hg--raw-dirstate-search):
Use eql, not eq, on integers that could be bignums.
(vc-hg--time-to-integer): Rename from vc-hg--time-to-fixnum.
All uses changed.
(vc-hg-state-fast): Remove test that 32-bit unsigned values
must be fixnums.
2018-08-22 10:19:01 -07:00
Paul Eggert
91a62c4b21 * src/buffer.h (DECODE_POSITION): Remove; unused. 2018-08-21 22:03:05 -07:00
Paul Eggert
30efb8ed6c Add bignum support to floor, ceiling, etc.
Problem reported by Andy Moreton (Bug#32463#35 (d)).
* src/floatfns.c (rounding_driver): Change the signature
of the integer rounder to use mpz_t rather than EMACS_INT.
All uses changed.  Support bignums.
(ceiling2, floor2, truncate2, round2): Remove.
All uses changed to rounddiv_q or to a GMP library function.
(rounddiv_q): New function.
* test/src/floatfns-tests.el (bignum-round): New test.
2018-08-21 19:24:38 -07:00
Paul Eggert
c79444c5b7 Move bignump, fixnump from C to Lisp
* doc/lispref/objects.texi (Integer Type): Mention
most-negative-fixnum and most-positive-fixnum as alternatives
to fixnump and bignump.
* lisp/subr.el (fixnump, bignump): Now written in Lisp.
* src/data.c (Ffixnump, Fbignump): No longer written in C,
as these new functions are not crucial for performance.
2018-08-21 19:24:38 -07:00
Paul Eggert
f8069952ab Fix assertion failure when reading 'BIGNUM.'
Problem reported by Stefan Monnier (Bug#32476).
* src/lread.c (string_to_number): Don't pass leading "+"
or trailing "." or junk to make_bignum_str.
* test/src/lread-tests.el (lread-string-to-number-trailing-dot):
New test.
2018-08-21 15:51:05 -07:00
Paul Eggert
f18af6cd5c Audit use of lsh and fix glitches
I audited use of lsh in the Lisp source code, and fixed the
glitches that I found.  While I was at it, I replaced uses of lsh
with ash when either will do.  Replacement is OK when either
argument is known to be nonnegative, or when only the low-order
bits of the result matter, and is a (minor) win since ash is a bit
more solid than lsh nowadays, and is a bit faster.
* lisp/calc/calc-ext.el (math-check-fixnum):
Prefer most-positive-fixnum to (lsh -1 -1).
* lisp/vc/vc-hg.el (vc-hg-state-fast): When testing fixnum width,
prefer (zerop (ash most-positive-fixnum -32)) to (zerop (lsh -1
32)) (Bug#32485#11).
* lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode):
Tighten sanity-check for bytecode overflow, by checking that the
result of (ash pc -8) is nonnegative.  Formerly this check was not
needed since lsh was used and the number overflowed differently.
* lisp/net/dns.el (dns-write): Fix some obvious sign typos in
shift counts.  Evidently this part of the code has never been
exercised.
* lisp/progmodes/hideif.el (hif-shiftleft, hif-shiftright):
* lisp/term/common-win.el (x-setup-function-keys):
Simplify.
* admin/unidata/unidata-gen.el, admin/unidata/uvs.el:
* doc/lispref/keymaps.texi, doc/lispref/syntax.texi:
* doc/misc/calc.texi, doc/misc/cl.texi, etc/NEWS.19:
* lisp/arc-mode.el, lisp/calc/calc-bin.el, lisp/calc/calc-comb.el:
* lisp/calc/calc-ext.el, lisp/calc/calc-math.el:
* lisp/cedet/semantic/wisent/comp.el, lisp/composite.el:
* lisp/disp-table.el, lisp/dos-fns.el, lisp/edmacro.el:
* lisp/emacs-lisp/bindat.el, lisp/emacs-lisp/byte-opt.el:
* lisp/emacs-lisp/bytecomp.el, lisp/emacs-lisp/cl-extra.el:
* lisp/erc/erc-dcc.el, lisp/facemenu.el, lisp/gnus/message.el:
* lisp/gnus/nndoc.el, lisp/gnus/nnmaildir.el, lisp/image.el:
* lisp/international/ccl.el, lisp/international/fontset.el:
* lisp/international/mule-cmds.el, lisp/international/mule.el:
* lisp/json.el, lisp/mail/binhex.el, lisp/mail/rmail.el:
* lisp/mail/uudecode.el, lisp/md4.el, lisp/net/dns.el:
* lisp/net/ntlm.el, lisp/net/sasl.el, lisp/net/socks.el:
* lisp/net/tramp.el, lisp/obsolete/levents.el:
* lisp/obsolete/pgg-parse.el, lisp/org/org.el:
* lisp/org/ox-publish.el, lisp/progmodes/cc-defs.el:
* lisp/progmodes/ebnf2ps.el, lisp/progmodes/hideif.el:
* lisp/ps-bdf.el, lisp/ps-print.el, lisp/simple.el:
* lisp/tar-mode.el, lisp/term/common-win.el:
* lisp/term/tty-colors.el, lisp/term/xterm.el, lisp/vc/vc-git.el:
* lisp/vc/vc-hg.el, lisp/x-dnd.el, test/src/data-tests.el:
Prefer ash to lsh when either will do.
2018-08-21 13:44:32 -07:00
Paul Eggert
81e7eef822 Fix bignum bugs with nth, elt, =
* src/bytecode.c (exec_byte_code): Support bignums
when implementing nth, elt, and =.
* src/lisp.h (SMALL_LIST_LEN_MAX): New constant.
* src/fns.c (Fnthcdr): Use it.
(Felt): Do not reject bignum indexes.
2018-08-21 11:41:54 -07:00
Glenn Morris
ad31afc35b Restore compatibility with Texinfo < 6
* doc/lispref/numbers.texi (Integer Basics, Bitwise Operations):
Don't use Texinfo 6.0's "@sup" command.
2018-08-21 13:05:31 -04:00
Eli Zaretskii
6e08019af7 Recognize codepage 65001 as a valid encoding
* lisp/international/mule-conf.el (cp65001): Define it as an
alias for UTF-8.
2018-08-21 19:35:31 +03:00
Eli Zaretskii
b2ffcdeae6 ; * etc/NEWS: Fix format of the first lines of some entries. 2018-08-21 19:07:53 +03:00
Eli Zaretskii
1a350d771a ; * etc/NEWS: Fix format of first lines of some entries. 2018-08-21 18:58:15 +03:00
Eli Zaretskii
43b1bf355a Improve documentation of 'integer-width'
* etc/NEWS: Minor rewording of the recent addition.

* doc/lispref/numbers.texi (Bitwise Operations): Use @dots{}
for ellipsis.  Improve indexing.
2018-08-21 17:56:47 +03:00
Paul Eggert
d6a497dd88 Avoid libgmp aborts by imposing limits
libgmp calls ‘abort’ when given numbers too big for its
internal data structures.  The numeric limit is large and
platform-dependent; with 64-bit GMP 6.1.2 it is around
2**2**37.  Work around the problem by refusing to call libgmp
functions with arguments that would cause an abort.  With luck
libgmp will have a better way to do this in the future.
Also, introduce a variable integer-width that lets the user
control how large bignums can be.  This currently defaults
to 2**16, i.e., it allows bignums up to 2**2**16.  This
should be enough for ordinary computation, and should
help Emacs to avoid thrashing or hanging.
Problem noted by Pip Cet (Bug#32463#71).
* doc/lispref/numbers.texi, etc/NEWS:
Document recent bignum changes, including this one.
Improve documentation for bitwise operations, in the light
of bignums.
* src/alloc.c (make_number): Enforce integer-width.
(integer_overflow): New function.
(xrealloc_for_gmp, xfree_for_gmp):
Move here from emacs.c, as it's memory allocation.
(init_alloc): Initialize GMP here, rather than in emacs.c.
(integer_width): New var.
* src/data.c (GMP_NLIMBS_MAX, NLIMBS_LIMIT): New constants.
(emacs_mpz_size, emacs_mpz_mul)
(emacs_mpz_mul_2exp, emacs_mpz_pow_ui): New functions.
(arith_driver, Fash, expt_integer): Use them.
(expt_integer): New function, containing integer code
that was out of place in floatfns.c.
(check_bignum_size, xmalloc_for_gmp): Remove.
* src/emacs.c (main): Do not initialize GMP here.
* src/floatfns.c (Fexpt): Use expt_integer, which
now contains integer code moved from here.
* src/lisp.h (GMP_NUMB_BITS): Define if gmp.h doesn’t.
2018-08-21 02:38:53 -07:00
Paul Eggert
77fc272598 Fix glitches introduced by nthcdr changes
* src/fns.c (Fnthcdr): Fix recently-introduced bug when
nthcdr is supposed to yield a non-nil non-cons.
Reported by Glenn Morris and by Pip Cet here:
https://lists.gnu.org/r/emacs-devel/2018-08/msg00699.html
https://lists.gnu.org/r/emacs-devel/2018-08/msg00708.html
Speed up nthcdr for small N, as suggested by Pip Cet here:
https://lists.gnu.org/r/emacs-devel/2018-08/msg00707.html
* test/src/fns-tests.el (test-nthcdr-simple): New test.
2018-08-21 02:05:31 -07:00
Paul Eggert
eb83344fc7 Speed up (nthcdr N L) when L is circular
Also, fix bug when N is a positive bignum, a problem reported
by Eli Zaretskii and Pip Cet in:
https://lists.gnu.org/r/emacs-devel/2018-08/msg00690.html
* src/fns.c (Fnthcdr): If a cycle is found, reduce the count
modulo the cycle length before continuing.  This reduces the
worst-case cost of (nthcdr N L) from N to min(N, C) where C is
the number of distinct cdrs of L.  Reducing modulo the cycle
length also allows us to do arithmetic with machine words
instead of with GMP.
* test/src/fns-tests.el (test-nthcdr-circular): New test.
2018-08-20 16:01:31 -07:00
Andy Moreton
36de7bd7b0 Define get_proc_addr in Cygwin-w32 build
* src/w32common.h (get_proc_addr, DEF_DLL_FN, LOAD_DLL_FN): Move
definitions here from src/w32.h.
* src/decompress.c [WINDOWSNT]:
* src/gnutls.c [WINDOWSNT]:
* src/image.c [WINDOWSNT]:
* src/json.c [WINDOWSNT]:
* src/lcms.c [WINDOWSNT]:
* src/w32font.c [WINDOWSNT]:
* src/w32uniscribe.c:
* src/xml.c [WINDOWSNT]: Include w32common.h.
2018-08-20 17:04:24 -04:00
Paul Eggert
21397837ea nthcdr now works with bignums
Problem reported by Karl Fogel in:
https://lists.gnu.org/r/emacs-devel/2018-08/msg00671.html
* src/fns.c (Fnthcdr): Support bignum counts.
2018-08-20 10:24:42 -07:00
Paul Eggert
ecd7a94077 Fix expt signedness bug --without-wide-int
Problem reported by Federico in:
https://lists.gnu.org/r/emacs-devel/2018-08/msg00619.html
* src/floatfns.c (Fexpt): Use TYPE_RANGED_FIXNUMP, not
RANGED_FIXNUMP, to fix bug with unsigned comparison on
platforms built --without-wide-int.
2018-08-19 10:06:12 -07:00
Stefan Monnier
5c3dba24ef * lisp/progmodes/cc-mode.el: Add version header 2018-08-19 08:47:02 -04:00
Paul Eggert
47b7a5bd49 Add bignum support to expt
Problem and initial solution reported by Andy Moreton in:
https://lists.gnu.org/r/emacs-devel/2018-08/msg00503.html
* doc/lispref/numbers.texi (Math Functions): expt integer
overflow no longer causes truncation; it now signals an error
since bignum overflow is a big deal.
* src/floatfns.c (Fexpt): Support bignum arguments.
* test/src/floatfns-tests.el (bignum-expt): New test.
2018-08-19 01:22:25 -07:00
Paul Eggert
06b5bcd639 Fix bug with ‘mod’ and float+bignum
Problem reported by Andy Moreton in:
https://lists.gnu.org/r/emacs-devel/2018-08/msg00442.html
* src/floatfns.c (fmod_float): Work even if an arg is a bignum.
* test/src/floatfns-tests.el (bignum-mod): New test.
2018-08-18 23:29:16 -07:00
Paul Eggert
351859238d Update from Gnulib
This incorporates:
2018-08-18 Avoid -Wcast-function-type warnings from casts
* build-aux/config.sub, lib/gettimeofday.c: Copy from Gnulib.
2018-08-18 23:14:31 -07:00
Paul Eggert
7ea369e5f2 Tweak integer division
* src/data.c (arith_driver): Reorder to remove unnecessary
FIXNUMP.  Tighten test for whether to convert the divisor from
fixnum to mpz_t.  Simplify.
2018-08-18 23:07:00 -07:00
Paul Eggert
a1b79567a8 Simplify float_arith_driver
* src/data.c (float_arith_driver): Simplify, as we needn’t
worry about that 30-year-old compiler bug any more.
2018-08-18 20:47:40 -07:00