And it's been fixed via #11514
<https://github.com/JuliaLang/julia/pull/11514> - thank you, @simonster!
On Sunday, May 31, 2015 at 5:08:09 PM UTC-7, Seth wrote:
>
> The problem appears to be in the recently introduced check to isfinite
> (line 143), which turns an array of things into an array of bool.
>
> On Sunday, May 31, 2015 at 2:53:48 PM UTC-7, MeQuerSat wrote:
>>
>> The problem might lie in the round function, as evident with
>> julia-0.4.0-bfa86480b8 (linux64) like so:
>>
>> round([1], 1)
>> ERROR: TypeError: non-boolean (Array{Bool,1}) used in boolean context
>> in round at floatfuncs.jl:143
>> in round at floatfuncs.jl:139
>>
>> The following also doesn't work:
>> julia> round(Float64,[1])
>> ERROR: MethodError: `convert` has no method matching
>> convert(::Type{FloatingPoint}, ::Type{Float64})
>> This may have arisen from a call to the constructor FloatingPoint(...),
>> since type constructors fall back to convert methods.
>> Closest candidates are:
>> call{T}(::Type{T}, ::Any)
>> convert(::Type{FloatingPoint}, ::Bool)
>> convert(::Type{FloatingPoint}, ::Int8)
>> ...
>> in round at floatfuncs.jl:139
>> in round at floatfuncs.jl:72
>>
>> However, the following does work:
>> round(Int64, [1])
>> 1-element Array{Int64,1}:
>> 2
>>
>>
>> On Sunday, May 31, 2015 at 10:22:55 PM UTC+2, Seth wrote:
>>>
>>>
>>>
>>> I can't figure this out, and I don't see any smoking gun.
>>>
>>> I have a test:
>>>
>>> @test round(y[1:3],4) ==
>>> round([122.10760591498584, 159.0072453120582, 176.39547945994505], 4)
>>>
>>>
>>> that is working fine on my 5-day-old master (and on 0.3.9), but is
>>> failing on travis-nightly with
>>>
>>> ERROR: LoadError: LoadError: test error in expression: round(y[1:3],4) ==
>>> round([122.10760591498584,159.0072453120582,176.39547945994505],4)
>>>
>>> TypeError: non-boolean (Array{Bool,1}) used in boolean context
>>>
>>> in round at floatfuncs.jl:143
>>>
>>>
>>> However, floatfuncs.jl line 143 was modified 9 days ago, so presumably I
>>> had it.
>>>
>>> 1) how do I track this down so that travis works, and 2) is
>>> round(a::Array{T,1), z::Integer) no longer supported?
>>>
>>> Thanks
>>>
>>