Found it!! The following definition was not updated. It seems very weird that this triggered an error message while compiling a completely unrelated routine...
immutable KroneckerOperator{S,V,DS,RS,T}<: BivariateOperator{T} ops::(S,V) domainspace::DS rangespace::RS end > On 15 May 2015, at 1:09 am, Yichao Yu <yyc1...@gmail.com> wrote: > > On Thu, May 14, 2015 at 11:02 AM, David P. Sanders <dpsand...@gmail.com > <mailto:dpsand...@gmail.com>> wrote: >> >> >> El miércoles, 13 de mayo de 2015, 23:51:33 (UTC-5), Sheehan Olver escribió: >>> >>> This is for latest build of 0.4 on Mac OS X Yosemite >>> >>> On Thursday, May 14, 2015 at 2:51:07 PM UTC+10, Sheehan Olver wrote: >>>> >>>> >>>> I get the error message below, and cannot find any sign of the cause. >>>> With debug statements, I found that its dying trying to call a function >>>> with >>>> the signature >>>> >>>> function >>>> linsolve{T<:Operator,N<:Number}(A::Vector{T},b::Array{N};tolerance=0.01,maxlength=1000000) >> >> >> Here, `Array{N}` is a strange type. Do you mean `Array{T, N}`? Or what kind >> of object should `b` be? > > The `N` here should be fine since `N<:Number`. It is indeed a little > bit confusing given `N` is often used as the name of a number > parameter but it shouldn't cause any issue. > > I guess it will probably help to see the code that is calling this > function to tell what exactly is wrong. > >> >> David. >> >> >>>> >>>> ... >>>> end >>>> >>>> Any thoughts? Maybe its a bug in Julia? >>>> >>>> >>>> >>>> TypeError: subtype: expected Type{T}, got Tuple{TypeVar,TypeVar} >>>> >>>> in abstract_call_gf at ./inference.jl:586 >>>> >>>> in abstract_call at ./inference.jl:857 >>>> >>>> in abstract_eval_call at ./inference.jl:904 >>>> >>>> in abstract_eval at ./inference.jl:931 >>>> >>>> in abstract_eval_call at ./inference.jl:881 >>>> >>>> in abstract_eval at ./inference.jl:931 >>>> >>>> in abstract_eval_call at ./inference.jl:881 >>>> >>>> in abstract_eval at ./inference.jl:931 >>>> >>>> in typeinf_uncached at ./inference.jl:1591 >>>> >>>> in typeinf at ./inference.jl:1307 >>>> >>>> in typeinf at ./inference.jl:1257 >>>> >>>> in abstract_call_gf at ./inference.jl:696 >>>> >>>> in abstract_call at ./inference.jl:857 >>>> >>>> in abstract_eval_call at ./inference.jl:904 >>>> >>>> in abstract_eval at ./inference.jl:931 >>>> >>>> in abstract_eval_call at ./inference.jl:881 >>>> >>>> in abstract_eval at ./inference.jl:931 >>>> >>>> in typeinf_uncached at ./inference.jl:1591 >>>> >>>> in typeinf at ./inference.jl:1307 >>>> >>>> in typeinf at ./inference.jl:1257 >>>> >>>> in abstract_call_gf at ./inference.jl:696 >>>> >>>> in abstract_call at ./inference.jl:857 >>>> >>>> in abstract_eval_call at ./inference.jl:904 >>>> >>>> in abstract_eval at ./inference.jl:931 >>>> >>>> in abstract_eval_call at ./inference.jl:881 >>>> >>>> in abstract_eval at ./inference.jl:931 >>>> >>>> in typeinf_uncached at ./inference.jl:1591 >>>> >>>> in typeinf at ./inference.jl:1307 >>>> >>>> in typeinf at ./inference.jl:1257 >>>> >>>> in abstract_call_gf at ./inference.jl:696 >>>> >>>> in abstract_call at ./inference.jl:857 >>>> >>>> in abstract_eval_call at ./inference.jl:904 >>>> >>>> in abstract_eval at ./inference.jl:931 >>>> >>>> in abstract_interpret at ./inference.jl:1080 >>>> >>>> in typeinf_uncached at ./inference.jl:1518 >>>> >>>> in typeinf at ./inference.jl:1307 >>>> >>>> in typeinf at ./inference.jl:1257 >>>> >>>> in abstract_call_gf at ./inference.jl:696 >>>> >>>> in abstract_call at ./inference.jl:857 >>>> >>>> in abstract_call at ./inference.jl:817 >>>> >>>> in abstract_eval_call at ./inference.jl:904 >>>> >>>> in abstract_eval at ./inference.jl:931 >>>> >>>> in typeinf_uncached at ./inference.jl:1591 >>>> >>>> in typeinf at ./inference.jl:1307 >>>> >>>> in typeinf at ./inference.jl:1257 >>>> >>>> in abstract_call_gf at ./inference.jl:696 >>>> >>>> in abstract_call at ./inference.jl:857 >>>> >>>> in abstract_call at ./inference.jl:817 >>>> >>>> in abstract_eval_call at ./inference.jl:904 >>>> >>>> in abstract_eval at ./inference.jl:931 >>>> >>>> in abstract_eval_call at ./inference.jl:881 >>>> >>>> in abstract_eval at ./inference.jl:931 >>>> >>>> in typeinf_uncached at ./inference.jl:1591 >>>> >>>> in typeinf at ./inference.jl:1307 >>>> >>>> in typeinf at ./inference.jl:1257 >>>> >>>> in abstract_call_gf at ./inference.jl:696 >>>> >>>> in abstract_call at ./inference.jl:857 >>>> >>>> in abstract_eval_call at ./inference.jl:904 >>>> >>>> in abstract_eval at ./inference.jl:931 >>>> >>>> in typeinf_uncached at ./inference.jl:1591 >>>> >>>> in typeinf at ./inference.jl:1307 >>>> >>>> in typeinf at ./inference.jl:1257 >>>> >>>> in abstract_call_gf at ./inference.jl:696 >>>> >>>> in abstract_call at ./inference.jl:857 >>>> >>>> in abstract_eval_call at ./inference.jl:904 >>>> >>>> in abstract_eval at ./inference.jl:931 >>>> >>>> in abstract_interpret at ./inference.jl:1080 >>>> >>>> in typeinf_uncached at ./inference.jl:1518 >>>> >>>> in typeinf at ./inference.jl:1307 >>>> >>>> in typeinf at ./inference.jl:1257 >>>> >>>> in abstract_call_gf at ./inference.jl:696 >>>> >>>> in abstract_call at ./inference.jl:857 >>>> >>>> in abstract_eval_call at ./inference.jl:904 >>>> >>>> in abstract_eval at ./inference.jl:931 >>>> >>>> in abstract_interpret at ./inference.jl:1080 >>>> >>>> in typeinf_uncached at ./inference.jl:1518 >>>> >>>> in typeinf at ./inference.jl:1307 >>>> >>>> in typeinf at ./inference.jl:1257 >>>> >>>> in abstract_call_gf at ./inference.jl:696 >>>> >>>> in abstract_call at ./inference.jl:857 >>>> >>>> in abstract_eval_call at ./inference.jl:904 >>>> >>>> in abstract_eval at ./inference.jl:931 >>>> >>>> in typeinf_uncached at ./inference.jl:1591 >>>> >>>> in typeinf at ./inference.jl:1307 >>>> >>>> in typeinf_ext at ./inference.jl:1251 >>>> >>>> in linsolve at >>>> /Users/solver/.julia/v0.4/ApproxFun/src/Operators/linsolve.jl:108 >>>> >>>> in linsolve at >>>> /Users/solver/.julia/v0.4/ApproxFun/src/Operators/linsolve.jl:126 >>>> >>>> in linsolve at >>>> /Users/solver/.julia/v0.4/ApproxFun/src/Operators/linsolve.jl:130 >>>> >>>> in ./ at >>>> /Users/solver/.julia/v0.4/ApproxFun/src/Extras/specialfunctions.jl:89