-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Callsite @inline
doesn't like val
argument
#48910
Comments
anyone working on this issue ? would like to talk about this and make changes |
The issue isn't assigned, so I don't think anybody is working on this. |
This is probably not a great first issue though, since the source is likely a macro hygiene bug |
For completeness' sake quote
function var"#<x gensym>#<function name>"(var"#<y gensym>#<argument name>")
begin
$(Expr(:<meta>, true))
local var"#<z gensym>#val" = <escaped expression>
$(Expr(:<meta>, false))
var"#<z gensym>#val"
end
end
end The gensym for the argument in the case of |
Same issue for macro inbounds(blk)
return Expr(:block,
Expr(:inbounds, true),
Expr(:local, Expr(:(=), :val, esc(blk))),
Expr(:inbounds, :pop),
:val)
end |
I wonder, why use |
I think this is unrelated to hygiene, and is intended behavior, as it has to do with what gets escaped and what doesn't. If that's the case, we can leave everything as-is, or prefix |
Probably related to #43151. |
MWE:
Using any other variable name than
val
makes this work. Probably suspect:julia/base/expr.jl
Lines 846 to 859 in 7eb9615
The text was updated successfully, but these errors were encountered: