diff --git a/GLFW-b.cabal b/GLFW-b.cabal
--- a/GLFW-b.cabal
+++ b/GLFW-b.cabal
@@ -1,5 +1,5 @@
 name:         GLFW-b
-version:      0.0.2.4
+version:      0.0.2.5
 
 category:     Graphics
 
diff --git a/src/Graphics/UI/GLFW.hsc b/src/Graphics/UI/GLFW.hsc
--- a/src/Graphics/UI/GLFW.hsc
+++ b/src/Graphics/UI/GLFW.hsc
@@ -975,13 +975,21 @@
 windowSizeCallback    :: IORef (Maybe (FunPtr GlfwWindowSizeCallback))
 
 charCallback          = unsafePerformIO (newIORef Nothing)
+{-# NOINLINE charCallback #-}
 keyCallback           = unsafePerformIO (newIORef Nothing)
+{-# NOINLINE keyCallback #-}
 mouseButtonCallback   = unsafePerformIO (newIORef Nothing)
+{-# NOINLINE mouseButtonCallback #-}
 mousePositionCallback = unsafePerformIO (newIORef Nothing)
+{-# NOINLINE mousePositionCallback #-}
 mouseWheelCallback    = unsafePerformIO (newIORef Nothing)
+{-# NOINLINE mouseWheelCallback #-}
 windowCloseCallback   = unsafePerformIO (newIORef Nothing)
+{-# NOINLINE windowCloseCallback #-}
 windowRefreshCallback = unsafePerformIO (newIORef Nothing)
+{-# NOINLINE windowRefreshCallback #-}
 windowSizeCallback    = unsafePerformIO (newIORef Nothing)
+{-# NOINLINE windowSizeCallback #-}
 
 storeCallback :: IORef (Maybe (FunPtr a)) -> FunPtr a -> IO ()
 storeCallback ior cb =
