Jeff Bezanson
Jeff Bezanson
I don't know yet; it certainly shouldn't cause it. It gets weirder: ``` julia> m = @which 1 + false +(x::Number, y::Number) at promotion.jl:167 julia> m.func.code AST(:($(Expr(:lambda, Any[:x,:y], Any[Any[Any[:x,Float64,0],Any[:y,Int64,0]],Any[],Any[],Any[]], :(begin...
Fortunately (on master) those should dispatch exactly the same (or else we'd now consider it a bug). However, @mkborregaard is right that this transformation is only safe if `F` is...
Yes, I think it still affects specialization, but the cases where that's needed should be very rare. We can deal with those cases individually as they arise. I might even...
That's correct; `isequal` is a "programmatic" kind of equality, that asks whether a typical piece of code would behave the same given one value or the other.
This is not so natural to implement in julia, since the expression `y` is not lexically inside the block with `y=f(x)`, either in the source code or in what we...
> This assertion seems odd: Yeah I don't see why we would need that. Adding threads after startup makes that assertion straightforwardly untrue.
I don't get the assertion error running the ccall test, but instead I get ``` LoadError: TypeError: in ccall argument 1, expected Int32, got a value of type Int32 Stacktrace:...
OK the Int32 thing is just due to the IR verifier not handling `cglobal`, but with GC_VERIFY I get ``` JULIA usr/lib/julia/corecompiler.ji [551] signal (11): Segmentation fault in expression starting...
Ok, never mind, that has been happening for a long time at least since 1.7... Looks like MEMFENCE is broken.
@vtjnash Please re-review `jl_atexit_hook` --- I'm not sure what the scope of the gc unsafe region should be. It was a bit oddly nested before.