Vincent- Got an error running your code. Here's the log 1 2 proc fcmp outlib=sasuser.funcs.temp; 3 subroutine returntheta(a[*,*],b[*,*], transa[*,*], result[1,1]); 4 outargs transa, result; 5 call transpose(a, transa); 6 call mult(transa, b, result); 7 endsub; 8 quit; NOTE: Function returntheta saved to sasuser.funcs.temp. NOTE: PROCEDURE FCMP used (Total process time): real time 3.51 seconds cpu time 0.70 seconds 9 10 options cmplib=sasuser.funcs; 11 data _null_; 12 array a{6,1} _temporary_ (1,2,3,4,5,6); 13 array b{6,1} _temporary_ (1,2,3,4,5,6); 14 array transa{6,1} _temporary_; 15 array test{1,1} _temporary_; 16 call returntheta(a,b,transa, test); ERROR: Illegal reference to the array test. ERROR: Illegal variable type for I/O statement. 17 put test=; 18 run; NOTE: The SAS System stopped processing this step because of errors. NOTE: DATA statement used (Total process time): real time 1.07 seconds cpu time 0.26 seconds Jim
... View more