error if pathed fn used where navigator expected
This commit is contained in:
parent
356dd1d03e
commit
ef8039cacc
1 changed files with 11 additions and 3 deletions
|
|
@ -1246,9 +1246,17 @@
|
|||
(instance? VarUse p)
|
||||
(let [v (:var p)
|
||||
vv (:val p)]
|
||||
(cond (-> v meta :dynamic) (magic-fail! "Var " (:sym p) " is dynamic")
|
||||
(valid-navigator? vv) vv
|
||||
:else (magic-fail! "Var " (:sym p) " is not a navigator")
|
||||
(cond (-> v meta :dynamic)
|
||||
(magic-fail! "Var " (:sym p) " is dynamic")
|
||||
|
||||
(and (fn? vv) (-> v meta :pathedfn))
|
||||
(throw-illegal "Cannot use pathed fn '" (:sym p) "' where navigator expected")
|
||||
|
||||
(valid-navigator? vv)
|
||||
vv
|
||||
|
||||
:else
|
||||
(magic-fail! "Var " (:sym p) " is not a navigator")
|
||||
))
|
||||
|
||||
(instance? SpecialFormUse p)
|
||||
|
|
|
|||
Loading…
Reference in a new issue