summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
Commit message (Collapse)AuthorAgeFilesLines
...
* | Use `macroexp-parse-body'Daniel Colascione2015-03-031-7/+5
| | | | | | | | | | | | | | * lisp/emacs-lisp/generator.el: (iter-defun): Use `macroexp-parse-body'. * test/automated/generator-tests.el (cps-testcase): Use (cps-test-declarations-preserved): New test.
* | * lisp/progmodes/gud.el: Use lexical-binding.Stefan Monnier2015-03-031-3/+14
| | | | | | | | | | | | Fixes: debbugs:19966 * lisp/emacs-lisp/gv.el (gv-ref): Warn about likely problematic cases.
* | Address generator feedbackDaniel Colascione2015-03-031-37/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/lispref/control.texi (Generators): Correct missing word. Clarify which forms are legal in which parts of `unwind-protect'. Fix orphaned close parenthesis. * lisp/emacs-lisp/generator.el: Make globals conform to elisp style throughout. Use more efficient font-lock patterns. (cps-inhibit-atomic-optimization): Rename from `cps-disable-atomic-optimization'. (cps--gensym): New macro; replaces `cl-gensym' throughout. (cps-generate-evaluator): Move the `iter-yield' local macro definition here (iter-defun, iter-lambda): from here. * test/automated/generator-tests.el (cps-test-iter-close-finalizer): Rename `gc-precise-p' to `gc-precise'. * test/automated/generator-tests.el (cps-testcase): Use `cps-inhibit-atomic-optimization' instead of `cps-disable-atomic-optimization'.
* | Rename globals in generator.elDaniel Colascione2015-03-031-78/+78
| | | | | | | | | | * lisp/emacs-lisp/generator.el: Make globals conform to elisp style throughout.
* | # Standardize copyright and license notices for recently added filesGlenn Morris2015-03-031-1/+1
| |
* | emacs-lisp/package.el (package-autoremove): Fix if logic.Artur Malabarba2015-03-031-2/+2
| |
* | Add cl-iter-defunDaniel Colascione2015-03-021-0/+21
| | | | | | | | * lisp/emacs-lisp/cl-macs.el (cl-iter-defun): Add cl-iter-defun.
* | Fix docstrings, declarations in iter-defunDaniel Colascione2015-03-021-4/+10
| | | | | | | | | | * lisp/emacs-lisp/generator.el (iter-defun): Correctly propagate docstrings and declarations to underlying function.
* | Add support for generatorsDaniel Colascione2015-03-021-0/+789
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | check-declare.el: Use compilation-style warningsOleh Krehel2015-02-251-8/+32
| | | | | | | | | | | | | | | | | | * 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.
* | check-declare.el (check-declare-ext-errors): New defcustom.Oleh Krehel2015-02-251-1/+10
| | | | | | | | | | | | | | * 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".
* | * lisp/emacs-lisp/edebug.el (edebug--display): Save-excursion.Stefan Monnier2015-02-252-5/+10
| | | | | | | | | | | | | | Fixes: debbugs:19611 * lisp/emacs-lisp/debug.el (debugger-env-macro): Remove redundant save-excursion.
* | * lisp/emacs-lisp/macroexp.el (macroexp-parse-body): Handle cl-declareStefan Monnier2015-02-224-30/+28
| | | | | | | | | | | | | | and :documentation. Change return value format accordingly. * lisp/emacs-lisp/cl-generic.el (cl--generic-lambda): * lisp/emacs-lisp/pcase.el (pcase-lambda): Adjust accordingly. * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda): Use macroexp-parse-body.
* | Spelling fixesPaul Eggert2015-02-211-7/+6
| | | | | | | | | | | | | | | | * lisp/cedet/semantic/doc.el (semantic-documentation-comment-preceding-tag): Rename from semantic-documentation-comment-preceeding-tag. All uses changed. Leave an obsolete alias behind. * src/lisp.h (DEFINE_NON_NIL_Q_SYMBOL_MACROS): Rename from DEFINE_NONNIL_Q_SYMBOL_MACROS. All uses changed.
* | # Auto-commit of loaddefs files.Glenn Morris2015-02-201-1/+1
| |
* | * lisp/emacs-lisp/eieio-opt.el (eieio-help-class): Fix bug#19891Stefan Monnier2015-02-191-0/+1
| | | | | | | | | | | | | | Fixes: debbugs:19891 * lisp/emacs-lisp/eieio-opt.el (eieio-help-class): `eieio-class-parents' returns classes, not class names.
* | * lisp/emacs-lisp/cl-macs.el (cl-struct-slot-value): Handle a nil type.Stefan Monnier2015-02-191-3/+3
| |
* | * lisp/emacs-lisp/smie.el (smie-prec2->grammar): Fix corner case problem.Stefan Monnier2015-02-181-2/+5
| |
* | Push mark before goto-char in jump-to-register and check-parensKelly Dean2015-02-181-1/+2
| | | | | | | | | | | | * register.el (jump-to-register): * emacs-lisp/lisp.el (check-parens): Push mark before goto-char so user doesn't lose his previous place.
* | Use user-error where error is inappropriateKelly Dean2015-02-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | * help-mode.el (help-go-back, help-go-forward, help-follow): * simple.el (yank-pop, pop-to-mark-command, exchange-point-and-mark): * winner.el (winner-redo): * windmove.el (windmove-do-window-select): * register.el (jump-to-register, increment-register, insert-register) (append-to-register, prepend-to-register): * files.el (find-alternate-file, abort-if-file-too-large, write-file) (set-visited-file-name): * emacs-lisp/lisp.el (kill-backward-up-list): Use user-error instead of error. (Bug#14480)
* | * lisp/emacs-lisp/checkdoc.el (checkdoc-show-diagnostics): Don't make bogusStefan Monnier2015-02-181-8/+9
| | | | | | | | assumptions about window ordering.
* | emacs-lisp/easy-mmode.el: Clarify mode switch messagesKelly Dean2015-02-171-2/+11
| | | | | | | | | | * emacs-lisp/easy-mmode.el (define-minor-mode): Clarify mode switch messages for minor modes. (Bug#19690)
* | emacs-lisp/easy-mmode.el (define-minor-mode): Clarify docsKelly Dean2015-02-171-3/+6
| |
* | emacs-lisp/easy-mmode.el: Process macro arguments correctlyKelly Dean2015-02-171-1/+2
| | | | | | | | | | * emacs-lisp/easy-mmode.el (define-minor-mode): Process macro arguments correctly. (Bug#19685)
* | emacs-lisp/package-x.el: Create valid tar filesKelly Dean2015-02-171-1/+1
| | | | | | | | | | * emacs-lisp/package-x.el (package-upload-buffer-internal): Create valid tar files. (Bug#19536)
* | * lisp/emacs-lisp/eieio*.el: Align a bit better with CLOSStefan Monnier2015-02-163-66/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag): Fix copy&paste error (semanticdb-project-database => sym). Avoid eieio--class-public-a when possible. * lisp/emacs-lisp/eieio-base.el (make-instance): Add a method here rather than on eieio-constructor. * lisp/emacs-lisp/eieio-core.el (eieio--class-print-name): New function. (eieio-class-name): Make it do what the docstring claims. (eieio-defclass-internal): Simplify since `prots' isn't used any more. (eieio--slot-name-index): Simplify accordingly. (eieio-barf-if-slot-unbound): Pass the class object rather than its name to `slot-unbound'. * lisp/emacs-lisp/eieio.el (defclass): Use make-instance rather than eieio-constructor. (set-slot-value): Mark as obsolete. (eieio-object-class-name): Improve call to eieio-class-name. (eieio-slot-descriptor-name, eieio-class-slots): New functions. (object-slots): Use it. Declare obsolete. (eieio-constructor): Merge it with `make-instance'. (initialize-instance): Use `dolist'. (eieio-override-prin1, eieio-edebug-prin1-to-string): Use eieio--class-print-name. * test/automated/eieio-test-methodinvoke.el (make-instance): Add methods here rather than on eieio-constructor.
* | * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Keep type=nil by default.Stefan Monnier2015-02-164-13/+17
| | | | | | | | | | | | | | * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Add sanity checks about relationship between `type', `named', and `slots'. * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tagcode): Adjust to new value of `cl-struct-type' property.
* | emacs-lisp/package.el (describe-package-1): Describe incompatibility.Artur Malabarba2015-02-141-13/+23
| |
* | emacs-lisp/package.el: Move the compatibility-table building logic.Artur Malabarba2015-02-141-6/+13
| |
* | * lisp/emacs-lisp/cl*.el: Use define-inline and move some codeStefan Monnier2015-02-143-95/+107
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/cl-lib.el: Move autoloaded code to cl-preload. * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Register as children of the parent. (cl--assertion-failed): New function. (cl-assertion-failed): Move in from cl-lib.el. * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Don't generate code to register as children of its parents. (cl--make-type-test, cl--compiler-macro-typep): Remove functions. (cl-typep): Reimplement using define-inline. (cl-assert): Use cl--assertion-failed. (cl-struct-slot-value): Use define-inline.
* | emacs-lisp/package.el (describe-package-1): Fix "incompat" handling.Artur Malabarba2015-02-131-3/+3
| |
* | emacs-lisp/package.el (package--incompatible-p): Check dependencies.Artur Malabarba2015-02-131-10/+50
| |
* | emacs-lisp/package.el: Indicate incompatible packages.Artur Malabarba2015-02-121-1/+26
| | | | | | | | | | These are packages which require a higher emacs version than the current one.
* | emacs-lisp/package.el (package-install): Invert the second argument.Artur Malabarba2015-02-121-15/+13
| |
* | Add a backward-compatible version of seq-reverseNicolas Petton2015-02-111-5/+23
| | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/seq.el (seq-reverse): Add a backward-compatible version of seq-reverse that works on sequences in Emacs 24. Bump version to 1.2. * test/automated/seq-tests.el (test-seq-reverse, test-seq-group-by): Add a test for seq-reverse and update test for seq-group-by to test vectors and strings, not only lists.
* | Improve seq-group-by to return sequence elements in correct orderNicolas Petton2015-02-111-12/+11
| | | | | | | | | | | | | | | | * lisp/emacs-lisp/seq.el (seq-group-by): Improves seq-group-by to return sequence elements in correct order * tests/automated/seq-tests.el: Update test for seq-group-by * doc/lispref/sequences.texi (Sequence Functions): Update documentation examples for seq-group-by
* | * lisp/emacs-lisp/cl-generic.el (cl--generic-lambda): Use macroexp-parse-body.Stefan Monnier2015-02-091-9/+4
| |
* | * lisp/emacs-lisp/eieio-core.el (eieio-oset-default): Catch the unexpectedStefan Monnier2015-02-091-0/+2
| | | | | | | | case where the default value would be re-interpreted as a form!
* | Add macro pcase-lambdaLeo Liu2015-02-093-1/+31
| | | | | | | | | | | | | | | | | | | | Fixes: debbugs:19814 * emacs-lisp/lisp-mode.el (el-kws-re): Include `pcase-lambda'. * emacs-lisp/macroexp.el (macroexp-parse-body): New function. * emacs-lisp/pcase.el (pcase-lambda): New Macro.
* | Better docstring for seq.el functionsNicolas Petton2015-02-061-7/+11
| | | | | | | | * lisp/emacs-lisp/seq.el: Better docstring for seq.el functions
* | Add seq-partition and seq-group-byNicolas Petton2015-02-061-0/+27
| | | | | | | | | | | | * lisp/emacs-lisp/seq.el: Better docstring for seq.el functions * test/automated/seq-tests.el: New tests for seq-partition and seq-group-by
* | Add seq-mapcatNicolas Petton2015-02-061-2/+8
| | | | | | | | | | * lisp/emacs-lisp/seq.el (seq-mapcat): New function * test/automated/seq-tests.el: Add unit tests for seq-mapcat
* | emacs-lisp/package.el: Add missing (require 'subr-x)Artur Malabarba2015-02-051-0/+1
| |
* | emacs-lisp/package.el (package-delete): Don't always delesect.Artur Malabarba2015-02-051-1/+9
| |
* | emacs-lisp/package.el (package-menu-mark-install): Mark dependency.Artur Malabarba2015-02-051-2/+8
| |
* | emacs-lisp/package.el (package-menu-execute): Delete packages in order.Artur Malabarba2015-02-051-2/+37
| |
* | * lisp/emacs-lisp/eieio*.el: Use (:documentation ...) featureStefan Monnier2015-02-053-29/+24
| | | | | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/eieio-compat.el (eieio--defmethod): Use new special (:documentation ...) feature. * lisp/emacs-lisp/eieio-core.el (eieio-make-class-predicate) (eieio-make-child-predicate): Same. (eieio-copy-parents-into-subclass): Remove unused arg. (eieio-defclass-internal): Adjust call accordingly and remove redundant `pname' var. (eieio--slot-name-index): Remove unused arg `obj' and adjust all callers accordingly.
* | Add (:documentation <form>) for dynamically-generated docstringsStefan Monnier2015-02-052-29/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/bytecomp.el: (byte-compile-initial-macro-environment): Use macroexp-progn. (byte-compile-cl-warn): Don't silence use of cl-macroexpand-all. (byte-compile-file-form-defvar-function): Rename from byte-compile-file-form-define-abbrev-table. (defvaralias, byte-compile-file-form-custom-declare-variable): Use it. (byte-compile): Use byte-compile-top-level rather than byte-compile-lambda so we can compile non-values. (byte-compile-form): Add warnings for failed uses of lexical vars via quoted symbols. (byte-compile-unfold-bcf): Improve message for failed inlining. (byte-compile-make-closure): Handle new format of internal-make-closure for dynamically-generated docstrings. * lisp/emacs-lisp/cconv.el (cconv--convert-function): Add `docstring' argument. (cconv-convert): Use it to handle the new (:documentation ...) form. (cconv-analyze-form): Handle the new (:documentation ...) form. * src/eval.c (Ffunction): Handle the new (:documentation ...) form. (syms_of_eval): Declare `:documentation'.
* | * lisp/emacs-lisp/cl-generic.el (cl--generic-member-method): Fix paren typo.Stefan Monnier2015-02-041-2/+2
| |
* | Fix typo causing a void-variable error: pkg-descTassilo Horn2015-02-041-1/+1
| | | | | | | | | | * emacs-lisp/package.el (package-installed-p): Fix typo causing void-variable error.