From e6200c06283d44276be7f71b42cccc0d0e346524 Mon Sep 17 00:00:00 2001 From: Pablo Zubieta Date: Fri, 10 Feb 2017 12:33:18 -0600 Subject: [PATCH] Add broadcast for same-length tuples on 0.5 --- src/Compat.jl | 5 +++++ test/runtests.jl | 8 +++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/Compat.jl b/src/Compat.jl index 01c06a981..7dde5a92a 100644 --- a/src/Compat.jl +++ b/src/Compat.jl @@ -1680,6 +1680,11 @@ if VERSION < v"0.5.0-dev+4677" Base.cholfact!(A::HermOrSym, T::Type) = cholfact!(A.data, Symbol(A.uplo), T) end +# broadcast over same length tuples, from julia#16986 +if v"0.5.0-dev+4002" ≤ VERSION < v"0.6.0-dev.693" + Base.Broadcast.broadcast{N}(f, t::NTuple{N}, ts::Vararg{NTuple{N}}) = map(f, t, ts...) +end + # julia#18510 if VERSION < v"0.6.0-dev.826" _Nullable_field2(x) = !x diff --git a/test/runtests.jl b/test/runtests.jl index 97b9ddead..038fc7624 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -1220,6 +1220,12 @@ f15032(a) = @compat sin.(a) @inferred f15032([1, 2, 3]) @inferred f15032([1.0, 2.0, 3.0]) +# Issue #291 +if VERSION ≥ v"0.5.0-dev+4002" + @test (1, 2) == @compat abs.((1, -2)) + @test broadcast(+, (1.0, 1.0), (0, -2.0)) == (1.0,-1.0) +end + if VERSION ≥ v"0.4.0-dev+3732" @test Symbol("foo") === :foo @test Symbol("foo", "bar") === :foobar @@ -1751,4 +1757,4 @@ end let x = [1,2,3] @dotcompat f(x) = x^2 @test f(x) == [1,4,9] -end \ No newline at end of file +end