comparison tests/automated/lisp-tests.el @ 4742:4cf435fcebbc

Make #'letf not error if handed a #'values form. lisp/ChangeLog addition: 2009-11-14 Aidan Kehoe <kehoea@parhasard.net> * cl-macs.el (letf): Check whether arguments to #'values are bound, and make them unbound after evaluating BODY; document the limitations of this macro. tests/ChangeLog addition: 2009-11-14 Aidan Kehoe <kehoea@parhasard.net> * automated/lisp-tests.el: Don't call Known-Bug-Expect-Failure now that the particular letf bug it tickled is fixed.
author Aidan Kehoe <kehoea@parhasard.net>
date Sat, 14 Nov 2009 11:43:09 +0000
parents 2491a837112c
children 95b04754ea8c
comparison
equal deleted inserted replaced
4741:e14f9fdd5096 4742:4cf435fcebbc
2077 (null (or)) 2077 (null (or))
2078 "Checking #'or behaves correctly with zero arguments.") 2078 "Checking #'or behaves correctly with zero arguments.")
2079 (Assert 2079 (Assert
2080 (eq t (and)) 2080 (eq t (and))
2081 "Checking #'and behaves correctly with zero arguments.") 2081 "Checking #'and behaves correctly with zero arguments.")
2082 ;; This bug was here before the full multiple-value functionality 2082 (Assert
2083 ;; was introduced (check it with (floor* pi) if you're 2083 (= (* 3.0 (- pi 3.0))
2084 ;; curious). #'setf works, though, which is what most people are 2084 (letf (((values three one-four-one-five-nine) (floor pi)))
2085 ;; interested in. If you know the setf-method code better than I do, 2085 (* three one-four-one-five-nine)))
2086 ;; please post a patch; otherwise this is going to the back of the 2086 "checking letf handles #'values in a basic sense"))
2087 ;; queue of things to do. I didn't break it :-) Aidan Kehoe, Mon Aug
2088 ;; 31 10:45:50 GMTDT 2009.
2089 (Known-Bug-Expect-Error
2090 void-variable
2091 (letf (((values three one-four-one-five-nine) (floor pi)))
2092 (* three one-four-one-five-nine))))
2093 2087
2094 (Assert (equalp "hi there" "Hi There") 2088 (Assert (equalp "hi there" "Hi There")
2095 "checking equalp isn't case-sensitive") 2089 "checking equalp isn't case-sensitive")
2096 (Assert (equalp 99 99.0) 2090 (Assert (equalp 99 99.0)
2097 "checking equalp compares numerical values of different types") 2091 "checking equalp compares numerical values of different types")