Skip to content
Snippets Groups Projects
  1. Nov 07, 2005
    • rtoy's avatar
      DESTRUCTURING-BIND is confused sometimes if a circular list is · 552ef19e
      rtoy authored
      given.  We now compute the length more carefully, only checking if to
      see that the list has the desired minumum and maximum (if applicable)
      length.
      
      This bug was found with ironclad 0.10.
      
      (Remove DOTTED-LIST-LENGTH later.  We need it now to make
      bootstrapping easier.  I'm lazy.)
      552ef19e
  2. Jul 12, 2005
  3. Jul 16, 2004
  4. Jul 16, 2003
  5. Jul 15, 2003
  6. Jun 01, 2003
  7. May 04, 2003
  8. May 03, 2003
  9. Apr 19, 2003
    • gerd's avatar
      Add destructuring support to &REST, &BODY, &WHOLE. Detected · 1ca1159c
      gerd authored
      	by Paul Dietz' ANSI tests.
      
      	* src/code/defmacro.lisp (parse-defmacro-lambda-list): Add
      	&parse-body, replacing &body (<body> <decls> <doc>).  Add
      	destructuring support to &rest, &body, &whole.
      
      	* src/code/eval.lisp (lambda-list-keywords): Add &parse-body.
      
      	* src/code/exports.lisp ("EXTENSIONS"): Export &parse-body.
      
      	* src/hemlock/table.lisp (do-words, with-folded-string):
      	* src/hemlock/macros.lisp (with-pop-up-display):
      	* src/compiler/macros.lisp (deftransform):
      	* src/compiler/ir1tran.lisp (symbol-macrolet, let, locally)
      	(let*, flet, labels) <ir1-translator>:
      	* src/code/package.lisp (do-symbols, do-external-symbols)
      	(do-all-symbols):
      	* src/code/macros.lisp (defun, prog, prog*, with-open-file)
      	(with-open-stream, with-input-from-string)
      	(with-output-to-string, do, do*):
      	* src/code/mach.lisp (gr-bind):
      	* src/code/extensions.lisp (do-anonymous, do-hash, defun-cached):
      	Use &parse-body instead of &body.
      1ca1159c
  10. Feb 24, 2003
    • emarsden's avatar
      Improve error checking of defmacro lambda-lists. Checking for compatible · fe5959bd
      emarsden authored
      number of arguments was being disabled in the presence of a dotted
      lambda-list or when a &rest keyword is present. Change this so that the
      test is only disabled for dotted lambda-lists. This modification fixes
      a number of bugs in source-transforms used by the compiler, since the
      macro lambda-list parsing code is used to determine whether a given
      source-transform can be applied to the form being compiled. When
      source-transforms were defined for functions with &rest parameters, the
      macro-lambda-list checking was not signalling an error when an inappropriate
      number of arguments were present in the form being compiled. This resulted
      in inappropriate use of the source-transform.
      
      This change reveals a problem in the gray-stream class definitions (now
      fixed).
      fe5959bd
  11. Nov 02, 2002
  12. Aug 23, 2002
  13. Jul 30, 2002
  14. Jan 18, 1997
  15. May 08, 1996
  16. Oct 31, 1994
  17. Feb 11, 1994
  18. Feb 04, 1994
  19. Aug 30, 1993
  20. Aug 19, 1993
  21. May 17, 1993
  22. Jan 13, 1993
  23. Aug 12, 1992
  24. Feb 08, 1991
  25. Jan 13, 1991
  26. Dec 12, 1990
  27. Dec 11, 1990
  28. Nov 21, 1990
  29. Nov 20, 1990
    • wlott's avatar
      Added a :error-fun keyword to parse-defmacro. If it is supplied, it gets · 954a62fc
      wlott authored
      passed down to the arg count checker and keyword checker.  The arg count
      checker and keyword checker funcall this error function, instead of just
      calling error directly.  This allows people to use parse-defmacro to build
      destructuring things that throw instead of signaling errors.
      954a62fc
  30. Nov 18, 1990
  31. May 30, 1990
  32. Apr 11, 1990
  33. Mar 05, 1990
  34. Feb 06, 1990
Loading