From 2862fc611dab925efddcb502945027f8661df0e5 Mon Sep 17 00:00:00 2001 From: Daniel Kochmanski Date: Tue, 13 Feb 2018 12:44:52 +0100 Subject: [PATCH] Add regression tests for non-lambda exprs and (setf fun) names --- src/tests/normal-tests/compiler.lsp | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/tests/normal-tests/compiler.lsp b/src/tests/normal-tests/compiler.lsp index 83247e23d..36b0f9d17 100644 --- a/src/tests/normal-tests/compiler.lsp +++ b/src/tests/normal-tests/compiler.lsp @@ -1401,3 +1401,31 @@ (flet ((a () b)) #'a)))) (is (null (nth-value 1 (function-lambda-expression fun-1)))) (is (nth-value 1 (function-lambda-expression fun-2))))) + +;;; Date 2018-02-13 +;;; Description +;;; +;;; ext::bc-compile executed compiled form. +(test cmp.0067.bytecodes-compile-exec + (multiple-value-bind (fun warn err) + (ext::bc-compile nil '(flet ((a () 3)) #'a)) + (is (and (null fun) warn err) + "bc-compile: invalid lambda expression should signal error."))) + +;;; Date 2018-02-13 +;;; Description +;;; +;;; compile / ext::bc-compile doesn't accept (setf foo). +(ext:with-clean-symbols (foo bar) + (test cmp.0068.bytecmp-setf-foo + (defun (setf foo) (x) x) + (multiple-value-bind (fun warn err) + (ext::bc-compile '(setf foo)) + (is (and fun (null warn) (null err)) + "bc-compile: (setf foo) is a valid function name."))) + (test cmp.0069.cmp-setf-foo + (defun (setf foo) (x) x) + (multiple-value-bind (fun warn err) + (compile '(setf foo)) + (is (and fun (null warn) (null err)) + "compile: (setf foo) is a valid function name."))))