Skip to content

Commit ce64427

Browse files
committed
Add @nospecialize to showarg
1 parent 07d6cf3 commit ce64427

File tree

2 files changed

+8
-1
lines changed

2 files changed

+8
-1
lines changed

src/OffsetArrays.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -373,7 +373,7 @@ function Base.inds2string(inds::Tuple{Vararg{Union{IdOffsetRange, IdentityUnitRa
373373
end
374374
Base.showindices(io::IO, ind1::IdOffsetRange, inds::IdOffsetRange...) = Base.showindices(io, map(UnitRange, (ind1, inds...))...)
375375

376-
function Base.showarg(io::IO, a::OffsetArray, toplevel)
376+
function Base.showarg(io::IO, @nospecialize(a::OffsetArray), toplevel)
377377
print(io, "OffsetArray(")
378378
Base.showarg(io, parent(a), false)
379379
Base.showindices(io, axes(a)...)

src/axes.jl

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,3 +178,10 @@ if VERSION < v"1.5.2"
178178
@inline Base.compute_offset1(parent, stride1::Integer, dims::Tuple{Int}, inds::Tuple{IdOffsetRange}, I::Tuple) =
179179
Base.compute_linindex(parent, I) - stride1*first(inds[1])
180180
end
181+
182+
# This was deemed "too private" to extend: see issue #184
183+
# # Fixes an inference failure in Base.mapfirst!
184+
# # Test: A = OffsetArray(rand(4,4), (-3,5)); R = similar(A, (1:1, 6:9)); maximum!(R, A)
185+
# if isdefined(Base, :_firstslice)
186+
# Base._firstslice(i::IdOffsetRange) = IdOffsetRange(Base._firstslice(i.parent), i.offset)
187+
# end

0 commit comments

Comments
 (0)