Skip to content

Commit 46ef096

Browse files
committed
fix a method ambiguity error in unsafe_convert for FieldVectors
by making `unsafe_convert` more specific than: unsafe_convert(P::Type{Ptr{T}}, b::Base.RefValue{T}) where T which is defined in Base
1 parent aa56069 commit 46ef096

File tree

1 file changed

+2
-4
lines changed

1 file changed

+2
-4
lines changed

src/FieldVector.jl

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,5 @@ abstract type FieldVector{N, T} <: StaticVector{N, T} end
2424

2525
# See #53
2626
Base.cconvert{T}(::Type{Ptr{T}}, v::FieldVector) = Base.RefValue(v)
27-
Base.unsafe_convert{T, FV <: FieldVector}(::Type{Ptr{T}}, m::Base.RefValue{FV}) =
28-
_unsafe_convert(Ptr{T}, eltype(FV), m)
29-
_unsafe_convert{T, FV <: FieldVector}(::Type{Ptr{T}}, ::Type{T}, m::Base.RefValue{FV}) =
30-
Ptr{T}(Base.unsafe_convert(Ptr{FV}, m))
27+
Base.unsafe_convert(::Type{Ptr{T}}, m::Base.RefValue{FV}) where {N,T,FV<:FieldVector{N,T}} =
28+
Ptr{T}(Base.unsafe_convert(Ptr{FV}, m))

0 commit comments

Comments
 (0)