aboutsummaryrefslogtreecommitdiff
path: root/src/propspec.lisp
diff options
context:
space:
mode:
Diffstat (limited to 'src/propspec.lisp')
-rw-r--r--src/propspec.lisp17
1 files changed, 8 insertions, 9 deletions
diff --git a/src/propspec.lisp b/src/propspec.lisp
index 13204d9..0c395dd 100644
--- a/src/propspec.lisp
+++ b/src/propspec.lisp
@@ -250,17 +250,16 @@ processed."
(defmacro props (combinator &rest forms)
"Apply variadic COMBINATOR to FORMS and convert from an unevaluated property
-application specification expression to a property application specification."
+application specification expression to a property application specification
+expression."
(flet ((evaluate (propapp)
`(list ',(car propapp) ,@(cdr propapp))))
- (let ((propspec
- (handler-case
- (map-propspec-propapps #'evaluate (cons combinator forms) t)
- (ambiguous-propspec (c)
- ;; resignal with a more specific error message
- (error 'ambiguous-unevaluated-propspec
- :name (cell-error-name c))))))
- `(make-propspec :propspec ,propspec))))
+ (handler-case
+ (map-propspec-propapps #'evaluate (cons combinator forms) t)
+ (ambiguous-propspec (c)
+ ;; resignal with a more specific error message
+ (error 'ambiguous-unevaluated-propspec
+ :name (cell-error-name c))))))
;;;; Property combinators