SLICOT interface
andreasvarga opened this issue · comments
I wonder why there are three Clong, Clong, Clong
trailing arguments in the call to :mb03bd_
?
ccall((:mb03bd_, libslicot), Cvoid, (Ref{UInt8}, Ref{UInt8},
Ref{UInt8}, Ptr{BlasInt}, Ref{BlasInt}, Ref{BlasInt},
Ref{BlasInt}, Ref{BlasInt}, Ref{BlasInt}, Ptr{BlasInt},
Ptr{Float64}, Ref{BlasInt}, Ref{BlasInt}, Ptr{Float64},
Ref{BlasInt}, Ref{BlasInt}, Ptr{Float64}, Ptr{Float64},
Ptr{Float64}, Ptr{BlasInt}, Ptr{BlasInt}, Ref{BlasInt},
Ptr{Float64}, Ref{BlasInt}, Ptr{BlasInt}, Ptr{BlasInt},
Clong, Clong, Clong), job, defl, compq, qind, k, n, h,
ilo, ihi, s, a, lda1, lda2, q, ldq1, ldq2, alphar,
alphai, beta, scal, iwork, liwork, dwork, ldwork, iwarn,
info, 1, 1, 1)
Those are the character length arguments, which could often be omitted in years gone by but are now needed. They are discussed in JuliaLang/julia#32870 and references therein.
Many thank for this useful information. It seems I have to update several wrappers in my packages.