 
 (defmacro matrix-3
   [values & options]
-  `(u/calls! ^Matrix3 (matrix-3* ~values) ~@options))
+  `(let [^Matrix3 object# (matrix-3* ~values)]
+     (u/calls! object# ~@options)))
 
 (defmacro matrix-3!
   [object k & options]


(defmacro b-spline
  [points degree cont? & options]
  `(u/calls! ^BSpline (b-spline* ~points ~degree ~cont?) ~@options))

(defmacro b-spline!
  [object k & options]


(defmacro grid-point-3
  [x y z & options]
  `(let [^GridPoint3 object# (grid-point-3* ~x ~y ~z)]
     (u/calls! object# ~@options)))

(defmacro grid-point-3!
  [object k & options]
