What version of clojure.tools.logging are you using? > On 30 Dec 2017, at 02:05, Luc <lprefonta...@softaddicts.ca> wrote: > > I went through the compiler code, it has to do with a bad local binding > expression. > > It crashes in the same way in the REPL with this minimal defrecord: > > (defrecord NoopJob [name job-controller-channel env job-state parameters > job-output] > impl/GatewayJob > (start-job! [this] > (log/error "NoopJob job died unexpectedly !"))) > > No try catch, no core.async, ... > So there's something going on in log/error macro expansion versus the > defrecord expansion. > > I attached two files, the macro expansions of defrecord and the log/error > macro. > > Alex if you prefer I can open a ticket. If nothing obvious comes out that's > were it will end up anyway. > I'll toy with the combined macro expanded code this weekend to see if I can > narrow this a bit more. > > I have been using the same logging API for years now (since 2009). I really > want to know what's broken. > I have two dozen projects to upgrade to 1.9 :) It's bizarre at best. > > Thank you, > Luc P. > >> On Saturday, 30 December 2017 00:17:47 UTC, Luc wrote: >> Hi Alex, >> >> here it is, I did not get through the compiler source code yet, it might be >> obvious to you: >> >> java.lang.UnsupportedOperationException: Can't type hint a primitive local, >> compiling:(yabug/jobs/noop.clj:21:9) >> Exception in thread "main" java.lang.UnsupportedOperationException: Can't >> type hint a primitive local, compiling:(yabug/jobs/noop.clj:21:9) >> at clojure.lang.Compiler.analyze(Compiler.java:6792) >> at clojure.lang.Compiler.analyze(Compiler.java:6729) >> at clojure.lang.Compiler$VectorExpr.parse(Compiler.java:3253) >> at clojure.lang.Compiler.analyze(Compiler.java:6775) >> at clojure.lang.Compiler.analyze(Compiler.java:6729) >> at clojure.lang.Compiler$InvokeExpr.parse(Compiler.java:3881) >> at clojure.lang.Compiler.analyzeSeq(Compiler.java:7005) >> at clojure.lang.Compiler.analyze(Compiler.java:6773) >> at clojure.lang.Compiler.analyzeSeq(Compiler.java:6991) >> at clojure.lang.Compiler.analyze(Compiler.java:6773) >> at clojure.lang.Compiler.analyze(Compiler.java:6729) >> at clojure.lang.Compiler$InvokeExpr.parse(Compiler.java:3881) >> at clojure.lang.Compiler.analyzeSeq(Compiler.java:7005) >> at clojure.lang.Compiler.analyze(Compiler.java:6773) >> at clojure.lang.Compiler.analyzeSeq(Compiler.java:6991) >> at clojure.lang.Compiler.analyze(Compiler.java:6773) >> at clojure.lang.Compiler.analyze(Compiler.java:6729) >> at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:6100) >> at clojure.lang.Compiler$TryExpr$Parser.parse(Compiler.java:2334) >> at clojure.lang.Compiler.analyzeSeq(Compiler.java:7003) >> at clojure.lang.Compiler.analyze(Compiler.java:6773) >> at clojure.lang.Compiler.analyze(Compiler.java:6729) >> at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:6100) >> at clojure.lang.Compiler$NewInstanceMethod.parse(Compiler.java:8431) >> at clojure.lang.Compiler$NewInstanceExpr.build(Compiler.java:7937) >> at >> clojure.lang.Compiler$NewInstanceExpr$DeftypeParser.parse(Compiler.java:7813) >> at clojure.lang.Compiler.analyzeSeq(Compiler.java:7003) >> at clojure.lang.Compiler.analyze(Compiler.java:6773) >> at clojure.lang.Compiler.analyze(Compiler.java:6729) >> at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:6100) >> at clojure.lang.Compiler$LetExpr$Parser.parse(Compiler.java:6420) >> at clojure.lang.Compiler.analyzeSeq(Compiler.java:7003) >> at clojure.lang.Compiler.analyze(Compiler.java:6773) >> at clojure.lang.Compiler.analyze(Compiler.java:6729) >> at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:6100) >> at clojure.lang.Compiler$FnMethod.parse(Compiler.java:5460) >> at clojure.lang.Compiler$FnExpr.parse(Compiler.java:4022) >> at clojure.lang.Compiler.analyzeSeq(Compiler.java:7001) >> at clojure.lang.Compiler.analyze(Compiler.java:6773) >> at clojure.lang.Compiler.analyze(Compiler.java:6729) >> at clojure.lang.Compiler$InvokeExpr.parse(Compiler.java:3813) >> at clojure.lang.Compiler.analyzeSeq(Compiler.java:7005) >> at clojure.lang.Compiler.analyze(Compiler.java:6773) >> at clojure.lang.Compiler.analyze(Compiler.java:6729) >> at clojure.lang.Compiler$LetExpr$Parser.parse(Compiler.java:6330) >> at clojure.lang.Compiler.analyzeSeq(Compiler.java:7003) >> at clojure.lang.Compiler.analyze(Compiler.java:6773) >> at clojure.lang.Compiler.analyze(Compiler.java:6729) >> at clojure.lang.Compiler.compile1(Compiler.java:7604) >> at clojure.lang.Compiler.compile(Compiler.java:7676) >> at clojure.lang.RT.compile(RT.java:413) >> at clojure.lang.RT.load(RT.java:458) >> at clojure.lang.RT.load(RT.java:426) >> at clojure.core$load$fn__6548.invoke(core.clj:6046) >> at clojure.core$load.invokeStatic(core.clj:6045) >> at clojure.core$load.doInvoke(core.clj:6029) >> at clojure.lang.RestFn.invoke(RestFn.java:408) >> at clojure.core$load_one.invokeStatic(core.clj:5848) >> at clojure.core$compile$fn__6553.invoke(core.clj:6056) >> at clojure.core$compile.invokeStatic(core.clj:6056) >> at clojure.core$compile.invoke(core.clj:6048) >> at user$eval164$fn__173.invoke(form-init6735162608711470447.clj:1) >> at user$eval164.invokeStatic(form-init6735162608711470447.clj:1) >> at user$eval164.invoke(form-init6735162608711470447.clj:1) >> at clojure.lang.Compiler.eval(Compiler.java:7062) >> at clojure.lang.Compiler.eval(Compiler.java:7052) >> at clojure.lang.Compiler.eval(Compiler.java:7052) >> at clojure.lang.Compiler.load(Compiler.java:7514) >> at clojure.lang.Compiler.loadFile(Compiler.java:7452) >> at clojure.main$load_script.invokeStatic(main.clj:278) >> at clojure.main$init_opt.invokeStatic(main.clj:280) >> at clojure.main$init_opt.invoke(main.clj:280) >> at clojure.main$initialize.invokeStatic(main.clj:311) >> at clojure.main$null_opt.invokeStatic(main.clj:345) >> at clojure.main$null_opt.invoke(main.clj:342) >> at clojure.main$main.invokeStatic(main.clj:424) >> at clojure.main$main.doInvoke(main.clj:387) >> at clojure.lang.RestFn.applyTo(RestFn.java:137) >> at clojure.lang.Var.applyTo(Var.java:702) >> at clojure.main.main(main.java:37) >> Caused by: java.lang.UnsupportedOperationException: Can't type hint a >> primitive local >> at clojure.lang.Compiler$LocalBindingExpr.<init>(Compiler.java:5999) >> at clojure.lang.Compiler.analyzeSymbol(Compiler.java:7183) >> at clojure.lang.Compiler.analyze(Compiler.java:6752) >> >> Will get this up and running this weekend to see if it can be reproduced at >> runtime and post the result here. >> I need to revive some setups, it's a project that had been put on ice for a >> while. >> >> Thank you, Happy New Year, >> Luc >> >>> On Friday, 29 December 2017 01:02:51 UTC, Alex Miller wrote: >>> What’s the full stack trace on the original exception? (Or if same repros >>> without aot)? > > -- > You received this message because you are subscribed to the Google > Groups "Clojure" group. > To post to this group, send email to clojure@googlegroups.com > Note that posts from new members are moderated - please be patient with your > first post. > To unsubscribe from this group, send email to > clojure+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/clojure?hl=en > --- > You received this message because you are subscribed to the Google Groups > "Clojure" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to clojure+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > <defrecord-macroexpand.txt> > <log-macroexpand.txt>
-- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.