1. 14 Jul, 2017 2 commits
  2. 13 Jul, 2017 4 commits
    • Vincent Belaïche's avatar
    • Alan Mackenzie's avatar
      C++ Mode. Fix anomaly occurring when a ">" is deleted then reinserted. · 7eef16a9
      Alan Mackenzie authored
      This fontification anomaly happened because after deleting the ">",
      c-forward-<>-arglist parses the preceding identifier as a putative type but
      stores it in c-found-types before it becomes clear it is not an unambiguous
      type.  c-forward-<>-arglist fails, leaving the spurious type id in
      c-found-types.  Fix this by "binding" c-found-types "to itself" in
      c-forward-<>-arglist, and restoring the original value when that function call
      fails.
      
      * lisp/progmodes/cc-engine.el (c-copy-found-types): New function.
      (c-forward-<>-arglist): Record the original value of c-found-types at the
      beginning of the function, and restore it at the end on failure.
      
      * lisp/progmodes/cc-mode.el (c-unfind-coalesced-tokens): Rewrite more
      accurately.
      7eef16a9
    • Vincent Belaïche's avatar
      Add tests for SES, and fix one more cell renaming bug. · b048351a
      Vincent Belaïche authored
      * lisp/ses.el (ses-relocate-all): In case of insertion, do not
      relocate value for named cells as they keep the same symbol.
      (ses-rename-cell): Set new cell name symbol to cell value --- do not
      rely on recalculating.  Push cells with updated data --- cell name,
      cell reference list, or cell formula --- to deferred write list.
      
      * test/lisp/ses-tests.el: New file, with 7 tests for SES.
      b048351a
    • Michael Albinus's avatar
      ; Improve tramp-tests traces · 1f08279e
      Michael Albinus authored
      1f08279e
  3. 12 Jul, 2017 6 commits
  4. 11 Jul, 2017 4 commits
    • Eli Zaretskii's avatar
      Use fixed-pitch font for display-line-numbers · d014a5e1
      Eli Zaretskii authored
      * lisp/faces.el (line-number): Use a fixed-pitch font by default,
      even if the default face uses a variable-pitch font.  Reported by
      James Cloos <cloos@jhcloos.com>.
      d014a5e1
    • Eli Zaretskii's avatar
    • Eli Zaretskii's avatar
      Improve documentation of display-line-numbers · 373cef5f
      Eli Zaretskii authored
      * src/xdisp.c (syms_of_xdisp) <display-line-numbers>: Improve the
      doc string.  Suggested by Alex <agrambot@gmail.com>.
      373cef5f
    • NicolasPetton's avatar
      Add an optional testfn parameter to assoc · 0bece6c6
      NicolasPetton authored
      * src/fns.c (assoc): New optional testfn parameter used for comparison
      when provided.
      * test/src/fns-tests.el (test-assoc-testfn): Add tests for the new
      'testfn' parameter.
      * src/buffer.c:
      * src/coding.c:
      * src/dbusbind.c:
      * src/font.c:
      * src/fontset.c:
      * src/gfilenotify.c:
      * src/image.c:
      * src/keymap.c:
      * src/process.c:
      * src/w32fns.c:
      * src/w32font.c:
      * src/w32notify.c:
      * src/w32term.c:
      * src/xdisp.c:
      * src/xfont.c: Add a third argument to Fassoc calls.
      * etc/NEWS:
      * doc/lispref/lists.texi: Document the new 'testfn' parameter.
      0bece6c6
  5. 10 Jul, 2017 2 commits
    • Michael Albinus's avatar
      Use `with-demoted-errors' in Tramp · 689c5c20
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-with-demoted-errors): New defmacro.
      
      * lisp/net/tramp-sh.el (tramp-sh-handle-vc-registered): Use it.
      689c5c20
    • Michael Albinus's avatar
      Add Quick Start Guide to Tramp manual · 0440c748
      Michael Albinus authored
      * doc/misc/tramp.texi: Use consequently "@value{tramp}" and
      "MS Windows".
      (Quick Start Guide): New node.
      
      * doc/misc/trampver.texi:
      * lisp/net/trampver.el: Change version to "2.3.3-pre".
      0440c748
  6. 09 Jul, 2017 16 commits
    • Glenn Morris's avatar
      Fix failing module tests on GNU/Linux · 273f4bde
      Glenn Morris authored
      * test/src/emacs-module-tests.el
      (module--test-assertions--load-non-live-object)
      (module--test-assertions--call-emacs-from-gc):
      Avoid test failures due to backtraces.
      273f4bde
    • Paul Eggert's avatar
      Fix core dump in substitute-object-in-subtree · 083940a9
      Paul Eggert authored
      Without this fix, (substitute-object-in-subtree #0=(#0# 'a) 'a)
      would dump core, since the C code would recurse indefinitely through
      the infinite structure.  This patch adds an argument to the function,
      and renames it to lread--substitute-object-in-subtree as the function
      is not general-purpose and should not be relied on by outside code.
      See Bug#23660.
      * src/intervals.c (traverse_intervals_noorder): ARG is now void *,
      not Lisp_Object, so that callers need not cons unnecessarily.
      All callers changed.  Also, remove related #if-0 code that was
      “temporary” in the early 1990s and has not been compilable for
      some time.
      * src/lread.c (struct subst): New type, for substitution closure data.
      (seen_list): Remove this static var, as this info is now part of
      struct subst.  All uses removed.
      (Flread__substitute_object_in_subtree): Rename from
      Fsubstitute_object_in_subtree, and give it a 3rd arg so that it
      doesn’t dump core when called from the top level with an
      already-cyclic structure.  All callers changed.
      (SUBSTITUTE): Remove.  All callers expanded and then simplified.
      (substitute_object_recurse): Take a single argument SUBST rather
      than a pair OBJECT and PLACEHOLDER, so that its address can be
      passed around as part of a closure; this avoids the need for an
      AUTO_CONS call.  All callers changed.  If the COMPLETED component
      is t, treat every subobject as potentially circular.
      (substitute_in_interval): Take a struct subst * rather than a
      Lisp_Object, for the closure data.  All callers changed.
      * test/src/lread-tests.el (lread-lread--substitute-object-in-subtree):
      New test, to check that the core dump does not reoccur.
      083940a9
    • Philipp Stephani's avatar
      Minor simplification of module_free_global_ref · ce6773aa
      Philipp Stephani authored
      * src/emacs-module.c (module_free_global_ref): Remove unused variable
      'hashcode'.  Inline variable 'value' that's only used once.
      ce6773aa
    • Philipp Stephani's avatar
      Re-add a useful assertion · 81131ff2
      Philipp Stephani authored
      * src/emacs-module.c (module_free_global_ref): Re-add assertion that
      the reference count is zero.  This assertion was removed in commit
      8afaa132, but it's not included in the
      test performed by XFASTINT before, because the previous reference
      count could have been zero already in the case of a buggy
      implementation.  This assertion might have detected Bug#27587.
      81131ff2
    • Valentin Gatien-Baron's avatar
      Fix bug in module_free_global_ref (Bug#27587) · 22af6990
      Valentin Gatien-Baron authored
      * src/emacs-module.c (module_free_global_ref): Actually remove entry
      from hash table.
      
      Copyright-paperwork-exempt: yes
      22af6990
    • Philipp Stephani's avatar
      Further improve electric quote support for Markdown (Bug#24709) · bb2ea81b
      Philipp Stephani authored
      Markdown sets both 'comment-start' and 'comment-use-syntax' to non-nil
      values.  Therefore 'electric-quote-mode' recognized it as a
      programming mode.  Fix this by first checking whether the current
      major mode is derived from 'text-mode'.
      
      * lisp/electric.el (electric-quote-post-self-insert-function): Treat
      'text-mode' as stronger signal than comment syntax.
      
      * test/lisp/electric-tests.el (electric-quote-markdown-in-text)
      (electric-quote-markdown-in-code): Adapt unit tests.
      bb2ea81b
    • Philipp Stephani's avatar
      Remove pointless code in 'electric-quote-mode' · 633db417
      Philipp Stephani authored
      * lisp/electric.el (electric-quote-post-self-insert-function): Remove
      pointless form.
      633db417
    • Philipp Stephani's avatar
      Refactor 'electric-quote-mode' · 28e65848
      Philipp Stephani authored
      * lisp/electric.el (electric-quote-post-self-insert-function): Remove
      local variable 'start', which was misnamed and only used once.
      28e65848
    • Saulius Menkevičius's avatar
      Avoid crashes on MS-Windows starting 64-bit .NET executables · 51b29de1
      Saulius Menkevičius authored
      * src/w32proc.c (w32_executable_type): Don't assume that the
      import directory in a DLL will always be non-NULL.  (Bug#27527)
      
      Copyright-paperwork-exempt: yes
      51b29de1
    • Eli Zaretskii's avatar
      Avoid compilation warning in files.el · 0cff089e
      Eli Zaretskii authored
      * lisp/files.el (auto-save-visited-file-name): Avoid obsoletion
      warning due to its use in auto-save-visited-mode.
      0cff089e
    • Eli Zaretskii's avatar
      Improve indexing of VC-related stuff in the Emacs manual · c6e94f89
      Eli Zaretskii authored
      * doc/emacs/maintaining.texi (Version Control): Add a "VC" index
      entry.  (Bug#27627)
      c6e94f89
    • Eli Zaretskii's avatar
      ; * etc/NEWS: Fix a typo. · b56727e7
      Eli Zaretskii authored
      b56727e7
    • Eli Zaretskii's avatar
      Speed up display of line numbers for very large buffers · 83218cf4
      Eli Zaretskii authored
      * src/xdisp.c (maybe_produce_line_number): Speed up line counting
      using values cached by mode-line display of line numbers.
      (Bug#27622)
      83218cf4
    • Philipp Stephani's avatar
    • Alexander Kuleshov's avatar
      Define internal_border_parts for window systems only (Bug#27615) · e15784fb
      Alexander Kuleshov authored
      * src/keyboard.c: (internal_border_parts): Define only
      when HAVE_WINDOW_SYSTEM is enabled.  (Bug#27615)
      e15784fb
    • R. Bernstein's avatar
      Add realgud faces faces to whiteboard... · 9b8b73f6
      R. Bernstein authored
      Adjust wheatgrass to use underline for enabled/disabled breakpoints
      9b8b73f6
  7. 08 Jul, 2017 6 commits
    • Noam Postavsky's avatar
      05c5e4d8
    • Noam Postavsky's avatar
      Optimize UCS normalization tests · 06ff34cd
      Noam Postavsky authored
      Brings the the time for `ucs-normalize-part1' from 200s down to 130s.
      * test/lisp/international/ucs-normalize-tests.el
      (ucs-normalize-tests--parse-column): Use character instead of string
      of length 1 for terminator.  Convert return value into string since
      all callers need that form anyway.
      (ucs-normalize-tests--normalization-equal-p): Rename from
      ucs-normalize-tests--normalize.  Use dedicated buffer instead of
      messing with narrowing.  Take string to compare against and insert it
      into buffer so that compare-buffer-substrings can be used instead of
      allocating a new string from buffer contents.
      (ucs-normalize-tests--normalization-chareq-p): New macro, specialized
      for comparing single character.
      (ucs-normalize-tests--rule1-holds-p)
      (ucs-normalize-tests--rule2-holds-p): Turn into defsubst.
      (ucs-normalize-tests--rule1-failing-for-partX): Use `eq' instead of
      `='.
      06ff34cd
    • Noam Postavsky's avatar
      Update failing lines for UCS normalize tests · a1633918
      Noam Postavsky authored
      * test/lisp/international/ucs-normalize-tests.el
      (ucs-normalize-tests--failing-lines-part2): Update for new
      admin/unidata/NormalizationTest.txt version.
      a1633918
    • Noam Postavsky's avatar
      Semi-automate the procedure for updating UCS normalize test bad lines · 4e3b9c54
      Noam Postavsky authored
      * test/lisp/international/ucs-normalize-tests.el: Remove incorrect
      commentary describing a manual procedure for producing the updated
      failing lines, it did not actually work.  Replace it with pointer to
      new function which prints the updated values.
      (ucs-normalize-tests--rule1-holds-p): Renamed from
      ucs-normalize-tests--invariants-hold-p.
      (ucs-normalize-tests--rule2-holds-p): Renamed from
      ucs-normalize-tests--invariants-rule2-hold-p.
      (ucs-normalize-tests--rule1-failing-for-partX): Renamed from
      ucs-normalize-tests--invariants-failing-for-part.
      (ucs-normalize-tests--rule1-failing-for-lines): Renamed from
      ucs-normalize-tests--invariants-failing-for-lines.
      (ucs-normalize-tests--part2-rule1-failed-lines): New variable.
      (ucs-normalize-part2): Set it.
      (ucs-normalize-part1): Always run through to end of test before
      checking for failures.
      (ucs-normalize-tests--insert-failing-lines)
      (ucs-normalize-check-failing-lines): New functions, used to update
      the *--failing-lines-part* variables.
      4e3b9c54
    • Paul Eggert's avatar
      efaf1485
    • Philipp Stephani's avatar
      Module assertions: check for garbage collections · b7dab24b
      Philipp Stephani authored
      It's technically possible to write a user pointer finalizer that calls
      into Emacs module functions.  This would be disastrous because it
      would allow arbitrary Lisp code to run during garbage collection.
      Therefore extend the module assertions to check for this case.
      
      * src/emacs-module.c (module_assert_thread): Also check whether a
      garbage collection is in progress.
      
      * test/data/emacs-module/mod-test.c (invalid_finalizer)
      (Fmod_test_invalid_finalizer): New test module functions.
      (emacs_module_init): Register new test function.
      
      * test/src/emacs-module-tests.el (module--test-assertion)
      (module--with-temp-directory): New helper macros.
      (module--test-assertions--load-non-live-object): Rename existing
      unit test, use helper macros.
      (module--test-assertions--call-emacs-from-gc): New unit test.
      b7dab24b