Strange matrixOP behaviour?

Does anybody know why the following doesn't compile?

#pragma rtGlobals=1		// Use modern global access method.

function testf()
	make/o/n=(2,2) tw0
	matrixop/o tw1=col(tw0,returnf())
end

function returnf()
	return 1
end


Introducing a local variable solves the problem, but is in my opinion somehow strange:

function testf()
	make/o/n=(2,2) tw0
	variable vv
	matrixop/o tw1=col(tw0,vv)
end


A
MatrixOP expressions support only functions that are documented under the MatrixOP operation itself. This is mostly for performance reasons but also because functions can give rise to a somewhat ambiguous syntax.


A.G.
WaveMetrics, Inc.