JuliaSIMD / JuliaSIMD/LoopVectorization.jl
`@turbo` slightly broken on 1.12
- Lenguaje dominante
- Julia
- Estrellas
- 789
- Forks
- 73
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
on nightly, the following code
```
using LoopVectorization
function f()
B = zeros(3)
@turbo B .+ 1
B
end
f()
```
produces
```
ERROR: LoadError: TypeError: in typeassert, expected Expr, got a value of type GlobalRef
Stacktrace:
[1] substitute_broadcast(q::Expr, mod::Symbol, inline::Bool, u₁::Int8, u₂::Int8, v::Int8, threads::Int64, warncheckarg::Int64, safe::Bool)
@ LoopVectorization ~/.julia/dev/LoopVectorization/src/constructors.jl:70
[2] turbo_macro(::Module, ::LineNumberNode, ::Expr)
@ LoopVectorization ~/.julia/dev/LoopVectorization/src/constructors.jl:295
[3] var"@turbo"(__source__::LineNumberNode, __module__::Module, args::Vararg{Any})
@ LoopVectorization ~/.julia/dev/LoopVectorization/src/constructors.jl:404
[4] include(mod::Module, _path::String)
@ Base ./Base.jl:300
[5] exec_options(opts::Base.JLOptions)
@ Base ./client.jl:329
[6] _start()
@ Base ./client.jl:558
in expression starting at /home/oscardssmith/.julia/dev/LoopVectorization/test.jl:6
```
rather than working as expected. This seems to be a consequence of https://github.com/JuliaLang/julia/pull/56746
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Línea de trabajo
Comienza reproduciendo el ejemplo proporcionado de @turbo en Julia nightly y, después, inspecciona substitute_broadcast en src/constructors.jl cerca de la línea 70 y la ruta de la macro cerca de las líneas 295 y 404. La tarea está terminada cuando el ejemplo se evalúa correctamente en lugar de generar el error de aserción de tipo GlobalRef introducido después de Julia pull request 56746.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- julia
- Área
- performance
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Bien especificado
- Aptitud para principiantes
- 45/100