Skip to content

Commit

Permalink
ensure that inbounds get propagated
Browse files Browse the repository at this point in the history
  • Loading branch information
vchuravy committed Jan 27, 2018
1 parent 727925d commit dfe521e
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions src/StructsOfArrays.jl
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ end

@generated function Base.getindex{T}(A::StructOfArrays{T}, i::Integer...)
strct, _ = generate_getindex(T, 1)
Expr(:block, Expr(:meta, :inline), strct)
Expr(:block, Expr(:meta, :inline), Expr(:meta, :propagate_inbounds), strct)
end

function generate_setindex(T, x, arraynum)
Expand All @@ -92,7 +92,8 @@ end
@generated function Base.setindex!{T}(A::StructOfArrays{T}, x, i::Integer...)
exprs = Expr(:block, generate_setindex(T, :x, 1)[1]...)
quote
$(Expr(:meta, :inline))
Base.@_inline_meta
Base.@_propagate_inbounds_meta
v = convert(T, x)
$exprs
x
Expand Down

0 comments on commit dfe521e

Please sign in to comment.