1. 14 May, 2011 1 commit
  2. 12 May, 2011 2 commits
  3. 06 May, 2011 1 commit
  4. 05 May, 2011 2 commits
  5. 03 May, 2011 3 commits
  6. 01 May, 2011 1 commit
  7. 13 Apr, 2011 1 commit
  8. 10 Apr, 2011 1 commit
  9. 06 Apr, 2011 1 commit
  10. 28 Mar, 2011 1 commit
    • Stefan Monnier's avatar
      Don't reset post-command-hook to nil upon error. · f6d62986
      Stefan Monnier authored
      * src/eval.c (enum run_hooks_condition): Remove.
      (funcall_nil, funcall_not): New functions.
      (run_hook_with_args): Call each function through a `funcall' argument.
      Remove `cond' argument, now redundant.
      (Frun_hooks, Frun_hook_with_args, Frun_hook_with_args_until_success)
      (Frun_hook_with_args_until_failure): Adjust accordingly.
      (run_hook_wrapped_funcall, Frun_hook_wrapped): New functions.
      * src/keyboard.c (safe_run_hook_funcall): New function.
      (safe_run_hooks_1, safe_run_hooks_error, safe_run_hooks): On error,
      don't set the hook to nil, but remove the offending function instead.
      (Qcommand_hook_internal): Remove, unused.
      (syms_of_keyboard): Don't initialize Qcommand_hook_internal nor define
      Vcommand_hook_internal.
      * doc/lispref/commands.texi (Command Overview): post-command-hook is not reset
      to nil any more.
      f6d62986
  11. 21 Mar, 2011 2 commits
  12. 19 Mar, 2011 1 commit
  13. 16 Mar, 2011 1 commit
  14. 11 Mar, 2011 1 commit
    • Stefan Monnier's avatar
      Misc fixes, and use lexical-binding in more files. · ba83908c
      Stefan Monnier authored
      * lisp/subr.el (letrec): New macro.
      (with-wrapper-hook): Move from lisp/simple.el and don't use CL.
      * simple.el (with-wrapper-hook): Move with-wrapper-hook to subr.el.
      * lisp/help-fns.el (help-function-arglist): Handle subroutines as well.
      (describe-variable): Use special-variable-p to filter completions.
      * lisp/emacs-lisp/macroexp.el (macroexpand-all-1): Don't expand `declare'
      in defmacros.
      * lisp/emacs-lisp/cconv.el (cconv-convert, cconv-analyse-form):
      Handle `declare'.
      * lisp/emacs-lisp/cl.el (pushnew): Silence unfixable warning.
      * lisp/emacs-lisp/cl-macs.el (defstruct, define-compiler-macro):
      Mark unused arg as unused.
      * lisp/emacs-lisp/byte-opt.el (byte-optimize-lapcode): Use memq.
      * lisp/emacs-lisp/autoload.el (make-autoload): Don't assume the macro's
      first sexp is a list.
      (autoload-generate-file-autoloads): Improve error message.
      * lisp/emacs-lisp/advice.el (ad-arglist): Use help-function-arglist
      to understand the new byte-code arg format.
      * lisp/vc/smerge-mode.el:
      * lisp/vc/log-view.el:
      * lisp/vc/log-edit.el:
      * lisp/vc/cvs-status.el:
      * lisp/uniquify.el:
      * lisp/textmodes/css-mode.el:
      * lisp/textmodes/bibtex-style.el:
      * lisp/reveal.el:
      * lisp/newcomment.el:
      * lisp/emacs-lisp/smie.el:
      * lisp/abbrev.el: Use lexical-binding.
      * src/eval.c (Fprog1, Fprog2): Simplify and use XCDR/XCAR.
      (Fdefvar): Remove redundant SYMBOLP check.
      (Ffunctionp): Don't signal an error for undefined aliases.
      * doc/lispref/variables.texi (Converting to Lexical Binding): New node.
      ba83908c
  15. 10 Mar, 2011 2 commits
    • Eli Zaretskii's avatar
      Fix non-ASCII characters in User and ELisp manuals. · 62d94509
      Eli Zaretskii authored
       doc/lispref/modes.texi (Operator Precedence Grammars): Don't use characters
       outside ISO-8859-1.
       doc/emacs/search.texi (Regexp Example):
       doc/emacs/mule.texi (International Chars):
       doc/emacs/building.texi (External Lisp): Don't use characters outside
       ISO-8859-1.
      62d94509
    • Stefan Monnier's avatar
      Rewrite the cconv conversion algorithm, for clarity. · 6c075cd7
      Stefan Monnier authored
      * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand): Adjust check for
      new byte-code representation.
      * lisp/emacs-lisp/cconv.el (cconv--convert-function): Rename from
      cconv-closure-convert-function.
      (cconv-convert): Rename from cconv-closure-convert-rec.
      (cconv--analyse-use): Rename from cconv-analyse-use.
      (cconv--analyse-function): Rename from cconv-analyse-function.
      (cconv--analyse-use): Change some patterns to silence compiler.
      (cconv-convert, cconv--convert-function): Rewrite.
      * test/automated/lexbind-tests.el: New file.
      6c075cd7
  16. 09 Mar, 2011 1 commit
    • Eli Zaretskii's avatar
      Allow building manuals with Texinfo before v4.12. · 63a329f8
      Eli Zaretskii authored
       doc/lispref/intro.texi (Acknowledgements): Convert to ISO-8859-1 encoding.
       doc/lispref/makefile.w32-in (MAKEINFO_OPTS): Add --enable-encoding.
       doc/lispref/elisp.texi: Use ISO-8859-1 in @documentencoding.
       doc/emacs/ack.texi (Acknowledgments): Convert to ISO-8859-1 encoding.  Use
       Texinfo @-commands for non Latin-1 characters.
       doc/emacs/emacs.texi: Use ISO-8859-1 in @documentencoding.
       doc/emacs/makefile.w32-in (MAKEINFO_OPTS): Add --enable-encoding.
      63a329f8
  17. 08 Mar, 2011 2 commits
  18. 07 Mar, 2011 1 commit
  19. 06 Mar, 2011 4 commits
  20. 05 Mar, 2011 1 commit
  21. 03 Mar, 2011 1 commit
  22. 01 Mar, 2011 3 commits
    • Stefan Monnier's avatar
      * doc/lispref/variables.texi (Scope): Mention the availability of lexbind. · d032d5e7
      Stefan Monnier authored
      (Lexical Binding): New node.
      * doc/lispref/eval.texi (Eval): Add `eval's new `lexical' arg.
      * lisp/emacs-lisp/cconv.el (cconv-liftwhen): Increase threshold.
      (cconv-closure-convert-rec): Convert interactive spec in empty lexenv.
      (cconv-analyse-use): Improve unused vars warnings.
      (cconv-analyse-form): Analyze interactive spec in empty lexenv.
      * lisp/emacs-lisp/bytecomp.el (byte-compile-lambda): Always byte-compile
      the interactive spec in lexical-binding mode.
      (byte-compile-refresh-preloaded): Don't reload byte-compiler files.
      * lisp/custom.el (custom-initialize-default): Use defvar.
      (custom-declare-variable): Set the special-variable-p flag.
      * lisp/help-fns.el (help-make-usage): Drop leading underscores.
      * lisp/dired.el (dired-revert, dired-make-relative): Mark unused args.
      (dired-unmark-all-files): Remove unused var `query'.
      (dired-overwrite-confirmed): Declare.
      (dired-restore-desktop-buffer): Don't use dynamically scoped arg names.
      * lisp/mpc.el: Mark unused args.
      (mpc--faster-toggle): Remove unused var `songnb'.
      * lisp/server.el (server-kill-buffer-running): Move before first use.
      * lisp/minibuffer.el: Mark unused args.
      * src/callint.c (quotify_arg): Simplify the logic.
      (Fcall_interactively): Use lexical binding when evaluating the
      interactive spec of a lexically bound function.
      d032d5e7
    • Chong Yidong's avatar
      Release logs for 23.3 release. · 22770c84
      Chong Yidong authored
      Regenerate configure and other release files.
      22770c84
    • Glenn Morris's avatar
      Add the ability to exclude dir-locals from subdirs. (Bug#8100) · 6640b281
      Glenn Morris authored
      * lisp/files.el (dir-locals-collect-variables):
      Add the ability to exclude subdirectories.
      
      * doc/emacs/custom.texi (Directory Variables):
      Give an example of excluding subdirectories.
      
      * doc/lispref/variables.texi (Directory Local Variables):
      Mention `(subdirs . nil)' alist element.
      
      * etc/NEWS: Mention this addition.
      
      * lisp/dired-x.el (dired-omit-here-always): Add `(subdirs . nil)' to locals.
      6640b281
  23. 27 Feb, 2011 1 commit
  24. 25 Feb, 2011 2 commits
    • Glenn Morris's avatar
      Doc fix for bug#3577. · 081f7640
      Glenn Morris authored
      * doc/lispref/variables.texi (Directory Local Variables):
      Mention the optional mtime argument of dir-locals-set-directory-class.
      081f7640
    • 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
  25. 18 Feb, 2011 3 commits