diff --git a/src/incidencematrix.jl b/src/incidencematrix.jl index 0f295342..9d9f5b8f 100644 --- a/src/incidencematrix.jl +++ b/src/incidencematrix.jl @@ -64,7 +64,7 @@ end function IncidenceMatrix{NonSymmetric}(incidenceRows::AbstractVector{<:AbstractVector{<:Base.Integer}}) r = length(incidenceRows) - c = maximum(maximum, incidenceRows) + c = maximum(x->maximum(x; init=0), incidenceRows) return IncidenceMatrix{NonSymmetric}(r, c, incidenceRows) end diff --git a/test/incidencematrix.jl b/test/incidencematrix.jl index 9f9c0acf..d41b3bb3 100644 --- a/test/incidencematrix.jl +++ b/test/incidencematrix.jl @@ -42,6 +42,8 @@ using Polymake.SparseArrays @test size(M) == (3, 6) @test M == Polymake.IncidenceMatrix{Polymake.NonSymmetric}(3, 6, inc) + @test Polymake.IncidenceMatrix([Int[], [2,3]]) isa Polymake.IncidenceMatrix{Polymake.NonSymmetric} + for N in [IntTypes; FloatTypes; Polymake.Integer; Polymake.Rational] @test Polymake.IncidenceMatrix(N.(jl_n)) isa Polymake.IncidenceMatrix{Polymake.NonSymmetric} @test Polymake.IncidenceMatrix{Polymake.NonSymmetric}(N.(jl_s)) isa Polymake.IncidenceMatrix{Polymake.NonSymmetric}