Skip to content

method ambiguity in reduce(::typeof(vcat), ::SVector) #674

Closed
@tpapp

Description

@tpapp
julia> versioninfo()
Julia Version 1.3.0-rc4.1
Commit 8c4656b97a (2019-10-15 14:08 UTC)
Platform Info:
  OS: Linux (x86_64-linux-gnu)
  CPU: Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-6.0.1 (ORCJIT, skylake)
Environment:
  JULIA_CMDSTAN_HOME = /home/tamas/src/cmdstan/

(v1) pkg> st StaticArrays
    Status `~/.julia/environments/v1/Project.toml`
  [90137ffa] StaticArrays v0.11.1
  [37e2e46d] LinearAlgebra 

julia> using StaticArrays

julia> A = SVector(1, 2)
2-element SArray{Tuple{2},Int64,1,2} with indices SOneTo(2):
 1
 2

julia> B = SVector(A, A)
2-element SArray{Tuple{2},SArray{Tuple{2},Int64,1,2},1,2} with indices SOneTo(2):
 [1, 2]
 [1, 2]

julia> reduce(vcat, B)
ERROR: MethodError: reduce(::typeof(vcat), ::SArray{Tuple{2},SArray{Tuple{2},Int64,1,2},1,2}) is ambiguous. Candidates:
  reduce(::typeof(vcat), A::AbstractArray{#s66,1} where #s66<:(Union{AbstractArray{T,1}, AbstractArray{T,2}} where T)) in Base at abstractarray.jl:1375
  reduce(op, a::StaticArray) in StaticArrays at /home/tamas/.julia/packages/StaticArrays/DBECI/src/mapreduce.jl:164
Possible fix, define
  reduce(::typeof(vcat), ::StaticArray{S,T,1} where T<:(Union{AbstractArray{T,1}, AbstractArray{T,2}} where T) where S<:Tuple)
Stacktrace:
 [1] top-level scope at REPL[7]:1

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions