--- FCN.c_orig	2007-06-21 16:17:00.000000000 +1000
+++ FCN.c	2007-06-23 13:11:32.000000000 +1000
@@ -42,19 +42,12 @@
 void FCN(int* npar,double* grad,double* fval,double* xval,int* iflag,double* futil){
 
   SV* funname;
-  dSP;
-  ENTER;
-  SAVETMPS;
-
 
   int count,i;
   double* x;
 
   I32 ax ; 
   
-  /* get name of function on the Perl side */
-  funname = mnfunname;
-  
   pdl* pgrad;
   SV* pgradsv;
 
@@ -64,6 +57,13 @@
   int ndims;
   PDL_Long *pdims;
 
+  dSP;
+  ENTER;
+  SAVETMPS;
+
+  /* get name of function on the Perl side */
+  funname = mnfunname;
+
   ndims = 1;
   pdims = (PDL_Long *)  PDL->smalloc( (ndims) * sizeof(*pdims) );
   
