diff --git a/casadi-bindings.cabal b/casadi-bindings.cabal
--- a/casadi-bindings.cabal
+++ b/casadi-bindings.cabal
@@ -1,5 +1,5 @@
 name:                casadi-bindings
-version:             2.3.0.0
+version:             2.3.0.1
 synopsis:            mid-level bindings to CasADi
 category:            Numerical, Math
 description:
@@ -62,7 +62,7 @@
                        binary,
                        vector-binary-instances,
                        casadi-bindings-internal == 0.1.3.0,
-                       casadi-bindings-core     == 2.3.0.0
+                       casadi-bindings-core     == 2.3.0.1
   default-language:    Haskell2010
 
   C-sources:           cbits/handwritten.cpp
diff --git a/src/Casadi/DMatrix.hs b/src/Casadi/DMatrix.hs
--- a/src/Casadi/DMatrix.hs
+++ b/src/Casadi/DMatrix.hs
@@ -42,7 +42,7 @@
   conjugate = id
 
 fromSparseData :: Sparsity -> V.Vector Double -> DMatrix
-fromSparseData s d = unsafePerformIO (dmatrix__1 s d)
+fromSparseData s d = unsafePerformIO (dmatrix__4 s (fromDVector d))
 {-# NOINLINE fromSparseData #-}
 
 dsparsify :: DMatrix -> DMatrix
@@ -119,15 +119,15 @@
   {-# NOINLINE triu2symm #-}
   tril2symm x = unsafePerformIO (dmatrix_zz_tril2symm x)
   {-# NOINLINE tril2symm #-}
-  copy m = dmatrix__9 m
+  copy m = dmatrix__7 m
   densify x = unsafePerformIO (dmatrix_zz_densify x)
   {-# NOINLINE densify #-}
   fromDMatrix = id
-  fromDVector x = unsafePerformIO (dmatrix__0 x)
+  fromDVector x = unsafePerformIO (dmatrix__2 (V.singleton x) >>= dmatrix_T)
   {-# NOINLINE fromDVector #-}
-  fromDouble x = unsafePerformIO (dmatrix__5 x)
+  fromDouble x = unsafePerformIO (dmatrix__3 x)
   {-# NOINLINE fromDouble #-}
-  allocEmpty = dmatrix__10
+  allocEmpty = dmatrix__8
 
 
 instance Num DMatrix where
diff --git a/src/Casadi/Function.hs b/src/Casadi/Function.hs
--- a/src/Casadi/Function.hs
+++ b/src/Casadi/Function.hs
@@ -20,7 +20,6 @@
 import Casadi.MX ( MX )
 import Casadi.DMatrix ( DMatrix )
 import Casadi.SharedObject ( castSharedObject )
-import Casadi.CMatrix ( CMatrix(..) )
 
 instance Show C.Function where
   show x = show (castSharedObject x)
@@ -39,7 +38,7 @@
 -- | evaluate an SXFunction with 1 input and 1 output
 evalDMatrix :: (C.FunctionClass f, C.IOInterfaceFunctionClass f)
                => f -> Vector DMatrix -> IO (Vector DMatrix)
-evalDMatrix sxf inputs = do -- function__operator__call__6
+evalDMatrix sxf inputs = do
   -- set inputs
   zipWithM_ (C.ioInterfaceFunction_setInput__2 sxf) (V.toList inputs) [0..]
 
diff --git a/src/Casadi/SX.hs b/src/Casadi/SX.hs
--- a/src/Casadi/SX.hs
+++ b/src/Casadi/SX.hs
@@ -48,7 +48,7 @@
 
 -- | @hessian exp x@ is the hessian of exp w.r.t. x
 shessian :: SX -> SX -> SX
-shessian x y = unsafePerformIO (C.hessian__1 x y)
+shessian x y = unsafePerformIO (C.hessian__3 x y)
 {-# NOINLINE shessian #-}
 
 ssparsify :: SX -> SX
