1. 13 Jul, 2018 13 commits
    • Tom Tromey's avatar
      Make format handle bignums · d14808cd
      Tom Tromey authored
      * src/editfns.c (styled_format): Handle bignums.
      * test/src/editfns-tests.el (read-large-integer): Update.
      (format-bignum): New test.
    • Tom Tromey's avatar
      Make number-to-string work for bignums · 23eab9a6
      Tom Tromey authored
      * src/data.c (Fnumber_to_string): Handle bignum.
      * test/src/data-tests.el (data-tests-number-to-string): New test.
    • Tom Tromey's avatar
      Add some bignum tests · 6d4bf2ce
      Tom Tromey authored
      * test/src/data-tests.el (data-tests-bignum, data-tests-+)
      (data-tests-/, data-tests-number-predicates): New tests.
      * test/src/fns-tests (test-bignum-eql): New test.
      * test/src/lread-tests (lread-long-hex-integer): Expect bignum.
      * test/src/print-tests (print-bignum): New test.
    • Tom Tromey's avatar
      Make arithmetic work with bignums · 5875fbaa
      Tom Tromey authored
      * src/data.c (free_mpz_value): New function.
      (arith_driver): Rewrite.
      (float_arith_driver): Handle bignums.
    • Tom Tromey's avatar
      Make comparison operators handle bignums · eefa65e9
      Tom Tromey authored
      * sc/data.c (bignumcompare): New function.
      (arithcompare): Handle bignums.
    • Tom Tromey's avatar
      Make the reader accept bignums · 1e8ae6ca
      Tom Tromey authored
      * src/data.c (Fstring_to_number): Update.
      * src/lisp.h (S2N_OVERFLOW_TO_FLOAT): Remove.
      * src/lread.c (free_contents): New function.
      (read_integer): Handle bignums.
      (read1): Update.
      (string_to_number): Handle bignums.
      (syms_of_lread): Remove read-integer-overflow-as-float.
      * src/process.c (Fsignal_process): Update.
    • Tom Tromey's avatar
      Make eql work for bignums · 580d173b
      Tom Tromey authored
      * src/fns.c (Feql, internal_equal): Handle bignums.
    • Tom Tromey's avatar
      Provide new functions to create bignums · b2f3f4ee
      Tom Tromey authored
      * src/alloc.c (make_bignum_str, make_number): New functions.
      * src/lisp.h (make_bignum_str, make_number): Declare.
    • Tom Tromey's avatar
      Introduce the bignum type · a0f2adbf
      Tom Tromey authored
      * src/alloc.c (mark_object): Handle Lisp_Misc_Bignum.
      (sweep_misc): Call mpz_clear for Lisp_Misc_Bignum.
      * src/data.c (Ftype_of): Handle Lisp_Misc_Bignum.
      (Fintegerp, Finteger_or_marker_p, Fnatnump, Fnumberp)
      (Fnumber_or_marker_p): Update for bignum.
      (Ffixnump, Fbignump): New defuns.
      (syms_of_data): Update.
      * src/emacs.c (xrealloc_for_gmp, xfree_for_gmp): New functions.
      (main): Call mp_set_memory_functions.
      * src/lisp.h (enum Lisp_Misc_Type) <Lisp_Misc_Bignum>: New constant.
      (struct Lisp_Bignum): New.
      (union Lisp_Misc): Add u_bignum.
      * src/print.c (print_object): Handle Lisp_Misc_Bignum.
    • Tom Tromey's avatar
      Add configury for GMP library · 7cb45cd2
      Tom Tromey authored
      * configure.ac (GMP_LIB, GMP_OBJ): New substs.
      * src/Makefile.in (GMP_OBJ, GMP_OBJ): New variables.
      (base_obj): Add GMP_OBJ.
      (LIBES): Add GMP_LIB.
      * src/mini-gmp.h: New file.
      * src/mini-gmp.c: New file.
    • Tom Tromey's avatar
      Rename integerp->fixnum, etc, in preparation for bignums · 42fe787b
      Tom Tromey authored
      * src/json.c, src/keyboard.c, src/keyboard.h, src/keymap.c,
      src/kqueue.c, src/lcms.c, src/lisp.h, src/lread.c, src/macros.c,
      src/marker.c, src/menu.c, src/minibuf.c, src/msdos.c, src/print.c,
      src/process.c, src/profiler.c, src/search.c, src/sound.c,
      src/syntax.c, src/sysdep.c, src/term.c, src/terminal.c,
      src/textprop.c, src/undo.c, src/w16select.c, src/w32.c,
      src/w32console.c, src/w32cygwinx.c, src/w32fns.c, src/w32font.c,
      src/w32inevt.c, src/w32proc.c, src/w32select.c, src/w32term.c,
      src/w32uniscribe.c, src/widget.c, src/window.c, src/xdisp.c,
      src/xfaces.c, src/xfns.c, src/xfont.c, src/xftfont.c, src/xmenu.c,
      src/xrdb.c, src/xselect.c, src/xterm.c, src/xwidget.c: Rename
      INTEGERP->FIXNUM, make_number->make_fixnum, CHECK_NUMBER->CHECK_FIXNUM,
      make_natnum->make_fixed_natum, NUMBERP->FIXED_OR_FLOATP,
    • Noam Postavsky's avatar
      Speed up smerge-refine-regions by avoiding fsync · 01dbf2a3
      Noam Postavsky authored
      * lisp/vc/smerge-mode.el (smerge-refine-regions): Bind
      write-region-inhibit-fsync to t.  This was reported in
      https://github.com/magit/magit/pull/2834 to give a noticable speedup.
    • Noam Postavsky's avatar
      Don't skip epg-tests even with gpg 2.0 (Bug#23561) · 1222ff52
      Noam Postavsky authored
      * test/lisp/epg-tests.el (epg-tests--config-program-alist): New
      constant, which allows gpg2 version 2.0+.
      (epg-tests-find-usable-gpg-configuration): Pass it to
  2. 12 Jul, 2018 1 commit
  3. 11 Jul, 2018 6 commits
  4. 10 Jul, 2018 8 commits
  5. 09 Jul, 2018 5 commits
    • Noam Postavsky's avatar
      Stop using indent-line-to in lisp-indent-line (Bug#32014) · 8f7d35ca
      Noam Postavsky authored
      This is partial revert of "Remove ignored argument from
      lisp-indent-line", because `indent-line-to' doesn't respect field
      * lisp/emacs-lisp/lisp-mode.el (lisp-indent-line): Use delete-region
      and indent-to instead of `indent-line-to'.
      * test/lisp/emacs-lisp/lisp-mode-tests.el
      (lisp-indent-with-read-only-field): Expect to pass.
      Don't merge to master, we will fix indent-line-to there instead.
    • Noam Postavsky's avatar
      ; Test for Bug#32014 · db3f7797
      Noam Postavsky authored
      * test/lisp/emacs-lisp/lisp-mode-tests.el
      (lisp-indent-with-read-only-field): New test.
    • Noam Postavsky's avatar
      Explicitly reject :server and :nowait (Bug#31903) · 90d95b00
      Noam Postavsky authored
      * src/process.c (Fmake_network_process): Explicitly check for and
      signal an error when passed both :server and :nowait non-nil.  In
      Emacs 25, :nowait would be ignored in this case, but as of Emacs 26.1
      this gives an error, albeit an unclear one.  Also remove obsolete
      comment regarding configurations lacking non-blocking mode, the
      corresponding code was removed in 2012-11-17 "Assume POSIX 1003.1-1988
      or later for fcntl.h."
    • Michael Albinus's avatar
      Fix Bug#32090 · 917158f8
      Michael Albinus authored
      * lisp/files-x.el (connection-local-normalize-criteria): Do not
      use PROPERTIES anymore.
      (connection-local-get-profiles): Rewrite, in order to accept any
      property as optional.  (Bug#32090)
      Adapt ´connection-local-normalize-criteria' call.
      * test/lisp/files-x-tests.el
      (files-x-test-hack-connection-local-variables-apply): Extend tests.
    • Sam Steingold's avatar
  6. 08 Jul, 2018 7 commits