X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Fcompiler.impure.lisp;h=e28b65628d0d452bd103114a2407d47a21d4a2ed;hb=d3df7e8508d37a831ecf06a2c42ddb6ede1d99fa;hp=ec57c835676df50ea77dad4a0b00bcd7f8819a82;hpb=e5ad09f34fdfc6626d533c38527a980a763bb43d;p=sbcl.git diff --git a/tests/compiler.impure.lisp b/tests/compiler.impure.lisp index ec57c83..e28b656 100644 --- a/tests/compiler.impure.lisp +++ b/tests/compiler.impure.lisp @@ -4,6 +4,17 @@ ;;;; settings). Similar tests which *do* expect special settings may ;;;; be in files compiler-1.impure.lisp, compiler-2.impure.lisp, etc. +;;;; This software is part of the SBCL system. See the README file for +;;;; more information. +;;;; +;;;; While most of SBCL is derived from the CMU CL system, the test +;;;; files (like this one) were written from scratch after the fork +;;;; from CMU CL. +;;;; +;;;; This software is in the public domain and is provided with +;;;; absolutely no warranty. See the COPYING and CREDITS files for +;;;; more information. + (cl:in-package :cl-user) (load "assertoid.lisp") @@ -16,5 +27,17 @@ (cons x y)) (assert (equal (cons 1 2) (newfangled-cons 'right-thing 2 'left-thing 1))) +;;; ANSI specifically says that duplicate keys are OK in lambda lists, +;;; with no special exception for macro lambda lists. (As reported by +;;; Pierre Mai on cmucl-imp 2001-03-30, Python didn't think so. The +;;; rest of the thread had some entertainment value, at least for me +;;; (WHN). The unbelievers were besmote and now even CMU CL will +;;; conform to the spec in this regard. Who needs diplomacy when you +;;; have brimstone?:-) +(defmacro ayup-duplicate-keys-are-ok-i-see-the-lite (&key k) + k) +(assert (equal (ayup-duplicate-keys-are-ok-i-see-the-lite :k 112) 112)) +(assert (equal (ayup-duplicate-keys-are-ok-i-see-the-lite :k 'x :k 'y) 'x)) + ;;; success (quit :unix-status 104)