Thank you, loading all the modules up-front solved the problem. I'm 
surprised that the compiler can make false assumptions about types without 
triggering segfaults left and right.

On Sunday, September 18, 2016 at 6:51:22 PM UTC-4, Yichao Yu wrote:
>
> On Sun, Sep 18, 2016 at 6:29 PM, Cedric St-Jean <cedric...@gmail.com 
> <javascript:>> wrote: 
> > I just updated my codebase to 0.5, and encountered a strange bug. I have 
> two 
> > tests, test 1 and 2, both wrapped in their own modules so as not to 
> > interact. Both tests run fine from a fresh Julia session, but running 
> test 1 
> > before test 2 yields "TypeError: non-boolean (Bool) used in boolean 
> > context". Normally, the type in () is something like `Int64`, or 
> `String`; 
> > Bool is non-sensical.... The error happens on an `if` inside a function, 
> and 
> > printing thus: 
> > 
> > @show is_eoe 
> > @show isa(is_eoe, Bool) 
> > if is_eoe 
> > ... 
> > 
> > returns 
> > 
> > is_eoe = false 
> > isa(is_eoe,Bool) = true 
> > 
> > 
> > Is that a known issue? The codebase is unfortunately on the large side, 
> and 
> > trimming it down will take a while. It's not the test 1 
> definitions/imports 
> > that cause the problems; it's running code. Presumably it compiles 
> something 
> > wrong, and that corrupts test 2, somehow? 
>
> https://github.com/JuliaLang/julia/issues/18313 
>
> > 
> > C├ędric 
>

Reply via email to