1. 05 Jan, 2012 1 commit
  2. 28 Sep, 2011 1 commit
  3. 19 Sep, 2011 1 commit
  4. 13 Sep, 2011 2 commits
  5. 22 Aug, 2011 1 commit
  6. 15 Jul, 2011 1 commit
  7. 15 Jun, 2011 1 commit
  8. 31 May, 2011 2 commits
  9. 20 Mar, 2011 1 commit
  10. 26 Feb, 2011 1 commit
    • Stefan Monnier's avatar
      Compute freevars in cconv-analyse. · a9de04fa
      Stefan Monnier authored
      * lisp/emacs-lisp/cconv.el: Compute freevars in cconv-analyse.
      (cconv-mutated, cconv-captured): Remove.
      (cconv-captured+mutated, cconv-lambda-candidates): Don't give them
      a global value.
      (cconv-freevars-alist): New var.
      (cconv-freevars): Remove.
      (cconv--lookup-let): Remove.
      (cconv-closure-convert-function): Extract from cconv-closure-convert-rec.
      (cconv-closure-convert-rec): Adjust to above changes.
      (fboundp): New function.
      (cconv-analyse-function, form): Rewrite.
      * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
      Handle declare-function here.
      (byte-compile-obsolete): Remove.
      (byte-compile-arglist-warn): Check late defsubst here.
      (byte-compile-file-form): Simplify.
      (byte-compile-file-form-defsubst): Remove.
      (byte-compile-macroexpand-declare-function): Rename from
      byte-compile-declare-function, turn it into a macro-expander.
      (byte-compile-normal-call): Check obsolescence.
      (byte-compile-quote-form): Remove.
      (byte-compile-defmacro): Revert to trunk's definition which seems to
      work just as well and handles `declare'.
      * lisp/emacs-lisp/byte-run.el (make-obsolete): Don't modify byte-compile.
      * lisp/Makefile.in (BIG_STACK_DEPTH): Increase to 1200.
      (compile-onefile): Pass $(BIG_STACK_OPTS) before "-l bytecomp".
      * lisp/emacs-lisp/macroexp.el: Use lexbind.
      (macroexpand-all-1): Check macro obsolescence.
      * lisp/vc/diff-mode.el: Use lexbind.
      * lisp/follow.el (follow-calc-win-end): Simplify.
      a9de04fa
  11. 25 Feb, 2011 1 commit
    • Stefan Monnier's avatar
      Get rid of funvec. · 876c194c
      Stefan Monnier authored
      * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode): Handle new form of
      `byte-constant'.
      (byte-compile-close-variables, displaying-byte-compile-warnings):
      Add edebug spec.
      (byte-compile-toplevel-file-form): New fun, split out of
      byte-compile-file-form.
      (byte-compile-from-buffer): Use it to avoid applying cconv
      multiple times.
      (byte-compile): Only strip `function' if it's present.
      (byte-compile-lambda): Add `reserved-csts' argument.
      Use new lexenv arg of byte-compile-top-level.
      (byte-compile-reserved-constants): New var.
      (byte-compile-constants-vector): Obey it.
      (byte-compile-constants-vector): Handle new `byte-constant' form.
      (byte-compile-top-level): Add args `lexenv' and `reserved-csts'.
      (byte-compile-form): Don't check callargs here.
      (byte-compile-normal-call): Do it here instead.
      (byte-compile-push-unknown-constant)
      (byte-compile-resolve-unknown-constant): Remove, unused.
      (byte-compile-make-closure): Use `make-byte-code' rather than `curry',
      putting the environment into the "constant" pool.
      (byte-compile-get-closed-var): Use special byte-constant.
      * lisp/emacs-lisp/byte-opt.el (byte-optimize-form-code-walker): Handle new
      intermediate special form `internal-make-vector'.
      (byte-optimize-lapcode): Handle new form of `byte-constant'.
      * lisp/help-fns.el (describe-function-1): Don't handle funvecs.
      * lisp/emacs-lisp/macroexp.el (macroexpand-all-1): Only convert quote to
      function if the content is a lambda expression, not if it's a closure.
      * emacs-lisp/eieio-come.el: Remove.
      * lisp/emacs-lisp/eieio.el: Don't require eieio-comp.
      (defmethod): Do a bit more work to find the body and wrap it into
      a function before passing it to eieio-defmethod.
      (eieio-defmethod): New arg `code' for it.
      * lisp/emacs-lisp/debug.el (debugger-setup-buffer): Don't hide things in
      debugger backtrace.
      * lisp/emacs-lisp/cl-extra.el (cl-macroexpand-all): Use backquotes, and be
      more careful when quoting a function value.
      * lisp/emacs-lisp/cconv.el (cconv-freevars): Accept defvar/defconst.
      (cconv-closure-convert-rec): Catch stray `internal-make-closure'.
      * lisp/Makefile.in (COMPILE_FIRST): Compile pcase and cconv early.
      
      * src/eval.c (Qcurry): Remove.
      (funcall_funvec): Remove.
      (funcall_lambda): Move new byte-code handling to reduce impact.
      Treat all args as lexical in the case of lexbind.
      (Fcurry): Remove.
      * src/data.c (Qfunction_vector): Remove.
      (Ffunvecp): Remove.
      * src/lread.c (read1): Revert to calling make_byte_code here.
      (read_vector): Don't call make_byte_code any more.
      * src/lisp.h (enum pvec_type): Rename back to PVEC_COMPILED.
      (XSETCOMPILED): Rename back from XSETFUNVEC.
      (FUNVEC_SIZE): Remove.
      (FUNVEC_COMPILED_TAG_P, FUNVEC_COMPILED_P): Remove.
      (COMPILEDP): Rename back from FUNVECP.
      * src/fns.c (Felt): Remove unexplained FUNVEC check.
      * src/doc.c (Fdocumentation): Don't handle funvec.
      * src/alloc.c (make_funvec, Ffunvec): Remove.
      * doc/lispref/vol2.texi (Top):
      * doc/lispref/vol1.texi (Top):
      * doc/lispref/objects.texi (Programming Types, Funvec Type, Type Predicates):
      * doc/lispref/functions.texi (Functions, What Is a Function, FunctionCurrying):
      * doc/lispref/elisp.texi (Top): Remove mentions of funvec and curry.
      876c194c
  12. 25 Jan, 2011 1 commit
  13. 15 Jan, 2011 1 commit
  14. 02 Jan, 2011 1 commit
  15. 30 Aug, 2010 1 commit
    • Stefan Monnier's avatar
      Use `declare' in defmacros. · f291fe60
      Stefan Monnier authored
      * lisp/window.el (save-selected-window):
      * lisp/subr.el (with-temp-file, with-temp-message, with-syntax-table):
      * lisp/progmodes/python.el (def-python-skeleton):
      * lisp/net/dbus.el (dbus-ignore-errors):
      * lisp/jka-cmpr-hook.el (with-auto-compression-mode):
      * lisp/international/mule.el (with-category-table):
      * lisp/emacs-lisp/timer.el (with-timeout):
      * lisp/emacs-lisp/lisp-mnt.el (lm-with-file):
      * lisp/emacs-lisp/eieio.el (with-slots):
      * lisp/emacs-lisp/easymenu.el (easy-menu-define):
      * lisp/emacs-lisp/debug.el (debugger-env-macro):
      * lisp/emacs-lisp/cl-compat.el (Multiple-value-bind, Multiple-value-setq)
      (Multiple-value-call, Multiple-value-prog1):
      * lisp/emacs-lisp/cl-seq.el (cl-parsing-keywords, cl-check-key)
      (cl-check-test-nokey, cl-check-test, cl-check-match): Move indent and
      edebug rule to definition.
      * lisp/emacs-lisp/lisp-mode.el (save-selected-window)
      (with-current-buffer, combine-after-change-calls)
      (with-output-to-string, with-temp-file, with-temp-buffer)
      (with-temp-message, with-syntax-table, read-if, eval-after-load)
      (dolist, dotimes, when, unless):
      * lisp/emacs-lisp/byte-run.el (inline): Remove indent rule, redundant.
      f291fe60
  16. 13 Jan, 2010 1 commit
  17. 31 Oct, 2009 1 commit
    • Stefan Monnier's avatar
      * textmodes/two-column.el (2C-split): · 9a529312
      Stefan Monnier authored
      * textmodes/texnfo-upd.el (texinfo-multi-file-included-list):
      * textmodes/tex-mode.el (tex-set-buffer-directory):
      * textmodes/spell.el (spell-region, spell-string):
      * textmodes/reftex.el (reftex-erase-buffer):
      (reftex-get-file-buffer-force, reftex-kill-temporary-buffers):
      * textmodes/reftex-toc.el (reftex-toc-promote-action):
      * textmodes/reftex-sel.el (reftex-get-offset, reftex-insert-docstruct)
      (reftex-select-item):
      * textmodes/reftex-ref.el (reftex-label-info-update)
      (reftex-offer-label-menu):
      * textmodes/reftex-index.el (reftex-index-change-entry)
      (reftex-index-phrases-info):
      * textmodes/reftex-global.el (reftex-create-tags-file)
      (reftex-save-all-document-buffers, reftex-ensure-write-access):
      * textmodes/reftex-dcr.el (reftex-echo-ref, reftex-echo-cite)
      (reftex-view-crossref-from-bibtex):
      * textmodes/reftex-cite.el (reftex-bibtex-selection-callback)
      (reftex-extract-bib-entries-from-thebibliography)
      (reftex-all-used-citation-keys, reftex-create-bibtex-file):
      * textmodes/refbib.el (r2b-capitalize-title):
      (r2b-convert-buffer, r2b-help):
      * textmodes/page-ext.el (pages-directory)
      (pages-directory-goto-with-mouse):
      * textmodes/bibtex.el (bibtex-validate-globally):
      * textmodes/bib-mode.el (bib-capitalize-title):
      * textmodes/artist.el (artist-clear-buffer, artist-system):
      * progmodes/xscheme.el (global-set-scheme-interaction-buffer):
      (local-set-scheme-interaction-buffer, xscheme-process-filter)
      (verify-xscheme-buffer, xscheme-enter-interaction-mode)
      (xscheme-enter-debugger-mode, xscheme-debugger-mode-p)
      (xscheme-send-control-g-interrupt, xscheme-start-process)
      (xscheme-process-sentinel, xscheme-cd):
      * progmodes/verilog-mode.el (verilog-read-always-signals)
      (verilog-set-define, verilog-getopt-file)
      (verilog-module-inside-filename-p):
      * progmodes/sh-script.el:
      * progmodes/python.el (python-pdbtrack-get-source-buffer)
      (python-pdbtrack-grub-for-buffer, python-execute-file):
      * progmodes/octave-inf.el (inferior-octave):
      * progmodes/idlwave.el (idlwave-scan-user-lib-files)
      (idlwave-shell-compile-helper-routines, idlwave-set-local)
      (idlwave-display-completion-list-xemacs, idlwave-list-abbrevs)
      (idlwave-display-completion-list-emacs, idlwave-list-load-path-shadows)
      (idlwave-completion-fontify-classes, idlwave-display-calling-sequence):
      * progmodes/idlw-shell.el (idlwave-shell-examine-display-clear)
      (idlwave-shell-filter, idlwave-shell-examine-highlight)
      (idlwave-shell-sentinel, idlwave-shell-filter-directory)
      (idlwave-shell-display-line, idlwave-shell-set-bp-in-module)
      (idlwave-shell-examine-display, idlwave-shell-run-region)
      (idlwave-shell-filter-bp, idlwave-shell-save-and-action)
      (idlwave-shell-sources-filter, idlwave-shell-goto-next-error):
      * progmodes/idlw-help.el (idlwave-help-get-special-help)
      (idlwave-help-get-help-buffer):
      * progmodes/gud.el (gud-basic-call, gud-find-class)
      (gud-tooltip-activate-mouse-motions-if-enabled):
      * progmodes/gdb-mi.el (gdb-mouse-toggle-breakpoint-fringe):
      * progmodes/ebrowse.el (ebrowse-member-table, ebrowse-save-tree-as)
      (ebrowse-view-exit-fn, ebrowse-tags-list-members-in-file)
      (ebrowse-tags-next-file):
      * progmodes/ebnf2ps.el (ebnf-generate-eps, ebnf-generate-eps)
      (ebnf-eps-production-list, ebnf-begin-file, ebnf-log)
      (ebnf-eps-finish-and-write):
      * progmodes/cpp.el (cpp-edit-save):
      * progmodes/cperl-mode.el (cperl-pod-to-manpage):
      * progmodes/cc-defs.el (c-emacs-features):
      * progmodes/antlr-mode.el (antlr-invalidate-context-cache)
      (antlr-directory-dependencies):
      * progmodes/ada-xref.el (ada-gnat-parse-gpr, ada-get-ali-file-name)
      (ada-run-application, ada-find-in-src-path, ada-goto-parent)
      (ada-find-any-references, ada-make-filename-from-adaname)
      (ada-make-body-gnatstub):
      * obsolete/rnews.el (news-list-news-groups):
      * obsolete/resume.el (resume-suspend-hook,resume-write-buffer-to-file):
      * obsolete/iso-acc.el (iso-acc-minibuf-setup):
      * net/rcirc.el (rcirc-debug):
      * net/newst-treeview.el (newsticker--treeview-list-add-item)
      (newsticker--treeview-list-clear, newsticker-treeview-browse-url)
      (newsticker--treeview-list-update-faces, newsticker-treeview-save)
      (newsticker--treeview-item-show-text, newsticker--treeview-item-show)
      (newsticker--treeview-tree-update-tag,newsticker--treeview-buffer-init)
      (newsticker-treeview-show-item, newsticker--treeview-unfold-node)
      (newsticker--treeview-list-clear-highlight)
      (newsticker--treeview-list-update-highlight)
      (newsticker--treeview-list-highlight-start)
      (newsticker--treeview-tree-update-highlight)
      (newsticker--treeview-get-selected-item)
      (newsticker-treeview-mark-list-items-old)
      (newsticker--treeview-set-current-node):
      * net/newst-plainview.el (newsticker--buffer-set-uptodate):
      * net/newst-backend.el (newsticker--get-news-by-funcall)
      (newsticker--get-news-by-wget, newsticker--image-get)
      (newsticker--image-sentinel):
      * net/mairix.el (mairix-rmail-fetch-field, mairix-gnus-fetch-field):
      * net/eudcb-ph.el (eudc-ph-do-request, eudc-ph-open-session):
      (eudc-ph-close-session):
      * net/eudc.el (eudc-save-options):
      * language/thai-word.el (thai-update-word-table):
      * language/japan-util.el (japanese-string-conversion):
      * international/titdic-cnv.el (tsang-quick-converter)
      (ziranma-converter, ctlau-converter):
      * international/mule-cmds.el (describe-language-environment):
      * international/ja-dic-cnv.el (skkdic-convert-okuri-ari)
      (skkdic-convert-postfix, skkdic-convert-prefix):
      (skkdic-convert-okuri-nasi, skkdic-convert):
      * emacs-lisp/re-builder.el (reb-update-overlays):
      * emacs-lisp/pp.el (pp-to-string, pp-display-expression):
      * emacs-lisp/gulp.el (gulp-send-requests):
      * emacs-lisp/find-gc.el (trace-call-tree):
      * emacs-lisp/eieio-opt.el (eieio-browse, eieio-describe-class)
      (eieio-describe-generic):
      * emacs-lisp/eieio-base.el (eieio-persistent-read):
      * emacs-lisp/edebug.el (edebug-outside-excursion):
      * emacs-lisp/debug.el (debugger-make-xrefs):
      * emacs-lisp/cust-print.el (custom-prin1-to-string):
      * emacs-lisp/chart.el (chart-new-buffer):
      * emacs-lisp/authors.el (authors-scan-el, authors-scan-change-log):
      Use with-current-buffer.
      * textmodes/artist.el (artist-system): Don't call
      copy-sequence on a fresh string.
      * progmodes/idlw-shell.el (easymenu setup): Use dolist.
      9a529312
  18. 02 Oct, 2009 1 commit
  19. 30 Aug, 2009 1 commit
  20. 28 Aug, 2009 1 commit
    • Stefan Monnier's avatar
      * textmodes/ispell.el (ispell-check-version, ispell-send-string): · 72f16325
      Stefan Monnier authored
      * international/mule.el (load-with-code-conversion):
      * emacs-lisp/debug.el (debug):
      * ediff-vers.el (ediff-rcs-get-output-buffer):
      * dired.el (dired-internal-noselect): Don't let-bind
      default-major-mode around code that doesn't use it.
      E.g. buffer creation via get-buffer-create doesn't use it.
      72f16325
  21. 22 Jul, 2009 1 commit
  22. 05 Jan, 2009 1 commit
  23. 28 Aug, 2008 1 commit
  24. 21 Jun, 2008 1 commit
  25. 06 May, 2008 1 commit
  26. 18 Apr, 2008 1 commit
  27. 07 Apr, 2008 1 commit
  28. 02 Apr, 2008 1 commit
    • Dan Nicolaescu's avatar
      * emacs-lisp/debug.el (debugger-mode-map): · b2371818
      Dan Nicolaescu authored
      * textmodes/conf-mode.el (conf-mode-map): Add a menu.
      (conf-align-assignments): Only work on the region if it is active.
      (conf-quote-normal): Use when instead of if.  Remove redundant test.
      b2371818
  29. 07 Jan, 2008 1 commit
  30. 10 Oct, 2007 1 commit
  31. 25 Jul, 2007 1 commit
  32. 21 Jan, 2007 1 commit
  33. 20 Mar, 2006 2 commits
  34. 06 Feb, 2006 1 commit
  35. 24 Oct, 2005 1 commit
  36. 24 Sep, 2005 1 commit
    • Romain Francoise's avatar
      2005-09-24 Emilio C. Lopes <eclig@gmx.net> · 5b76833f
      Romain Francoise authored
      	* woman.el (woman-file-name):
      	* wid-edit.el (widget-file-prompt-value)
      	(widget-coding-system-prompt-value):
      	* w32-fns.el (set-w32-system-coding-system):
      	* vc.el (vc-version-diff, vc-annotate):
      	* textmodes/reftex-auc.el (reftex-arg-cite)
      	(reftex-arg-index-tag):
      	* textmodes/refer.el (refer-get-bib-files):
      	* textmodes/artist.el (artist-figlet-choose-font):
      	* terminal.el (terminal-emulator):
      	* replace.el (occur-read-primary-args):
      	* rect.el (string-rectangle, string-insert-rectangle):
      	* ps-print.el (ps-print-preprint):
      	* progmodes/pascal.el (pascal-goto-defun):
      	* progmodes/etags.el (visit-tags-table, visit-tags-table-buffer):
      	* progmodes/compile.el (compilation-find-file):
      	* printing.el (pr-interactive-n-up):
      	* play/animate.el (animate-birthday-present):
      	* net/rcompile.el (remote-compile):
      	* man.el (man, Man-goto-section, Man-follow-manual-reference):
      	* mail/rmailsum.el (rmail-summary-search-backward)
      	(rmail-summary-search):
      	* mail/rmailout.el (rmail-output-read-rmail-file-name)
      	(rmail-output-read-file-name):
      	* mail/rmail.el (rmail-search, rmail-search-backwards):
      	* mail/mailabbrev.el (merge-mail-abbrevs, rebuild-mail-abbrevs):
      	* locate.el (locate):
      	* international/quail.el (quail-show-keyboard-layout):
      	* international/mule.el (set-buffer-file-coding-system)
      	(revert-buffer-with-coding-system, set-file-name-coding-system)
      	(set-terminal-coding-system, set-keyboard-coding-system)
      	(set-next-selection-coding-system):
      	* international/mule-diag.el (describe-coding-system)
      	(describe-font, describe-fontset):
      	* international/mule-cmds.el (universal-coding-system-argument)
      	(search-unencodable-char, describe-input-method)
      	(set-language-environment, describe-language-environment):
      	* international/codepage.el (codepage-setup):
      	* international/code-pages.el (codepage-setup):
      	* info.el (Info-search, Info-follow-reference)
      	(Info-search-backward):
      	* emacs-lisp/advice.el (ad-read-advised-function)
      	(ad-read-advice-class, ad-clear-cache, ad-activate)
      	(ad-deactivate, ad-update, ad-unadvise, ad-read-advice-name)
      	(ad-enable-advice, ad-disable-advice, ad-remove-advice)
      	(ad-read-regexp):
      	* ediff-util.el (ediff-toggle-regexp-match):
      	* ediff-ptch.el (ediff-prompt-for-patch-file):
      	* dired-aux.el (dired-diff):
      	* diff.el (diff):
      	* cus-edit.el (custom-variable-prompt):
      	* calendar/timeclock.el (timeclock-ask-for-project):
      	* calc/calcalg3.el (calc-get-fit-variables):
      	* calc/calc-store.el (calc-edit-variable)
      	(calc-permanent-variable):
      	* vc-mcvs.el (vc-mcvs-register):
      	* shadowfile.el (shadow-define-literal-group):
      	* woman.el (woman-file-name):
      	* vc.el (vc-version-diff, vc-merge):
      	* textmodes/reftex-index.el (reftex-index-complete-tag):
      	* format.el (format-decode-buffer, format-decode-region):
      	* emulation/viper-cmd.el (viper-read-string-with-history):
      	* emacs-lisp/debug.el (cancel-debug-on-entry):
      	* emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
      	* ediff.el (ediff-merge-revisions)
      	(ediff-merge-revisions-with-ancestor, ediff-revision):
      	* completion.el (interactive-completion-string-reader):
      	* calc/calc-prog.el (calc-user-define-formula):
      	Follow convention for reading with the minibuffer.
      5b76833f
  37. 06 Aug, 2005 1 commit