File tree Expand file tree Collapse file tree 1 file changed +11
-11
lines changed Expand file tree Collapse file tree 1 file changed +11
-11
lines changed Original file line number Diff line number Diff line change 2185
2185
2186
2186
(defn parse-invoke*
2187
2187
[env [f & args :as form]]
2188
- (let [enve (assoc env :context :expr )
2189
- fexpr (analyze enve f)
2190
- argc (count args)
2191
- ^boolean fn-var? (-> fexpr :info :fn-var )
2192
- kw? (= 'cljs.core/Keyword (:tag fexpr))]
2193
- (when ( or fn-var? kw?)
2188
+ (let [enve (assoc env :context :expr )
2189
+ fexpr (analyze enve f)
2190
+ argc (count args)
2191
+ fn-var? (-> fexpr :info :fn-var )
2192
+ kw? (= 'cljs.core/Keyword (:tag fexpr))]
2193
+ (when ^boolean fn-var?
2194
2194
(let [{:keys [^boolean variadic max-fixed-arity method-params name]} (:info fexpr)]
2195
- (when (or (and kw? (zero? argc))
2196
- (and (not kw?)
2197
- (not (valid-arity? argc method-params))
2198
- (or (not variadic)
2199
- (and variadic (< argc max-fixed-arity)))))
2195
+ (when (and (not (valid-arity? argc method-params))
2196
+ (or (not variadic)
2197
+ (and variadic (< argc max-fixed-arity))))
2200
2198
(warning :fn-arity env {:name name :argc argc}))))
2199
+ (when (and kw? (not (or (== 1 argc) (== 2 argc))))
2200
+ (warning :fn-arity env {:name (first form) :argc argc}))
2201
2201
(let [deprecated? (-> fexpr :info :deprecated )
2202
2202
no-warn? (-> form meta :deprecation-nowarn )]
2203
2203
(when (and (boolean deprecated?)
You can’t perform that action at this time.
0 commit comments