Share your thoughts in the 2021 Clojure Community Survey!

Welcome! Please see the About page for a little more info on how this works.

0 votes
in ClojureScript by
Like CLJ-2463, but for ClojureScript.

Repro using {{950032dba300451835c4c7c2a0c1c74ca6d0b49a}}, which is master as of January 25, 2019 is below.

It should ideally just print a short error message like you see in the REPL


cljs.user=> :::a
Syntax error reading source at (REPL:1).
<NO_SOURCE_FILE> [line 1, col 5] Invalid keyword: :::a.


Repro:


clj -Sdeps '{:deps {org.clojure/clojurescript {:git/url "https://github.com/clojure/clojurescript" :sha "950032dba300451835c4c7c2a0c1c74ca6d0b49a"}}}' -m cljs.main -e :::a
Exception in thread "main" clojure.lang.ExceptionInfo: [line 1, col 5] Invalid keyword: :::a. {:type :reader-exception, :ex-kind :reader-error, :file nil, :line 1, :col 5}
    at clojure.tools.reader.impl.errors$throw_ex.invokeStatic(errors.clj:34)
    at clojure.tools.reader.impl.errors$throw_ex.doInvoke(errors.clj:24)
    at clojure.lang.RestFn.invoke(RestFn.java:442)
    at clojure.tools.reader.impl.errors$reader_error.invokeStatic(errors.clj:40)
    at clojure.tools.reader.impl.errors$reader_error.doInvoke(errors.clj:36)
    at clojure.lang.RestFn.invoke(RestFn.java:516)
    at clojure.tools.reader.impl.errors$throw_invalid.invokeStatic(errors.clj:97)
    at clojure.tools.reader.impl.errors$throw_invalid.invoke(errors.clj:96)
    at clojure.tools.reader$read_keyword.invokeStatic(reader.clj:360)
    at clojure.tools.reader$read_keyword.invoke(reader.clj:343)
    at clojure.tools.reader$read_STAR_.invokeStatic(reader.clj:924)
    at clojure.tools.reader$read_STAR_.invoke(reader.clj:906)
    at clojure.tools.reader$read.invokeStatic(reader.clj:977)
    at clojure.tools.reader$read.invoke(reader.clj:950)
    at cljs.analyzer$forms_seq_STAR_$forms_seq___3646$fn__3647$fn__3648.invoke(analyzer.cljc:4189)
    at cljs.analyzer$forms_seq_STAR_$forms_seq___3646$fn__3647.invoke(analyzer.cljc:4182)
    at clojure.lang.LazySeq.sval(LazySeq.java:42)
    at clojure.lang.LazySeq.seq(LazySeq.java:51)
    at clojure.lang.RT.seq(RT.java:531)
    at clojure.core$seq__5387.invokeStatic(core.clj:137)
    at clojure.core$seq__5387.invoke(core.clj:137)
    at cljs.repl$run_inits$fn__9013.invoke(repl.cljc:1009)
    at cljs.repl$run_inits.invokeStatic(repl.cljc:1008)
    at cljs.repl$run_inits.invoke(repl.cljc:1001)
    at cljs.cli$default_main$fn__9420.invoke(cli.clj:368)
    at cljs.compiler$with_core_cljs.invokeStatic(compiler.cljc:1417)
    at cljs.compiler$with_core_cljs.invoke(compiler.cljc:1406)
    at cljs.compiler.api$with_core_cljs.invokeStatic(api.clj:50)
    at cljs.compiler.api$with_core_cljs.invoke(api.clj:34)
    at cljs.compiler.api$with_core_cljs.invokeStatic(api.clj:42)
    at cljs.compiler.api$with_core_cljs.invoke(api.clj:34)
    at cljs.cli$default_main.invokeStatic(cli.clj:353)
    at cljs.cli$default_main.invoke(cli.clj:326)
    at cljs.cli$null_opt.invokeStatic(cli.clj:424)
    at cljs.cli$null_opt.invoke(cli.clj:421)
    at cljs.cli$main.invokeStatic(cli.clj:648)
    at cljs.cli$main.doInvoke(cli.clj:637)
    at clojure.lang.RestFn.applyTo(RestFn.java:139)
    at clojure.core$apply.invokeStatic(core.clj:667)
    at clojure.core$apply.invoke(core.clj:660)
    at cljs.main$_main.invokeStatic(main.clj:61)
    at cljs.main$_main.doInvoke(main.clj:52)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.lang.Var.applyTo(Var.java:705)
    at clojure.core$apply.invokeStatic(core.clj:665)
    at clojure.main$main_opt.invokeStatic(main.clj:491)
    at clojure.main$main_opt.invoke(main.clj:487)
    at clojure.main$main.invokeStatic(main.clj:598)
    at clojure.main$main.doInvoke(main.clj:561)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.lang.Var.applyTo(Var.java:705)
    at clojure.main.main(main.java:37)

1 Answer

0 votes
by
Reference: https://clojure.atlassian.net/browse/CLJS-3044 (reported by mfikes)
...