Glenn Morris
6baf66d53b
Merge from emacs-24; up to 2012-11-08T14:54:03Z!monnier@iro.umontreal.ca
2012-11-10 15:13:33 -08:00
Stefan Monnier
32e5c58ca9
Provide new `defalias-fset-function' symbol property.
...
* src/lisp.h (AUTOLOADP): New macro.
* src/eval.c (Fautoload): Don't attach to loadhist, call Fdefalias instead.
* src/data.c (Ffset): Remove special ad-advice-info handling.
(Fdefalias): Handle autoload definitions and new Qdefalias_fset_function.
(Fsubr_arity): CSE.
(Finteractive_form): Simplify.
(Fquo): Don't insist on having at least 2 arguments.
(Qdefalias_fset_function): New var.
* lisp/emacs-lisp/advice.el (ad-set-advice-info): Set defalias-fset-function.
(ad--defalias-fset): New function.
(ad-safe-fset): Remove.
(ad-make-freeze-definition): Use cl-letf*.
2012-11-09 17:20:47 -05:00
Stefan Monnier
6858633a9c
* lisp/emacs-lisp/advice.el: Miscellaneous cleanup. Use lexical-binding.
...
(fset, documentation): Don't save real def since we don't advise.
(ad-do-advised-functions): Remove problematic `result-form'.
(ad-safe-fset): `ad-real-fset' => `fset'.
(ad-read-advised-function): Don't assume that ad-do-advised-functions
uses CL's dolist internally.
(ad-arglist): Remove unused arg `name'.
(ad-docstring, ad-make-advised-docstring):
`ad-real-documentation' => `documentation'.
(warning-suppress-types): Declare.
(ad-set-arguments): Simple CSE.
(ad-recover-normality): Sanity check.
2012-11-09 15:41:03 -05:00
Stefan Monnier
f5925cd9f5
* lisp/emacs-lisp/bytecomp.el (byte-compile-out-toplevel): Don't turn
...
(funcall '(lambda ..) ..) into ((lambda ..) ..).
2012-11-09 10:56:51 -05:00
Stefan Monnier
57618ecf33
New property dynamic-docstring-function for docstrings.
...
* src/doc.c (Fdocumentation): Handle new property
dynamic-docstring-function to replace the old ad-advice-info.
* lisp/emacs-lisp/advice.el: Use new dynamic docstrings.
(ad-make-advised-definition-docstring, ad-advised-definition-p):
Use dynamic-docstring-function instead of ad-advice-info.
(ad--make-advised-docstring): New function extracted from
ad-make-advised-docstring.
(ad-make-advised-docstring): Use it.
* lisp/progmodes/sql.el (sql--make-help-docstring): New function, extracted
from sql-help.
(sql-help): Use it with dynamic-docstring-function.
2012-11-08 23:10:16 -05:00
Stefan Monnier
e703069f9c
* lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
...
Byte-compile *before* eval in eval-and-compile.
(byte-compile-log-warning): Remove redundant inhibit-read-only.
(byte-compile-file-form-autoload): Don't hide actual definition.
(byte-compile-maybe-guarded): Accept `functionp' as well.
2012-11-08 09:58:15 -05:00
Stefan Monnier
a9a5c7f690
* lisp/emacs-lisp/gv.el (gv-deref): Move setter declaration, to fix bootstrap.
2012-11-08 09:54:03 -05:00
Stefan Monnier
32170f7ff2
* lisp/emacs-lisp/advice.el: Require `cl-lib' at run-time to fix
...
miscompilation of trace.el.
2012-11-08 09:36:47 -05:00
Stefan Monnier
784c1a7b3a
* lisp/emacs-lisp/gv.el (gv-ref, gv-deref): New function and macro.
2012-11-08 09:21:21 -05:00
Stefan Monnier
d14bb752ea
* lisp/emacs-lisp/gv.el (gv-ref, gv-deref): New function and macro.
2012-11-08 08:34:06 -05:00
Stefan Monnier
4162672227
* lisp/emacs-lisp/gv.el (gv-define-simple-setter): Fix last change.
...
Fixes: debbugs:12812
2012-11-07 20:24:14 -05:00
Glenn Morris
031b2ea7f5
More cl-lib and gv doc updates
...
* lisp/emacs-lisp/cl.el (define-setf-expander, defsetf)
(define-modify-macro): Doc fixes.
* doc/misc/cl.texi (Obsolete Setf Customization):
Give defsetf gv.el replacements.
* etc/NEWS: Related edit.
2012-11-07 00:56:16 -08:00
Glenn Morris
2ee1d59f5b
Small doc updates for generalized variables
...
* lisp/emacs-lisp/gv.el (gv-letplace): Fix doc typo.
(gv-define-simple-setter): Update doc of `fix-return'.
* doc/lispref/variables.texi (Adding Generalized Variables):
Update description of FIX-RETURN expansion.
* doc/misc/cl.texi (Obsolete Setf Customization):
Revert defsetf example to the more correct let rather than prog1.
2012-11-06 20:37:07 -08:00
Stefan Monnier
b715ed4447
* lisp/emacs-lisp/gv.el (gv-define-simple-setter): Don't evaluate `val'
...
twice when `fix-return' is set.
Fixes: debbugs:12813
2012-11-06 22:39:33 -05:00
Stefan Monnier
d57c286eea
* lisp/emacs-lisp/cl.el (defsetf): Pass the third arg to
...
gv-define-simple-setter.
Fixes: debbugs:12812
2012-11-06 22:14:27 -05:00
Dmitry Antipov
8e6a67b7fa
* emacs-lisp/byte-opt.el (toplevel): Add compare-window-configurations,
...
frame-first-window, frame-root-window, frame-selected-window,
minibuffer-selected-window, minibuffer-window,
window-absolute-pixel-edges, window-at, window-body-height,
window-body-width, window-display-table, window-combination-limit,
window-frame, window-fringes, window-inside-absolute-pixel-edges,
window-inside-edges, window-inside-pixel-edges, window-left-child,
window-left-column, window-margins, window-next-buffers,
window-next-sibling, window-new-normal, window-new-total,
window-normal-size, window-parameter, window-parameters, window-parent,
window-pixel-edges, window-point, window-prev-buffers,
window-prev-sibling, window-redisplay-end-trigger, window-scroll-bars,
window-start, window-text-height, window-top-child, window-top-line,
window-total-height, window-total-width and window-use-time to the list
of functions without side-effects.
(toplevel): Add window-valid-p to the list of error-free functions
without side-effects.
2012-11-06 11:37:06 +04:00
Glenn Morris
6b3770fb9d
* lisp/emacs-lisp/gv.el (gv-define-setter): Fix doc typo.
2012-11-05 20:36:44 -05:00
Glenn Morris
7e92a49396
Auto-commit of loaddefs files.
2012-11-05 07:20:41 -05:00
Glenn Morris
5593ed900d
Misc small cl doc fixes
...
* emacs-lisp/cl-extra.el (cl-maplist, cl-mapcan): Doc fix.
* emacs-lisp/cl-extra.el (cl-prettyexpand):
* emacs-lisp/cl-lib.el (cl-proclaim, cl-declaim):
* emacs-lisp/cl-macs.el (cl-destructuring-bind, cl-locally)
(cl-the, cl-compiler-macroexpand): Add basic doc strings.
2012-11-05 00:29:12 -08:00
Glenn Morris
f6c6e09c7f
Auto-commit of loaddefs files.
2012-11-04 07:22:06 -05:00
Glenn Morris
6163a6801e
Auto-commit of loaddefs files.
2012-11-04 06:23:35 -05:00
Glenn Morris
f58542e151
Merge from emacs-24; up to 2012-11-03T05:11:34Z!dmantipov@yandex.ru
2012-11-03 12:14:22 -07:00
Glenn Morris
376a8e83bb
Rename cl-random-time to cl--random-time
...
* emacs-lisp/cl-lib.el (cl--random-time): Rename from cl-random-time.
(cl--gensym-counter, cl--random-state): Update callers.
* emacs-lisp/cl-extra.el (cl-make-random-state): Update callers.
Fixes: debbugs:12773
2012-11-03 11:36:09 -07:00
Glenn Morris
4913840013
Rename cl-loop-handler, cl-loop-for-handler back to their original names
...
* lisp/emacs-lisp/cl-macs.el (cl-parse-loop-clause):
Rename handler properties back from cl-- to cl-.
Fixes: debbugs:12788
2012-11-03 11:32:09 -07:00
Glenn Morris
5c677d4410
* lisp/emacs-lisp/cl-macs.el (cl-do-all-symbols): Add doc string.
2012-11-03 11:03:39 -07:00
Glenn Morris
3a6851d9b4
Decouple "noruntime" and "cl-functions" bytecomp warnings
...
* lisp/emacs-lisp/bytecomp.el (byte-compile-eval):
Decouple "noruntime" and "cl-functions" warnings.
2012-11-02 18:35:01 -04:00
Glenn Morris
fcc1acdadb
Auto-commit of loaddefs files.
2012-10-30 06:18:56 -04:00
Glenn Morris
f43a5263c1
cl-mapc small fixes
...
* lisp/emacs-lisp/cl-extra.el (cl-mapc): Add autoload cookie. Doc fix.
* doc/misc/cl.texi (Mapping over Sequences): Mention cl-mapc naming oddity.
2012-10-30 01:03:22 -07:00
Glenn Morris
4ddedf94c8
Doc and manual updates for cl-letf and letf
...
Fixes: debbugs:12760
* doc/misc/cl.texi (Modify Macros): Update for cl-letf changes.
(Obsolete Lexical Macros): Say a little more about letf/cl-letf.
* lisp/emacs-lisp/cl.el (letf): Doc fix.
* etc/NEWS: Related edit.
2012-10-30 00:34:37 -07:00
Stefan Monnier
c606253cb5
* lisp/emacs-lisp/cl.el (letf): Add missing indent rules.
...
Fixes: debbugs:12759
2012-10-29 09:50:05 -04:00
Glenn Morris
a0ccbcbddc
* lisp/emacs-lisp/cl.el (defsetf): Doc fix.
2012-10-28 18:12:53 -07:00
Daniel Hackney
cd44022cb0
* lisp/emacs-lisp/package.el (package-generate-autoloads): Kill buffer
...
"PKGNAME-autoloads.el" in case we created it.
2012-10-28 16:41:49 -04:00
Stefan Monnier
150f809c34
* lisp/emacs-lisp/advice.el (ad-assemble-advised-definition):
...
Silence bogus compiler warnings for ad-do-it.
2012-10-26 14:01:30 -04:00
Stefan Monnier
63314e5730
* lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
...
Obey byte-compile-warning-enabled-p.
Fixes: debbugs:12486
2012-10-26 11:59:40 -04:00
David Engster
3f2a848dbe
Merge CEDET upstream.
...
* emacs-lisp/eieio.el (eieio-update-lisp-imenu-expression):
Removed. This feature is already integrated in imenu.
* emacs-lisp/eieio-opt.el: Remove require for `button' since it is
always loaded. Require `speedbar' unconditionally.
* semantic/analyze.el (semantic-analyze-dereference-alias): New
function to dereference aliases.
(semantic-analyze-current-context-default): Use it.
* semantic/grammar.el (semantic-grammar-create-package):
* srecode/compile.el (srecode-compile-templates): Throw a proper
error if semantic-mode is not enabled (bug#9968).
Compiler warning fixes:
* semantic.el (semantic-elapsed-time): Make it a defsubst.
* srecode/dictionary.el (srecode-adebug-dictionary): Remove
require for `semantic'.
* srecode/map.el:
* srecode/insert.el: Declare functions from `data-debug'.
* semantic/grammar.el: Require `help-fns'. Declare functions from
`eldoc', which is required in function body.
* srecode/java.el:
* semantic/texi.el:
* semantic/grammar-wy.el:
* semantic/db-file.el:
* semantic/db-el.el:
* semantic/chart.el: Fix requires.
* ede/locate.el: Remove useless requires. Declare functions
instead and require in functions when needed.
2012-10-25 22:13:16 +02:00
Stefan Monnier
a7723be6dd
* lisp/emacs-lisp/package.el (package-installed-p): Warn if not ready.
...
Fixes: debbugs:12721
2012-10-25 08:38:09 -04:00
Glenn Morris
cee6efdef3
Auto-commit of loaddefs files.
2012-10-25 06:17:47 -04:00
Glenn Morris
a05cb6e326
More cl doc updates
...
* doc/misc/cl.texi: Don't mess with the TeX section number counter.
Use Texinfo recommended convention for quotes+punctuation.
(Overview, Sequence Functions): Rephrase for better line-breaking.
(Time of Evaluation, Type Predicates, Modify Macros, Function Bindings)
(Macro Bindings, Conditionals, Iteration, Loop Basics)
(Random Numbers, Mapping over Sequences, Structures)
(Porting Common Lisp): Further updates for cl-lib namespace.
(Modify Macros, Declarations, Macro Bindings, Structures):
Break long lines in examples.
(Dynamic Bindings): Update for changed progv behavior.
(Loop Examples, Efficiency Concerns): Markup fixes.
(Structures): Remove TeX margin change.
* lisp/emacs-lisp/cl-macs.el (cl-progv): Doc fix.
* etc/NEWS: Related markup.
2012-10-24 20:58:40 -04:00
Chong Yidong
75e8f9d2de
Improve documentation of easy-menu-define.
...
* lisp/emacs-lisp/easymenu.el (easy-menu-define): Doc fix.
* doc/lispref/keymaps.texi (Toolkit Differences): Node deleted.
(Easy Menu): New node.
Fixes: debbugs:12628
2012-10-24 11:48:50 +08:00
Stefan Monnier
76673f9c62
* checkdoc.el (checkdoc-comment-style-hooks): Typo.
2012-10-23 13:09:22 -04:00
Stefan Monnier
d106953274
Cleanup uses of "-hooks".
...
* doc/emacs/custom.texi (Hooks):
* doc/lispref/hooks.texi (Standard Hooks): Clarify that -hooks is deprecated.
* lisp/gnus/nndiary.el (nndiary-request-create-group-functions)
(nndiary-request-update-info-functions)
(nndiary-request-accept-article-functions):
* lisp/gnus/gnus-start.el (gnus-subscribe-newsgroup-functions):
* lisp/cedet/semantic/db-file.el (semanticdb-save-database-functions):
* lisp/cedet/semantic/lex.el (semantic-lex-reset-functions):
* lisp/cedet/semantic/edit.el (semantic-change-functions)
(semantic-edits-new-change-functions)
(semantic-edits-delete-change-functions)
(semantic-edits-reparse-change-functions):
* lisp/htmlfontify.el (hfy-post-html-hook):
* lisp/filesets.el (filesets-cache-fill-content-hook):
* lisp/arc-mode.el (archive-extract-hook):
* lisp/progmodes/cc-mode.el (c-prepare-bug-report-hook):
* lisp/net/rcirc.el (rcirc-sentinel-functions)
(rcirc-receive-message-functions, rcirc-activity-functions)
(rcirc-print-functions):
* lisp/net/dbus.el (dbus-event-error-functions):
* lisp/emacs-lisp/eieio.el (eieio-pre-method-execution-functions):
* lisp/emacs-lisp/checkdoc.el (checkdoc-style-functions)
(checkdoc-comment-style-functions): Don't use "-hooks" suffix.
* lisp/term/sun.el (sun-raw-prefix-hooks):
* lisp/mail/sendmail.el (mail-yank-hooks):
* lisp/mh-e/mh-letter.el (mh-yank-hooks): Use make-obsolete-variable.
2012-10-23 11:06:07 -04:00
Martin Rudalics
fb0104dabe
In debug record height of debugger window also when debugger will be back (Bug#8789).
...
* emacs-lisp/debug.el (debug): Record height of debugger window
also when debugger will be back (Bug#8789).
2012-10-19 11:28:50 +02:00
Stefan Monnier
aaf0c30025
* lisp/emacs-lisp/advice.el: Clean up commentary a bit.
...
(ad-do-advised-functions, ad-with-originals): Use `declare'.
(byte-code-function-p): Never redefine.
2012-10-18 11:37:57 -04:00
Stefan Monnier
90eacf9920
* lisp/emacs-lisp/gv.el (cond): Same fix as before for `if'.
...
* Makefile.in ($(MAKEFILE_NAME)): Depend on src/lisp.mk as well.
2012-10-18 08:56:10 -04:00
Chong Yidong
d18a0d2460
More documentation fixes for changes to defun, defmacro, etc.
...
* doc/lispref/functions.texi (Anonymous Functions): Explicitly list the
docstring, declare, and interactive arguments to lambda.
(Defining Functions): Likewise for defun.
(Inline Functions): Likewise for defsubst.
(Declare Form): Tweak description.
* doc/lispref/macros.texi (Defining Macros): defmacro is now a macro.
Explicitly list the docstring and declare arguments.
* emacs-lisp/byte-run.el (defsubst): Doc fix.
2012-10-15 12:03:04 +08:00
Stefan Monnier
9760c73c66
* lisp/emacs-lisp/eieio.el (eieio-oset-default, eieio-oset, oset-default)
...
(oset): Move uses of object-class-fast macro after its definition.
2012-10-13 21:42:48 -04:00
Stefan Monnier
5046ef67ca
* lisp/emacs-lisp/gv.el (if): Don't use closures in non-lexical-binding code.
2012-10-13 21:39:56 -04:00
Martin Rudalics
88ded8acca
In debug restore window configuration when debugger-will-be-back is non-nil (Bug#12623).
...
* emacs-lisp/debug.el (debug): When debugger-will-be-back is
non-nil, restore window configuration (Bug#12623).
2012-10-13 09:58:53 +02:00
Stefan Monnier
bd0ffffd5a
* lisp/emacs-lisp/eieio.el (lisp-imenu-generic-expression): Fix typo.
2012-10-12 16:07:58 -04:00
Stefan Monnier
9f1a4aa505
* lisp/emacs-lisp/cl-lib.el (cl--defsubst-expand): Undo last change.
...
* lisp/emacs-lisp/cl-macs.el (cl--defsubst-expand): Idem.
2012-10-11 16:36:23 -04:00