The type of a tuple used to be a tuple of types but that was changed in 0.4 – the way ccall is invoked is a vestige of that, but a convenient one.
On Thu, Jan 21, 2016 at 10:11 AM, Erik Schnetter <[email protected]> wrote: > I notice that the argument types in ccall are passed as a tuple of > types, whereas the arguments to llvmcall are passed as a tuple type. > That is, there is e.g. > > ccall(:foo, Int, (Int, Int), ...) > > and > > llvmcall("foo", Int, Tuple{Int, Int}, ...) > > Why is this? Is this just for historic reasons? Should this be changed? > > Note that the llvmcall code receives multiple arguments (%0, %1, ...), > not just a single tuple argument. > > -erik > > -- > Erik Schnetter <[email protected]> > http://www.perimeterinstitute.ca/personal/eschnetter/ >
