Commit Graph

120594 Commits

Author SHA1 Message Date
Daniel Colascione
2cc23f170f Finalizer documentation, minor improvements
* doc/lispref/objects.texi (Finalizer Type): New section
(Type Predicates): Mention finalizers in `type-of' documentation.
* doc/lispref/elisp.texi (Top): Link to finalizer type.

* src/data.c (Ftype_of): Make `type-of' work with finalizers.
(syms_of_data): Register Qfinalizer.

* src/print.c (print_object): Print whether a finalizer has
been called.

* test/automated/finalizer-tests.el (finalizer-object-type): Test that
`type-of' works correctly for finalizers.
2015-03-02 19:08:06 -08:00
Daniel Colascione
8af3e1848c Add cl-iter-defun
* lisp/emacs-lisp/cl-macs.el (cl-iter-defun): Add cl-iter-defun.
2015-03-02 16:41:59 -08:00
Daniel Colascione
8f0f8c166c Fix docstrings, declarations in iter-defun
* lisp/emacs-lisp/generator.el (iter-defun): Correctly propagate
docstrings and declarations to underlying function.
2015-03-02 16:11:51 -08:00
Daniel Colascione
f6b5db6c45 Add support for generators
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog
index 78f7e34..e7d79d5 100644
--- a/doc/lispref/ChangeLog
+++ b/doc/lispref/ChangeLog
@@ -1,3 +1,8 @@
+2015-03-02  Daniel Colascione  <dancol@dancol.org>
+
+	* control.texi (Generators): New section
+	* elisp.text: Reference new section.
+
 2015-02-28  Eli Zaretskii  <eliz@gnu.org>

 	* searching.texi (Char Classes): Update the documentation of
diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog
index 448c7f2..4e9c119 100644
--- a/doc/misc/ChangeLog
+++ b/doc/misc/ChangeLog
@@ -1,3 +1,7 @@
+2015-03-02  Daniel Colascione  <dancol@dancol.org>
+
+	* cl.texi (Iteration Clauses): Mention iterator support.
+
 2015-02-25  Tassilo Horn  <tsdh@gnu.org>

 	* reftex.texi (Multifile Documents): Document
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 7ce2e81..4ab4406 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,6 +1,8 @@
 2015-03-02  Daniel Colascione  <dancol@dancol.org>

-	* vc/vc.el (vc-responsible-backend): Add autoload cooking for
+	* emacs-lisp/generator.el: New file.
+
+	* vc/vc.el (vc-responsible-backend): Add autoload cookie for
 	`vc-responsible-backend'.

 2015-03-01  Michael Albinus  <michael.albinus@gmx.de>
diff --git a/test/ChangeLog b/test/ChangeLog
index 684e98f..64ad851 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -1,5 +1,7 @@
 2015-03-02  Daniel Colascione  <dancol@dancol.org>

+	* automated/generator-tests.el: New tests
+
 	* automated/finalizer-tests.el (finalizer-basic)
 	(finalizer-circular-reference, finalizer-cross-reference)
 	(finalizer-error): New tests.
2015-03-02 15:42:09 -08:00
Daniel Colascione
9d8d065814 Add support for finalizers
+2015-03-02  Daniel Colascione  <dancol@dancol.org>
+
+	* NEWS: Mention finalizers.
+
 2015-02-09  Gareth Rees  <gdr@garethrees.org>  (tiny change)

 	* NEWS.24: Fix typo (bug#19820)
diff --git a/src/ChangeLog b/src/ChangeLog
index 4aa64c1..2f04d0b 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,21 @@
+2015-03-02  Daniel Colascione  <dancol@dancol.org>
+
+	* print.c (print_object): Print finalizers.
+
+	* alloc.c:
+	(finalizers, doomed_finalizers): New variables.
+	(init_finalizer_list, finalizer_insert, unchain_finalizer)
+	(mark_finalizer_list, queue_doomed_finalizers)
+	(run_finalizer_handler, run_finalizer_function, run_finalizers):
+	New functions.
+	(garbage_collect_1, mark_object, sweep_misc)
+	(init_alloc_once, syms_of_alloc): Support finalizers.
+	(gc-precise-p): New Lisp variable.
+
+	* lisp.h (Lisp_Misc_Type): New value Lisp_Misc_Finalizer.
+	(FINALIZERP, XFINALIZER): New functions.
+	(Lisp_Finalizer): New structure.
+
 2015-02-28  Paul Eggert  <eggert@cs.ucla.edu>

 	* character.c (alphabeticp, decimalnump): Avoid undefined behavior
diff --git a/test/ChangeLog b/test/ChangeLog
index cf1b2c1..684e98f 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -1,3 +1,9 @@
+2015-03-02  Daniel Colascione  <dancol@dancol.org>
+
+	* automated/finalizer-tests.el (finalizer-basic)
+	(finalizer-circular-reference, finalizer-cross-reference)
+	(finalizer-error): New tests.
+
 2015-03-01  Michael Albinus  <michael.albinus@gmx.de>

 	* automated/vc-tests.el (vc-test--create-repo): Add check for
2015-03-02 15:39:01 -08:00
Glenn Morris
b149ecd8aa # Auto-commit of loaddefs files. 2015-03-02 13:18:43 -05:00
Robert Pluim
04fb1029e4 configure.ac: Error out if with-file-notification=w32 is specified on Cygwin
Fixes: 19909

Copyright-paperwork-exempt: yes
2015-03-02 08:57:54 -05:00
Daniel Colascione
da02eb556a Add autoload cooking for vc-responsible-backend
* lisp/vc/vc.el (vc-responsible-backend): Add autoload cooking for
`vc-responsible-backend'.
2015-03-01 18:31:28 -08:00
Michael Albinus
992f8fad97 Extend vc-tests.el
* automated/vc-tests.el (vc-test--create-repo): Add check for
`vc-responsible-backend'.
(vc-test--register): Do not print a message when unsupported.
(vc-test--state, vc-test--working-revision): Rework.  Raise no
error in case of inconsistent result, but document everything.
(vc-test--checkout-model): New defun.
(vc-test-*-checkout-model): New tests.
2015-03-01 18:05:19 +01:00
Michael Albinus
7f9b037245 Fix problems found by vc-tests.el
* vc/vc-hooks.el (vc-state, vc-working-revision):
Use `vc-responsible-backend' in order to support unregistered files.

* vc/vc-rcs.el (vc-rcs-fetch-master-state):
* vc/vc-sccs.el (vc-sccs-working-revision): Handle undefined
master name.

* vc/vc-rcs.el (vc-rcs-unregister): Support unregistered files.

* vc/vc-src.el (vc-src-working-revision): Do not return an empty string.
2015-03-01 17:51:31 +01:00
Lars Magne Ingebrigtsen
bb13183c1b (shr-insert): Also remove soft hypens from non-folded text. 2015-03-01 12:21:43 +01:00
Lars Magne Ingebrigtsen
2294380798 * lisp/net/shr.el (shr-insert): Remove soft hyphens. 2015-03-01 12:17:52 +01:00
Paul Eggert
159e9f4b1c * character.c (alphabeticp, decimalnump): Avoid undefined behavior
if CATEGORY is not an integer, or is an integer out of
unicode_category_t range.
2015-02-28 13:20:51 -08:00
Martin Rudalics
5dd2272ef3 Set can_x_set_window_size and after_make_frame in terminal frames (Bug#19962)
* frame.c (make_initial_frame, Fmake_terminal_frame): Set
can_x_set_window_size and after_make_frame. (Bug#19962).
2015-02-28 19:40:31 +01:00
Jan D
e605af8880 * xlwmenu.c (remap_menubar): Re-realize menu to force move under Gnome 3. 2015-02-28 16:20:45 +01:00
Eli Zaretskii
1a50945fa4 Improve [:alpha:] and [:alnum:] for multibyte characters (Bug#19878)
src/character.c (alphabeticp, decimalnump): New functions.
 src/character.h (alphabeticp, decimalnump): Add prototypes.
 src/regex.c (ISALNUM, ISALPHA): Check Unicode character properties
 for multibyte characters by calling alphabeticp and decimalnump.
 (BIT_ALPHA, BIT_ALNUM): New bit masks.
 (re_wctype_to_bit): Return them when the class is RECC_ALPHA or
 RECC_ALNUM.
 (re_match_2_internal): Call ISALPHA and ISALNUM when appropriate.

 doc/lispref/searching.texi (Char Classes): Update the documentation of
 [:alpha:] and [:alnum:].

 etc/NEWS: Mention the changes in [:alpha:] and [:alnum:].
2015-02-28 14:25:35 +02:00
Eli Zaretskii
31ecbf8d51 Better decoding of HTML payload in Rmail
lisp/mail/rmailmm.el (rmail-mime-insert-html): Decode HTML payload
 when the charset is only given by the HTML <head>, and allow to
 specify the encoding with "C-x RET c".
2015-02-28 14:03:34 +02:00
Jan D
0537943561 Adjust offset and border calculations for X.
* xfns.c (x_real_pos_and_offsets): Take outer_border as arg also.
Initialize all args.  Get outer_border from window attributes.
Fix typo for top_offset_y.
(x_real_positions): Adjust for new arg to x_real_pos_and_offsets.
(Fx_frame_geometry): Get outer_border also.  Use attrs.width/height.

* xmenu.c (x_menu_show): Adjust for new arg to x_real_pos_and_offsets.

* xterm.h (x_real_pos_and_offsets): Take outer_border as arg also.
2015-02-27 18:46:26 +01:00
Eli Zaretskii
b2a590d4e3 Documentation followup for daemon mode on MS-Windows
doc/lispref/os.texi (Startup Summary):
 doc/lispref/display.texi (Window Systems): Mention peculiarities of daemon
 mode on MS-Windows.

 etc/NEWS: Mention the new support for daemon mode on MS-Windows.
2015-02-27 16:20:56 +02:00
Mark Laws
805fe50708 Support daemon mode on MS-Windows (bug#19688)
src/emacs.c <w32_daemon_event> [WINDOWSNT]: New global var.
 (main) [WINDOWSNT]: Initialize it to NULL.  Create the event to
 signal clients we are ready for connections.
 (Fdaemon_initialized): Use DAEMON_RUNNING.
 [WINDOWSNT]: MS-Windows specific code to signal clients we are
 ready for connections.
 src/lisp.h (DAEMON_RUNNING): New macro, encapsulates Posix and
 MS-Windows conditions for running in daemon mode.
 src/minibuf.c (read_minibuf): Use DAEMON_RUNNING.
 src/keyboard.c (kbd_buffer_get_event): Use DAEMON_RUNNING.
 src/dispnew.c (init_display) [WINDOWSNT]: Initialize frames/terminal
 even in daemon mode.

 nt/inc/ms-w32.h (W32_DAEMON_EVENT): New macro.

 lib-src/emacsclient.c (decode_options) [WINDOWSNT]: Don't reject empty
 arguments for --alternate-editor.
 (print_help_and_exit) [WINDOWSNT]: Don't refrain from advertising
 empty arguments for --alternate-editor.
 (start_daemon_and_retry_set_socket) [WINDOWSNT]: MS-Windows
 specific code to start Emacs in daemon mode and wait for it to be
 ready for client connections.

 lisp/server.el (server-process-filter): Force GUI frames on
 MS-Windows in daemon mode, even if a TTY frame was requested.
 lisp/frameset.el (frameset-keep-original-display-p): Don't assume
 windows-nt cannot be in daemon mode.
 lisp/frame.el (window-system-for-display): Don't assume windows-nt
 cannot be in daemon mode.
2015-02-27 12:43:30 +02:00
Paul Eggert
6ef14349fa Don't require GNU putenv
* configure.ac: Use system putenv even if it lacks GNU features, as
we don't need them.  This works around a bug in FreeBSD 10.1 getenv.
Fixes: bug#19874
2015-02-27 00:05:06 -08:00
Ivan Shmakov
619fc5c197 Fix 'face property handling in facemenu-add-face.
* lisp/faces.el (face-list-p): Split from face-at-point.
(face-at-point): Use it.
* lisp/facemenu.el (facemenu-add-face): Likewise.

Fixes: debbugs:19912
2015-02-26 18:09:48 +00:00
Jan Djärv
5917b7907a Don't use OUTER_TO_INNER macros for plain X and lucid.
* xmenu.c (create_and_show_popup_menu): Call XTranslateCoordinates,
dont use OUTER_TO_INNER macros.
(x_menu_show): Call x_real_pos_and_offsets, don't use
OUTER_TO_INNER macros.
2015-02-26 16:42:03 +01:00
Oscar Fuentes
0ed52489b9 Fixed previous ChangeLog entry 2015-02-26 15:58:30 +01:00
Oscar Fuentes
b5a0603eb4 Use vc-switches on vc-*-annotate-command
This also removes switch "-C -C" from vc-git-annotate-command.

Fixes: debbugs:17945

* vc/vc.el (vc-annotate-switches): New defcustom.
* vc/vc-bzr.el (vc-bzr-annotate-switches): New defcustom.
(vc-bzr-annotate-command): Use it.
* vc/vc-cvs.el (vc-cvs-annotate-switches): New defcustom.
(vc-cvs-annotate-command): Use it.
* vc/vc-git.el (vc-git-annotate-switches): New defcustom.
(vc-git-annotate-command): Use it.
* vc/vc-hg.el (vc-hg-annotate-switches): New defcustom.
(vc-hg-annotate-command): Use it.
* vc/vc-mtn.el (vc-mtn-annotate-switches): New defcustom.
(vc-mtn-annotate-command): Use it.
* vc/vc-svn.el (vc-svn-annotate-switches): New defcustom.
(vc-svn-annotate-command): Use it.
2015-02-26 15:50:41 +01:00
Paul Eggert
d8e9122115 Merge from origin/emacs-24
e726f20 Handle "#" operator properly inside macro.  Fix coding bug.
618931b Handle dead frame in menu-bar-non-minibuffer-window-p.  (Bug#19728)
017a03a Document MS-Windows file-name idiosyncrasies  (Bug#19463)
f3faf4f Fix description of Customize buffer in Emacs manual.
1c1d0b7 Fix a typo in the Emacs manual's Hungry Delete description.
be7fb82 src/dispextern.h (FACE_FOR_CHAR): Fix the commentary.
33c4409 Spelling fixes
6c8231e python.el: Handle tabs in python-indent-dedent-line.
41c3b92 * lisp/progmodes/python.el: Respect user indentation after comment.
868df45 Avoid compiler warnings in decode_env_path.
b28c979 Fix XEmacs version typo in comment and ChangeLog
989fb32 Improve solution of bug #19701
6310530 Fix refilling of list of language environments in User Manual
c4c447d Restore XEmacs compatibility

Conflicts:
	doc/emacs/ChangeLog
	lisp/ChangeLog
	src/ChangeLog
	test/ChangeLog
2015-02-25 22:53:56 -08:00
Paul Eggert
cbd447e1cd Merge from origin/emacs-24
The following commits were skipped:

b75358e Merge remote-tracking branch 'origin/emacs-24' into emacs-24
c96c93f [Backport] lisp/gnus/message.el (message-smtpmail-send-it): Make non-standard mail header separators work with smtpmail
972282f [Backport] lisp/gnus/message.el (message-smtpmail-send-it): Make non-standard mail header separators work with smtpmail
2015-02-25 22:52:01 -08:00
Paul Eggert
4d36e5246e Merge from origin/emacs-24
7779da6 lisp/gnus/nimap.el (nnimap-find-expired-articles): nnimap `never' expiration fix
2015-02-25 22:52:00 -08:00
Paul Eggert
b6964cb031 Merge from origin/emacs-24
The following commit was skipped:

9ee2d9f [Backport] lisp/gnus/nnimap.el (nnimap-find-expired-articles): nnimap `never' expiration fix
2015-02-25 22:51:59 -08:00
Katsumi Yamaoka
48598095b3 Fix point motion when removing displayed MIME part
* gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part):
Fix point motion when removing displayed MIME part.
2015-02-26 06:39:11 +00:00
Paul Eggert
8ae2142555 * xfns.c (x_real_pos_and_offsets): Fix pointer signedness. 2015-02-25 20:43:38 -08:00
Katsumi Yamaoka
4f9befb3b8 lisp/gnus/ChangeLog: Fix typo 2015-02-26 03:29:36 +00:00
Katsumi Yamaoka
f376a4b747 Gnus: Improve parts deletion and stripping behavior
* gnus-art.el (gnus-article-edit-part): Make jumping to the next part
really work when deleting or stripping.
(gnus-mime-buttonize-attachments-in-header): Make header attachment
buttons identical to the one in the article body so as to work deleting
and stripping.
2015-02-26 03:24:48 +00:00
Daiki Ueno
b206b9d737 dbus.el: fix ":argN" keyword recognition
* net/dbus.el (dbus-register-signal): Convert "N" of ":argN" to
integer before comparison.
2015-02-26 11:08:44 +09:00
Jan D
719fd93346 Redo the whole window offsets and coordinate translation for X.
* frame.h (struct frame): Remove x_pixels_diff, y_pixels_diff.

* w32fns.c (x_real_positions): Remove setting of x_pixels_diff,
y_pixels_diff.

* xfns.c (x_real_pos_and_offsets): New function, basically the code
from x_real_positions.
(x_real_positions): Call x_real_pos_and_offsets.
(x_relative_mouse_position): Use XTranslateCoordinates instead of
OUTER_TO_INNER_DIFF macros.
(Fx_frame_geometry): Get offsets with x_real_pos_and_offsets,
border from window attributes.  Adjust tool bar and menu widths.

* xmenu.c (create_and_show_popup_menu): Use XTranslateCoordinates
instead of OUTER_TO_INNER_DIFF macros.

* xterm.h (struct x_output): Remove x_pixels_outer_diff,
y_pixels_outer_diff, FRAME_OUTER_TO_INNER_DIFF_X,
FRAME_OUTER_TO_INNER_DIFF_Y. Declare x_real_pos_and_offsets.
2015-02-25 20:16:44 +01:00
Glenn Morris
0731a2e857 # Auto-commit of loaddefs files. 2015-02-25 12:28:28 -05:00
Nicolas Richard
ca5790eb50 lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Document argument.
Fixes: 19932
2015-02-25 16:17:54 +01:00
Oleh Krehel
383722dee7 check-declare.el: Use compilation-style warnings
* lisp/emacs-lisp/check-declare.el (check-declare-warn): Add
  file-line-column info to the warning.

(check-declare-files): Make sure that `check-declare-warning-buffer'
is in `compilation-mode'. Make the order of the errors that same as in
the file. Add code to ensure that `first-error' will work properly.
2015-02-25 12:10:40 +01:00
Oleh Krehel
26b2e9aa4d check-declare.el (check-declare-ext-errors): New defcustom.
* emacs-lisp/check-declare.el (check-declare): New defgroup.
(check-declare-verify): When `check-declare-ext-errors' is non-nil,
warn about an unfound function, instead of saying "skipping external
file".
2015-02-25 12:05:28 +01:00
Tassilo Horn
dcd4830cb9 Handle customizations of reftex-include-file-commands
* reftex.texi (Multifile Documents): Document
reftex-include-file-commands.
(Options): Mention that non-customize changes might require
calling reftex-compile-variables.

* textmodes/reftex-vars.el (reftex-include-file-commands): Call
reftex-set-dirty on changes.
2015-02-25 11:45:20 +01:00
Stefan Monnier
8bb64d2722 * lisp/emacs-lisp/edebug.el (edebug--display): Save-excursion.
Fixes: debbugs:19611

* lisp/emacs-lisp/debug.el (debugger-env-macro): Remove redundant
save-excursion.
2015-02-25 01:03:14 -05:00
Katsumi Yamaoka
b86ba30d17 Gnus: Revert my bogus changes (2014-06-05)
* mm-decode.el (mm-shr)
* mm-view.el (mm-inline-text-html-render-with-w3m):
Revert my bogus change that made the start marker of a part
the "moves after insertion" type.
2015-02-25 02:39:47 +00:00
Paul Eggert
27bd6dadf4 Merge from gnulib
* lib/getdtablesize.c, m4/dup2.m4, m4/fcntl.m4:
Update from gnulib, incorporating:
2015-02-23 dup2: doc and test for Android bug
2015-02-23 Replace dup2() on Android
2015-02-22 Android doesn't define RLIM_SAVED_*
2015-02-24 16:40:23 -08:00
Paul Eggert
b74db6347c Backtrace after malloc arena is corrupted
Without this change, if the malloc arena is corrupted and then
'backtrace' is called, the backtrace can crash because 'backtrace'
calls 'malloc'.  For more, please see:
https://sourceware.org/ml/libc-alpha/2015-02/msg00678.html
* emacs.c (main): Initialize tables used by 'backtrace'.
* sysdep.c (emacs_backtrace): Document the newly used part of the API.
2015-02-24 16:35:03 -08:00
Glenn Morris
0c4f73a09d rmailsum.el tiny simplification
* lisp/mail/rmailsum.el (rmail-summary-previous-all)
(rmail-summary-previous-msg): Simplify.
2015-02-24 18:10:36 -05:00
Artur Malabarba
341e5f3c86 simple.el (region-active-p): Fix doc to say non-nil. 2015-02-24 22:51:15 -03:00
Samer Masterson
450bebaec9 * lisp/eshell: Fix history substitution error
Fixes: debbugs:18960

* lisp/eshell/em-hist.el (eshell-hist-parse-word-designator):
Return args joined with " ".
* lisp/eshell/em-pred.el (eshell-parse-modifiers): Correct docstring.
(eshell-hist-parse-modifier): Pass mod a list instead of a string.
2015-02-24 14:03:54 -05:00
Karl Fogel
feb49cb7a4 * comint.el (comint-mode-map): Fix obvious typo. 2015-02-24 09:30:56 -06:00
Johan Claesson
7a77ed9147 * filecache.el (file-cache-filter-regexps): Add lock files (tiny change)
Fixes: debbugs:19516
2015-02-23 23:50:44 -08:00
Glenn Morris
f418e991c0 rmailsum.el minor optional argument fix
* lisp/mail/rmailsum.el (rmail-summary-next-all)
(rmail-summary-previous-all, rmail-summary-next-msg):
Fix handling of optional argument.

Fixes: debbugs:19916
2015-02-23 23:43:58 -08:00