Commit graph

3416 commits

Author SHA1 Message Date
Stefan Monnier
ac348012f4 * lisp/emacs-lisp/cl-macs.el (cl-transform-lambda): Don't add spurious
parens around the arg list.

Fixes: debbugs:11499
2012-05-17 11:15:51 -04:00
Stefan Monnier
c41045e6f2 * lisp/emacs-lisp/pcase.el (pcase-let*, pcase-let): Fix edebug spec. 2012-05-15 14:45:27 -04:00
Stefan Monnier
fdb058c228 * lisp/emacs-lisp/smie.el (smie-indent--bolp-1): New function.
(smie-indent-keyword): Use it.
2012-05-15 09:25:03 -04:00
Stefan Monnier
06bc5e6ea6 *** empty log message *** 2012-05-13 12:04:37 -04:00
Chong Yidong
0ae03b6aae Adapt Electric Buffer Menu to recent Buffer Menu changes.
* lisp/ebuff-menu.el (electric-buffer-list): Put electric buffer menu
command descriptions in this docstring, instead of the docstring
of electric-buffer-menu-mode.  Code cleanups.
(electric-buffer-menu-mode): Use define-derived-mode.  Rename from
Electric-buffer-menu-mode.
(electric-buffer-update-highlight): Minor code cleanup.

* lisp/emacs-lisp/tabulated-list.el (tabulated-list-format)
(tabulated-list-entries, tabulated-list-padding)
(tabulated-list-sort-key): Make permanent-local.

Fixes: debbugs:11455
2012-05-13 22:23:45 +08:00
Stefan Monnier
e5bd0a2895 Move define-obsolete-variable-alias before the var's definition.
* lisp/vc/log-edit.el (vc-comment-ring, vc-comment-ring-index):
* lisp/tooltip.el (tooltip-hook):
* lisp/textmodes/reftex-toc.el (reftex-toc-map):
* lisp/textmodes/reftex-sel.el (reftex-select-label-map)
(reftex-select-bib-map):
* lisp/textmodes/reftex-index.el (reftex-index-map)
(reftex-index-phrases-map):
* lisp/speedbar.el (speedbar-syntax-table, speedbar-key-map):
* lisp/progmodes/meta-mode.el (meta-mode-map):
* lisp/novice.el (disabled-command-hook):
* lisp/loadhist.el (unload-hook-features-list):
* lisp/frame.el (blink-cursor):
* lisp/files.el (find-file-not-found-hooks, write-file-hooks)
(write-contents-hooks):
* lisp/emulation/tpu-edt.el (GOLD-map):
* lisp/emacs-lock.el (emacs-lock-from-exiting):
* lisp/emacs-lisp/generic.el (generic-font-lock-defaults):
* lisp/emacs-lisp/chart.el (chart-map):
* lisp/dos-fns.el (register-name-alist):
* lisp/dired-x.el (dired-omit-files-p):
* lisp/desktop.el (desktop-enable):
* lisp/cus-edit.el (custom-mode-hook):
* lisp/buff-menu.el (buffer-menu-mode-hook):
* lisp/bookmark.el (bookmark-read-annotation-text-func)
(bookmark-exit-hooks):
* lisp/allout.el (allout-mode-deactivate-hook)
(allout-exposure-change-hook, allout-structure-added-hook)
(allout-structure-deleted-hook, allout-structure-shifted-hook):
* lisp/dirtrack.el (dirtrack-toggle, dirtrackp, dirtrack-debug-toggle)
(dirtrack-debug): Move call to define-obsolete-variable-alias so it
comes before the corresponding variable's definition.
2012-05-12 23:05:06 -04:00
Glenn Morris
666b903b91 Merge from emacs-24; up to 2012-04-21T14:12:27Z!sdl.web@gmail.com 2012-05-08 20:06:08 -07:00
Stefan Monnier
f0809a9d05 * lisp/buff-menu.el (list-buffers--refresh): Mark `size' as right-align.
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-init-header):
Handle new :right-align column property.
(tabulated-list-print-col): Idem, plus use `display' text-property to
try and preserve alignment for variable pitch fonts.
2012-05-07 12:29:55 -04:00
Chong Yidong
1241b724c8 Restore Buffer-menu-use-header-line functionality.
* lisp/emacs-lisp/tabulated-list.el: Add no-header-line alternative.
(tabulated-list-use-header-line): New var.
(tabulated-list-init-header): Use it.
(tabulated-list-print-fake-header): New function.
(tabulated-list-print): Use it.
(tabulated-list-sort-button-map): Add non-header-line commands.
(tabulated-list-init-header): Add column name property to basic
labels as well.
(tabulated-list-col-sort): Handle non-header-line button case.
(tabulated-list--sort-by-column-name): Fix a corner case.

* lisp/buff-menu.el (list-buffers--refresh): Handle
Buffer-menu-use-header-line.
2012-05-07 13:37:38 +08:00
Chong Yidong
e5f9458fe8 * lisp/buff-menu.el: Convert to Tabulated List mode.
(Buffer-menu-buffer+size-width): Make obsolete.
(Buffer-menu-name-width, Buffer-menu-size-width): New variables.
(Buffer-menu-mode-map): Inherit from tabulated-list-mode-map.
(Buffer-menu-mode): Derive from tabulated-list-mode.  Move command
documentation into docstring of buffer-menu.
(Buffer-menu-toggle-files-only): Add an informative message.
(Buffer-menu-sort): Convert to alias for tabulated-list-sort.
(Buffer-menu-buffer, Buffer-menu-beginning, Buffer-menu-mark)
(Buffer-menu-unmark, Buffer-menu-backup-unmark)
(Buffer-menu-delete, Buffer-menu-save, Buffer-menu-not-modified)
(Buffer-menu-execute, Buffer-menu-select)
(Buffer-menu-marked-buffers, Buffer-menu-toggle-read-only)
(Buffer-menu-bury): Use Tabulated List machinery.
(Buffer-menu-mouse-select, Buffer-menu-sort-by-column)
(Buffer-menu-sort-button-map, Buffer-menu-make-sort-button):
Deleted.
(list-buffers--refresh): New function.
(list-buffers-noselect): Use it.
(tabulated-list-entry-size->, Buffer-menu--pretty-name)
(Buffer-menu--pretty-file-name): New helper functions.

* lisp/loadup.el: Preload tabulated-list.

* lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort): Rename from
tabulated-list-sort-column.
(tabulated-list-init-header): Add the initial aligning space even
if tabulated-list-padding is zero.

* src/lisp.mk (lisp): Update.
2012-05-07 00:45:46 +08:00
Christopher Schmidt
e129292c44 * lisp/emacs-lisp/cl-macs.el (cl-expr-contains): Handle cons cells
whose cdr is not a cons cell correctly.

Fixes: debbugs:11038
2012-05-06 11:38:30 -04:00
Chong Yidong
6632d36111 Improvements for Tabulated List mode.
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-format): Accept
additional plist in column descriptors.
(tabulated-list-init-header): Obey it.
(tabulated-list-get-entry): New function.
(tabulated-list-put-tag): Use it.  Use string-width instead of
length.
(tabulated-list--column-number): New function.
(tabulated-list-print): Use it.
(tabulated-list-print-col): New function.  Set
`tabulated-list-column-name' property on each column's text.
(tabulated-list-print-entry): Use it.
(tabulated-list-delete-entry, tabulated-list-set-col): New
functions.
(tabulated-list-sort-column): New command.

Fixes: debbugs:11337
2012-05-06 16:32:37 +08:00
Chong Yidong
25f292cd48 * emacs-lisp/package.el (package-built-in-p): Handle `emacs' package.
Fixes: debbugs:11410
2012-05-06 12:05:43 +08:00
Chong Yidong
f677562b6c Fix package.el handling of local variables on first line.
* lisp/emacs-lisp/package.el (package-buffer-info): Avoid putting
local variables into description.
2012-05-05 13:13:27 +08:00
Stefan Monnier
5342bb062f * lisp/emacs-lisp/pcase.el (pcase--let*): New function.
(pcase--expand, pcase-codegen, pcase--q1): Use it to reduce nesting
a bit more.
(pcase--split-pred): Be more clever about ruling out overlap between
a predicate and some constant pattern.
(pcase--q1): Use `null' instead of (eq foo nil).
2012-05-04 22:05:49 -04:00
Stefan Monnier
71873e2b33 Add new error and function `user-error'.
* lisp/subr.el (user-error): New function.
* lisp/window.el (switch-to-buffer):
* lisp/vc/smerge-mode.el (smerge-resolve-function, smerge-resolve)
(smerge-match-conflict):
* lisp/simple.el (previous-matching-history-element)
(next-matching-history-element, goto-history-element, undo-more)
(undo-start):
* lisp/progmodes/etags.el (visit-tags-table-buffer, find-tag-tag)
(find-tag-noselect, find-tag-in-order, etags-goto-tag-location)
(next-file, tags-loop-scan, list-tags, complete-tag):
* lisp/progmodes/compile.el (compilation-loop):
* lisp/mouse.el (mouse-minibuffer-check):
* lisp/man.el (Man-bgproc-sentinel, Man-goto-page):
* lisp/info.el (Info-find-node-2, Info-extract-pointer, Info-history-back)
(Info-history-forward, Info-follow-reference, Info-menu)
(Info-extract-menu-item, Info-extract-menu-counting)
(Info-forward-node, Info-backward-node, Info-next-menu-item)
(Info-last-menu-item, Info-next-preorder, Info-last-preorder)
(Info-next-reference, Info-prev-reference, Info-index)
(Info-index-next, Info-follow-nearest-node)
(Info-copy-current-node-name):
* lisp/imenu.el (imenu--make-index-alist)
(imenu-default-create-index-function, imenu-add-to-menubar):
* lisp/files.el (basic-save-buffer, recover-file):
* lisp/emacs-lisp/easy-mmode.el (easy-mmode-define-navigation):
* lisp/emacs-lisp/checkdoc.el (checkdoc-continue, checkdoc-comments)
(checkdoc-message-text, checkdoc-defun):
* lisp/dabbrev.el (dabbrev-completion, dabbrev--abbrev-at-point):
* lisp/cus-edit.el (customize-changed-options, customize-rogue)
(customize-saved, custom-variable-set, custom-variable-mark-to-save)
(custom-variable-mark-to-reset-standard)
(custom-variable-reset-backup, custom-face-mark-to-reset-standard)
(custom-file):
* lisp/completion.el (check-completion-length):
* lisp/comint.el (comint-search-arg)
(comint-previous-matching-input-string-position)
(comint-previous-matching-input)
(comint-replace-by-expanded-history-before-point, comint-send-input)
(comint-copy-old-input, comint-backward-matching-input)
(comint-goto-process-mark, comint-set-process-mark):
* lisp/calendar/calendar.el (calendar-cursor-to-date): Use it.
* lisp/bindings.el (debug-ignored-errors): Remove regexps, add `user-error'.
* src/data.c (PUT_ERROR): New macro.
(syms_of_data): Use it.  Add new error type `user-error'.
* src/undo.c (user_error): New function.
(Fprimitive_undo): Use it.
* src/print.c (print_error_message): Adjust print style for `user-error'.
* src/keyboard.c (user_error): New function.
(Fexit_recursive_edit, Fabort_recursive_edit): Use it.
2012-05-04 19:16:47 -04:00
Paul Eggert
0bfcf5c598 Fix minor Y10k bugs.
* lisp/arc-mode.el (archive-unixdate):
* lisp/autoinsert.el (auto-insert-alist):
* lisp/calc/calc-forms.el (math-this-year):
* lisp/gnus/nnweb.el (nnweb-google-parse-1):
* lisp/emacs-lisp/copyright.el (copyright-current-year)
(copyright-update-year, copyright):
* lisp/tar-mode.el (tar-clip-time-string):
* lisp/time.el (display-time-update):
Don't assume years have 4 digits.
2012-05-03 23:13:18 -07:00
Chong Yidong
78f3273aab Convert more defvars to defcustoms.
* dos-w32.el (file-name-buffer-file-type-alist)
(direct-print-region-use-command-dot-com):
* ffap.el (ffap-menu-regexp):
* follow.el (follow-debug):
* forms.el (forms--debug):
* iswitchb.el (iswitchb-all-frames):
* ido.el (ido-all-frames):
* mail/feedmail.el (feedmail-mail-send-hook)
(feedmail-mail-send-hook-queued):
* mail/footnote.el (footnote-signature-separator):
* mail/mailabbrev.el (mail-alias-separator-string)
(mail-abbrev-mode-regexp):
* mail/rmail.el (rmail-speedbar-match-folder-regexp):
* progmodes/idlwave.el (idlwave-libinfo-file)
(idlwave-default-completion-case-is-down)
(idlwave-library-routines): Convert defvars to defcustoms.

* mail/rmail.el (rmail-decode-mime-charset):
* progmodes/idlw-shell.el (idlwave-shell-print-expression-function)
(idlwave-shell-fix-inserted-breaks)
(idlwave-shell-activate-alt-keybindings)
(idlwave-shell-use-breakpoint-glyph):
* facemenu.el (facemenu-unlisted-faces): Delete obsolete vars.

* doc/lispref/os.texi (Timers): Use defopt for timer-max-repeats.
2012-05-04 13:14:14 +08:00
Stefan Monnier
2bd785a208 * lisp/emacs-lisp/bytecomp.el
(byte-compile-file-form-custom-declare-variable): Compile all elements,
since cconv.el might have introduced :fun-body, internal-make-closure,
and friends for bytecomp to handle.
* lisp/custom.el (defcustom): Avoid ((λ ..) ..).

Fixes: debbugs:11391
2012-05-02 22:39:23 -04:00
Chong Yidong
a8e7d6d783 Merge changes from emacs-24 branch 2012-04-27 11:10:38 +08:00
Stefan Monnier
797e6e88e9 * emacs-lisp/assoc.el: Move to obsolete/. 2012-04-26 20:30:56 -04:00
Stefan Monnier
657c21e46b * lisp/emacs-lisp/assoc.el (aget): Fix dynamic-scoping issue.
Fixes: debbugs:11352
2012-04-26 14:21:03 -04:00
Stefan Monnier
e95a67dc75 Replace lexical-let by lexical-binding (except Gnus, CEDET, ERT).
* lisp/term/ns-win.el (ns-define-service):
* lisp/progmodes/pascal.el (pascal-goto-defun):
* lisp/progmodes/js.el (js--read-tab):
* lisp/progmodes/etags.el (tags-lazy-completion-table):
* lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
* lisp/emacs-lisp/ewoc.el (ewoc--wrap):
* lisp/emacs-lisp/assoc.el (aput, adelete, amake):
* lisp/doc-view.el (doc-view-convert-current-doc):
* lisp/url/url.el (url-retrieve-synchronously):
* lisp/vc/diff.el (diff-no-select): Replace lexical-let by lexical-binding.
2012-04-26 08:43:28 -04:00
Stefan Monnier
0d42eb3e96 * lisp/vc/vc-mtn.el:
* lisp/vc/vc-hg.el:
* lisp/vc/vc-git.el:
* lisp/vc/vc-dir.el:
* lisp/vc/vc-cvs.el:
* lisp/vc/vc-bzr.el:
* lisp/vc/vc-arch.el:
* lisp/vc/vc.el: Replace lexical-let by lexical-binding.
* lisp/minibuffer.el (lazy-completion-table): Avoid ((λ ...) ...).
* lisp/emacs-lisp/cl-macs.el (lexical-let): Fix use in lexical-binding.
* lisp/emacs-lisp/cconv.el (cconv-analyse-form): Warn use of ((λ ...) ...).
2012-04-25 23:18:47 -04:00
Glenn Morris
ed99f8ff2e Comment fix 2012-04-20 20:32:15 -04:00
Chong Yidong
c07a4c0b59 Merge from emacs-24 branch 2012-04-20 16:48:50 +08:00
Eli Zaretskii
539aa51394 Doc fixes for emacs-bzr-* facilities.
lisp/version.el (emacs-bzr-version, emacs-bzr-get-version): Doc fixes.
2012-04-20 08:47:55 +03:00
Juanma Barranquero
4d6769e1bb lisp/*: Add declarations, remove unused bindings, mark unused args.
* lisp/avoid.el (mouse-avoidance-mode): Mark unused arg.
  (mouse-avoidance-nudge-mouse): Remove unused binding.

* lisp/imenu.el (imenu-default-goto-function): Mark unused args.
  (imenu-progress-message): Remove obsolete macro; all callers changed.

* lisp/mouse.el (mouse-menu-major-mode-map):
* lisp/emacs-lisp/authors.el (authors-scan-change-log)
  (authors-add-to-author-list):
* lisp/emacs-lisp/avl-tree.el (avl-tree--enter-balance):
* lisp/emacs-lisp/smie.el (smie-auto-fill):
* lisp/mail/sendmail.el (mail-bury):
* lisp/mail/unrmail.el (unrmail):
* lisp/net/tls.el (open-tls-stream):
* lisp/textmodes/picture.el (picture-mouse-set-point):
  Remove unused bindings.

* lisp/subr.el (keymap-canonicalize): Remove unused binding.
  (read-passwd): Mark unused arg.

* lisp/tutorial.el (tutorial--display-changes): Remove unused binding.
  (tutorial--save-tutorial-to): Remove unused variable.

* lisp/emacs-lisp/package.el (define-package, package-menu-mark-delete)
  (package-menu-mark-install, package-menu-mark-unmark): Mark unused args.
  (package-generate-autoloads, package-menu--generate)
  (package-menu--find-upgrades): Remove unused bindings.

* lisp/emulation/cua-rect.el (cua-restrict-regexp-rectangle)
  (cua-restrict-prefix-rectangle): Doc fixes.  Remove unused bindings.
  (cua--mouse-ignore, cua--delete-rectangle, cua--extract-rectangle)
  (cua--indent-rectangle, cua-open-rectangle, cua-close-rectangle)
  (cua-blank-rectangle, cua-string-rectangle, cua-replace-in-rectangle)
  (cua-incr-rectangle, cua-sequence-rectangle, cua--convert-rectangle-as)
  (cua--rectangle-aux-replace, cua--left-fill-rectangle)
  (cua-scroll-rectangle-up, cua-scroll-rectangle-down)
  (cua-delete-char-rectangle): Mark unused args.
  (cua-align-rectangle): Remove unused binding.

* lisp/mail/rmail.el (compilation--message->loc)
  (epa--find-coding-system-for-mime-charset): Declare.

* lisp/net/dbus.el (dbus-register-service): Declare.
  (dbus-name-owner-changed-handler): Remove unused binding.

* lisp/nxml/nxml-mode.el (nxml-electric-slash, nxml-in-mixed-content-p)
  (nxml-compute-indent-from-matching-start-tag): Remove unused variables.
  (nxml-scan-backward-within): Mark unused arg.
  (nxml-dynamic-markup-word): Remove unused binding.
2012-04-19 19:20:26 +02:00
Chong Yidong
2c070447bf * emacs-lisp/tabulated-list.el (tabulated-list-print): Fix typos. 2012-04-17 23:07:21 +08:00
Glenn Morris
d96a4f8829 Auto-commit of loaddefs files. 2012-04-17 06:21:15 -04:00
Glenn Morris
2311d8e5a6 Merge from pending; try to fix-up suboptimal ses ChangeLog. 2012-04-16 20:06:56 -07:00
Glenn Morris
099e72021d * eieio-opt.el (describe-class, describe-generic): Autoload trivia. 2012-04-16 15:25:59 -04:00
Glenn Morris
389c3aa7b2 Header comment trivial fix 2012-04-16 15:21:32 -04:00
Glenn Morris
bf350d6a59 * lisp/emacs-lisp/cl-extra.el (*random-state*): Remove unnecessary declaration. 2012-04-16 15:20:42 -04:00
Chong Yidong
c505aaeb00 Call imagemagick-register-types automatically.
* lisp/image.el (imagemagick--extension-regexp): New variable.
(imagemagick-register-types): Use it.
(imagemagick-types-inhibit): Add :set function.  Allow new value
of t to inhibit all types.

* lisp/loadup.el (fboundp): Preload regexp-opt, needed by
imagemagick-register-types.

* lisp/emacs-lisp/regexp-opt.el (regexp-opt-charset): Avoid cl macros,
so we can preload it.
2012-04-16 11:47:43 +08:00
Chong Yidong
e6fd457e01 Merge from emacs-24 branch 2012-04-15 15:28:01 +08:00
Stefan Monnier
9c2d6a4ab2 Avoid the use of ((lambda ...) ...) in lexical-binding code.
* emacs-lisp/easy-mmode.el (define-minor-mode): Use funcall.

Fixes: debbugs:11241
2012-04-14 08:48:27 -04:00
Lennart Borgman
050cc68b40 `narrow-to-defun' fixup
* emacs-lisp/lisp.el (narrow-to-defun): `beginning-of-defun' goes
to previous function when point is on the first character of a
function. Take care of that in `narrow-to-defun'.

Fixes: debbugs:6157
2012-04-11 04:12:20 +02:00
Stefan Monnier
2a718f6fbc * lisp/emacs-lisp/autoload.el (autoload-make-program): Remove, unused. 2012-04-10 16:15:08 -04:00
Chong Yidong
fb7ada5f94 Remove * characters from the front of variable docstrings. 2012-04-09 21:05:48 +08:00
Chong Yidong
b4d3bc10dc Remove defining user variables via * in docstring.
* lisp/apropos.el (apropos-variable):
* lisp/files-x.el (read-file-local-variable):
* lisp/simple.el (set-variable):
* lisp/woman.el (woman-mini-help):
* lisp/emacs-lisp/byte-opt.el (side-effect-free-fns): Callers changed.

* lisp/custom.el (custom-variable-p): Return nil for non-symbol
arguments instead of signaling an error.
(user-variable-p): Obsolete alias for custom-variable-p.

* lisp/erc/erc.el (erc-cmd-SET): Call custom-variable-p instead of
user-variable-p.

* src/callint.c (Finteractive, Fcall_interactively):
* src/minibuf.c (Fread_variable): Callers changed.

* src/eval.c (Fuser_variable_p, user_variable_p_eh)
(lisp_indirect_variable): Functions deleted.
(Fdefvar): Caller changed.

* doc/lispref/commands.texi (Interactive Codes):
* doc/lispref/help.texi (Accessing Documentation):
* doc/lispref/minibuf.texi (High-Level Completion): Callers changed.

* doc/lispref/customize.texi (Variable Definitions): Remove user-variable-p.
2012-04-09 20:36:01 +08:00
Glenn Morris
c0ea195db9 * emacs-lisp/authors.el (authors-aliases): Another addition. 2012-04-02 09:32:06 -07:00
Glenn Morris
0b0210946b Edebug doc fixes
* doc/lispref/edebug.texi (Instrumenting Macro Calls):
Mention defining macros at instrumentation time.
(Edebug Options): Mention edebug-unwrap-results.

* lisp/emacs-lisp/edebug.el (edebug-unwrap-results): Doc fix.
Comments.

* admin/FOR-RELEASE: Markup.
2012-03-31 12:58:05 -07:00
Stefan Monnier
b973155e95 * lisp/emacs-lisp/avl-tree.el (avl-tree--enter-balance): Fix paren typo.
(avl-tree--check, avl-tree--check-node): New funs.

Fixes: debbugs:11077
2012-03-27 16:43:09 -04:00
Stefan Monnier
f9210e18be * emacs-lisp/bytecomp.el (byte-compile-constants-vector): Allow more
than 197 variables.
2012-03-26 15:10:00 -04:00
Stefan Monnier
699c782b76 Merge from trunk 2012-03-25 16:37:21 -04:00
Chong Yidong
f0bcceb995 Improve column width calculation in tabulated-list.el.
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry): Use
string-width and truncate-string-width to handle arbitrary
characters.
2012-03-20 23:44:45 +08:00
Leo Liu
e2b5bdd73a * lisp/emacs-lisp/copyright.el (copyright-year-ranges): Fix typo. 2012-03-17 00:36:27 +08:00
Chong Yidong
3f2eafd1fb Fix ring extension code in ring.el, and tweak comint-input-ring handling.
* lisp/emacs-lisp/ring.el (ring-extend): New function.
(ring-insert+extend): Extend the ring correctly.

* lisp/comint.el (comint-read-input-ring)
(comint-add-to-input-history): Grow comint-input-ring lazily.

Fixes: debbugs:11019
2012-03-15 16:00:43 +08:00
Chong Yidong
292112ed3b Load a package's generated autoloads file before byte compiling it.
* lisp/emacs-lisp/package.el (package-unpack, package-unpack-single):
Load generated autoloads file before byte compiling.
(package--make-autoloads-and-compile): New helper fun.

Fixes: debbugs:10970
2012-03-12 11:03:16 +08:00