1. 28 Aug, 2016 2 commits
    • Paul Eggert's avatar
      Memory allocator alignment fixes · 7fcce24e
      Paul Eggert authored
      These changes remove some assumptions about heap allocator
      alignment that may not be true on unusual platforms.
      * src/alloc.c (POWER_OF_2): New macro.
      (ROUNDUP): Use it.
      (BLOCK_ALIGN): Verify that it is a power of 2.
      (aligned_alloc): Check that alignment passed to posix_memalign
      satisfies POSIX restrictions.
      (lisp_align_malloc): Check that size passed to aligned_alloc
      satisfies C11 restrictions.
      (MALLOC_IS_GC_ALIGNED): Check that GCALIGNMENT is 8, since the
      code has not been verified to work with other GCALIGNMENT values
      and the ice is thin here.  On GNU/Linux, malloc can return a value
      that is a multiple of 8 but not 16, even though __alignof__
      (max_align_t) is 16.  See:
      (lmalloc) [USE_ALIGNED_ALLOC]: Use aligned_alloc only if size
      is a multiple of alignment, since C11 says the behavior is
      undefined otherwise.
      (lmalloc, lrealloc): Don't use INT_ADD_WRAPV on size_t, as in
      general this macro is restricted to signed types.  Remove
      assertion that the result is a multiple of GCALIGNMENT, as that
      need not be true.
    • Paul Eggert's avatar
      Pacify --enable-gcc-warnings for lib-src/pop.c · 4be1ab61
      Paul Eggert authored
      * lib-src/pop.c: Include c-ctype.h.
      (socket_connection): Pacify --enable-gcc-warnings by rewriting to
      avoid 'if (v = E) ...'.  Use c_tolower, instead of a combination
      of the (undeclared) isupper and tolower.  Fix pointer constness
  2. 27 Aug, 2016 3 commits
  3. 26 Aug, 2016 4 commits
  4. 25 Aug, 2016 4 commits
    • Alan Mackenzie's avatar
      Fix an infinite loop in C++ Mode when we have "{ .... [ .... }" · 93c67f6b
      Alan Mackenzie authored
      * lisp/progmodes/cc-fonts.el (c-font-lock-c++-lambda-captures): In the inner
      `while' form's condition, check for "\\s)" rather than merely "\\]", so that
      the loop won't hang at a "terminating" paren of a different type (due to the
      c-syntactic-re-search-forward at the end of the loop stopping at such
    • Tino Calancha's avatar
      call-shell-region: New defun · 5e84dcef
      Tino Calancha authored
      Suggested by Stefan Monnier in Bug#22679.
      * lisp/subr.el (call-shell-region): New defun; execute a command
      in an inferior shell with the buffer region as input.
      * lisp/simple.el (shell-command-on-region): Use it.
      * lisp/gnus/message.el (message-do-fcc): Idem.
      * doc/lispref/processes.texi: Document call-shell-region in the manual.
      ;* etc/NEWS: Add entry for this new function.
    • Martin Rudalics's avatar
      In ‘clone-indirect-buffer’ fix argument mixup (Bug#24306) · 95c82efd
      Martin Rudalics authored
      * lisp/simple.el (clone-indirect-buffer): Add value for ACTION
      argument in `pop-to-buffer' call (Bug#24306).
    • Martin Rudalics's avatar
      Some fixes around `delete-other-frames' and `next-frame' · 63415a53
      Martin Rudalics authored
      * src/frame.c (Fdelete_frame): Clarify doc-string.
      * lisp/frame.el (delete-other-frames): Delete other frames on
      FRAME's terminal instead of the current terminal.  Delete
      non-minibuffer-only surrogate frames too.  See
      * doc/lispref/frames.texi (Deleting Frames): Minor fixes for
      docs of `delete-frame' and `frame-live-p'.  Add entry for
      (Finding All Frames): Fix doc of `next-frame'.
  5. 24 Aug, 2016 4 commits
  6. 23 Aug, 2016 2 commits
  7. 22 Aug, 2016 10 commits
  8. 21 Aug, 2016 10 commits
    • NicolasPetton's avatar
    • NicolasPetton's avatar
      * etc/AUTHORS: Update the AUTHORS file · 6bf83b5e
      NicolasPetton authored
    • Noah Friedman's avatar
      Fix interpretation of signed vs unsigned values when retrieving X · 7a6b3d0f
      Noah Friedman authored
      Window properties, and make sure the full value is returned when not
      New subr to export type and format information about X Window
      properties to lisp.
      * src/xselect.c (selection_data_to_lisp_data): Treat any data as
      unsigned unless its actual type is INTEGER.
      CARDINALs, in particular, are unsigned.
      * src/xfns.c (Fx_change_window_property): If value is a string, ignore
      any provided format and force to 8.
      (x_window_property_intern): If returning value as a string, the length
      is actual_size times the actual format of each element, which is not
      necessarily bytes.
      (Fx_window_property_attributes): New subr.
      (syms_of_xfns): Declare it.
    • Noam Postavsky's avatar
      Improve error when installing non-package dirs · 14a86f83
      Noam Postavsky authored
      * lisp/emacs-lisp/package.el (package-dir-info): Throw meaningful error
      when no file with package info is found (Bug #19851).
    • Alan Mackenzie's avatar
      Adapt CC Mode for C++11 uniform initialization. · 578d9aaf
      Alan Mackenzie authored
      For fontification, introduce a new "context", 'non-decl, to be used for
      lists; also a new value for the property 'c-type, called 'c-not-decl.
      * lisp/progmodes/cc-engine.el (c-back-over-compound-identifier): Check that
      an ostensible symbol we're going to move over isn't a keyword.
      (c-forward-decl-or-cast-1): CASE 1: Where we have two consecutive identifiers
      (hence a declaration), and an unmatched open paren, perform
      c-fdoc-shift-type-backwards to recognize the partial construct correctly.
      Whilst checking a type decl expression, check for and handle C++11's "copy
      initialization", where we have <type>(<constant>).  Recognize
      <id><id>(... (where the paren is unclosed) as a declaration.
      (c-looking-at-or-maybe-in-bracelist): New function, extracted from
      c-inside-bracelist-p.  Recognize as bracelists "{"s which are preceded by
      valid tokens other than "=".  Recognize a bracelist when preceded by a
      template declaration.
      (c-inside-bracelist-p): Call c-looking-at-or-maybe-in-bracelist in place of
      much inline code.
      (c-looking-at-inexpr-block): Amend so that it won't wrongly recognise an
      initialization starting "({" as an in-expression block, by checking for
      semicolons, as opposed to commas, separating elements inside it.
      (c-guess-continued-construct): (CASE B-2): Recognize a brace-list-open by
      calling c-looking-at-or-maybe-in-bracelist rather than checking for a
      preceding "=".  (CASE B-5): New code to recognize new construct "return {
      (c-guess-basic-syntax): (CASE 5A.3): Additionally recognize a "{" preceded by
      "return", or "{" preceded by <type><identifier> as a bracelist.
      * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Recognize brace
      lists, giving them `context' 'non-decl.  Pass over elements of one by regexp
      search for "," rather than calling c-forward-decl-or-cast-1.
      * lisp/progmodes/cc-langs.el (c-return-kwds, c-return-key): New lang
      constants/variables to recognize "return".
      (c-pre-id-bracelist-key): New lang constant/variable to recognize tokens
      which, when preceding an identifier followed by a brace, signify the brace as
      a bracelist.
      * lisp/progmodes/cc-mode.el (c-fl-decl-start): When searching outwards for
      the start of a "local" declaration, move out from an enclosing brace when
      that is the start of a brace list.
    • Paul Eggert's avatar
      Update from gnulib · 1f730256
      Paul Eggert authored
      This incorporates:
      2016-08-17 maint: preprocessor changes to support z/OS
      2016-08-17 string: rename to avoid '__string'
      * doc/misc/texinfo.tex, lib/alloca.in.h, lib/string.in.h:
      Copy from gnulib.
    • Paul Eggert's avatar
      ; Spelling fixes · 886b9ed8
      Paul Eggert authored
    • Paul Eggert's avatar
      ; ChangeLog spelling fixes · 73cbb813
      Paul Eggert authored
    • Paul Eggert's avatar
      Minor text-quoting-style fixes · b1601a95
      Paul Eggert authored
      * src/charset.c (check_iso_charset_parameter):
      * src/frame.c (store_frame_param):
      * src/xselect.c (x_fill_property_data):
      Use grave accent for left single quote in ‘error’ format strings.
    • Martin Rudalics's avatar
      Fix semantics of 'minibuffer' frame parameter · 1a1062d6
      Martin Rudalics authored
      The 'minibuffer' frame parameter is now t for a normal frame
      (a frame with a root window plus a minibuffer window) and the
      frame's minibuffer window for a minibuffer-less frame (a frame
      whose minibuffer window is on another frame).  See also:
      * src/frame.c (make_frame, make_frame_without_minibuffer)
      (make_minibuffer_frame): When assigning the frame's minibuffer
      window also store corresponding 'minibuffer' frame parameter.
      (store_frame_param): Move the 'minibuffer' parameter checks to
      the beginning so we can silently override the value before it
      gets stored in the parameter alist.  Fix error handling.
      (Fframe_parameters): Return value of 'minibuffer' parameter
      * lisp/frameset.el (frameset-filter-minibuffer): When the cdr of
      the parameter is a minibuffer window, save (minibuffer . nil)
      instead of (minibuffer . t).
      (frameset--reuse-frame): To find a non-minibuffer-only frame
      look out for a frame whose 'minibuffer' parameter is t instead
      of that frame's minibuffer window.
      (frameset-minibufferless-first-p): To find a minibuffer-less
      frame look out for a frame whose 'minibuffer' parameter is a
      window instead of nil.
  9. 20 Aug, 2016 1 commit