diff --git a/Bindings/GLFW.hsc b/Bindings/GLFW.hsc
--- a/Bindings/GLFW.hsc
+++ b/Bindings/GLFW.hsc
@@ -52,7 +52,7 @@
 import Data.Word        (Word32, Word64)
 import Data.Typeable    (Typeable)
 import Foreign.C.Types  (CChar, CUChar, CUShort)
-import Foreign.C.Types  (CDouble(..), CFloat(..), CInt(..), CUInt(..), CULong(..))
+import Foreign.C.Types  (CDouble(..), CFloat(..), CInt(..), CUInt(..))
 import Foreign.C.String (CString)
 import Foreign.Ptr      (FunPtr, nullFunPtr, Ptr, plusPtr)
 import Foreign.Storable (Storable(..))
@@ -466,8 +466,8 @@
 #ccall glfwSetWindowSizeLimits , Ptr <GLFWwindow> -> CInt -> CInt -> CInt -> CInt -> IO ()
 #ccall glfwSetWindowAspectRatio , Ptr <GLFWwindow> -> CInt -> CInt -> IO ()
 #ccall glfwGetKeyName , CInt -> CInt -> IO CString
-#ccall glfwGetTimerValue , IO (CULong)
-#ccall glfwGetTimerFrequency , IO (CULong)
+#ccall glfwGetTimerValue , IO Word64
+#ccall glfwGetTimerFrequency , IO Word64
 
 #callback GLFWjoystickfun , CInt -> CInt -> IO ()
 #ccall glfwSetJoystickCallback , <GLFWjoystickfun> -> IO <GLFWjoystickfun>
@@ -489,14 +489,13 @@
 #ccall glfwGetPhysicalDevicePresentationSupport , Ptr vkInstance -> Ptr vkPhysicalDevice -> Word32 -> IO CInt
 #ccall glfwCreateWindowSurface                  , Ptr vkInstance -> Ptr <GLFWwindow> -> Ptr vkAllocationCallbacks -> Ptr vkSurfaceKHR -> IO Int32
 
-
 --------------------------------------------------------------------------------
 -- Native APIs
 --------------------------------------------------------------------------------
 
 #if defined(GLFW_EXPOSE_NATIVE_WIN32)
 #ccall glfwGetWin32Adapter , Ptr <GLFWwindow> -> IO CString
-#ccall glfwGetWin32Monitor , Ptr <GLFWwindow> -> IO (Ptr ())
+#ccall glfwGetWin32Monitor , Ptr <GLFWwindow> -> IO CString
 #ccall glfwGetWin32Window  , Ptr <GLFWwindow> -> IO (Ptr ())
 #else
 
@@ -508,10 +507,10 @@
   error $ "c'glfwGetWin32Adapter undefined! -- "
        ++ "Did you use the wrong glfw3native API?"
 
-p'glfwGetWin32Monitor :: FunPtr (Ptr C'GLFWwindow -> IO (Ptr ()))
+p'glfwGetWin32Monitor :: FunPtr (Ptr C'GLFWwindow -> IO CString)
 p'glfwGetWin32Monitor = nullFunPtr
 
-c'glfwGetWin32Monitor :: Ptr C'GLFWwindow -> IO (Ptr ())
+c'glfwGetWin32Monitor :: Ptr C'GLFWwindow -> IO CString
 c'glfwGetWin32Monitor =
   error $ "c'glfwGetWin32Monitor undefined! -- "
        ++ "Did you use the wrong glfw3native API?"
diff --git a/Test.hs b/Test.hs
--- a/Test.hs
+++ b/Test.hs
@@ -119,8 +119,6 @@
       , testCase "glfwGetVideoModes"          $ test_glfwGetVideoModes p'mon
       , testCase "glfwGetVideoMode"           $ test_glfwGetVideoMode p'mon
       , testCase "glfwGetGammaRamp"           $ test_glfwGetGammaRamp p'mon
-      -- , testCase "setGamma"                   $ test_glfwSetGamma p'mon
-      -- , testCase "gamma ramp"                 $ test_glfwGamma_ramp p'mon
       ]
     , testGroup "Window handling"
       [ testCase "glfwDefaultWindowHints"       test_glfwDefaultWindowHints
@@ -153,11 +151,9 @@
       , testCase "glfwGetKeyName"         test_glfwGetKeyName
       ]
     , testGroup "Time"
-      [ testCase "glfwGetTime" test_glfwGetTime
-      , testCase "glfwSetTime" test_glfwSetTime
-      ]
-    , testGroup "Timers"
-      [ testCase "glfwGetTimerValue"         test_glfwGetTimerValue
+      [ testCase "glfwGetTime"               test_glfwGetTime
+      , testCase "glfwSetTime"               test_glfwSetTime
+      , testCase "glfwGetTimerValue"         test_glfwGetTimerValue
       , testCase "glfwSetTimerFrequency"     test_glfwGetTimerFrequency
       ]
     , testGroup "Context"
@@ -579,8 +575,6 @@
     c'glfwSetTime (realToFrac t)
     t' <- realToFrac `fmap` c'glfwGetTime
     assertBool "" $ t' `between` (t, t+10)
-
---------------------------------------------------------------------------------
 
 test_glfwGetTimerValue :: IO ()
 test_glfwGetTimerValue = do
diff --git a/bindings-GLFW.cabal b/bindings-GLFW.cabal
--- a/bindings-GLFW.cabal
+++ b/bindings-GLFW.cabal
@@ -1,11 +1,12 @@
 name:         bindings-GLFW
-version:      3.2.1.0
+version:      3.2.1.1
 category:     Graphics
 
 author:       Brian Lewis <brian@lorf.org>
-maintainer:   Schell Scivally <efsubenovex@gmail.com>,
-              Brian Lewis <brian@lorf.org>,
-              Javier Jaramago <jaramago.fernandez.javier@gmail.com>
+maintainer:   Brian Lewis <brian@lorf.org>
+            , Schell Scivally <efsubenovex@gmail.com>
+            , Javier Jaramago <jaramago.fernandez.javier@gmail.com>
+            , Pavel Krajcevski <krajcevski@gmail.com>
 
 license:      BSD3
 license-file: LICENSE
@@ -16,8 +17,8 @@
   multi-platform library for creating windows with OpenGL contexts and managing
   input and events.
   .
-  The binding is to GLFW 3.1, released 2015-01-18
-  (<http://www.glfw.org/Version-3.1-released.html>
+  The binding is to GLFW 3.2, released 2016-08-18
+  (<http://www.glfw.org/Version-3.2-released.html>
   <http://www.glfw.org/changelog.html>).
   .
   /These bindings are too low-level for normal use./ For higher-level bindings,
@@ -25,7 +26,7 @@
   .
   If you've used GLFW before, you were probably using 2.7.x. There are some
   significant differences in 3.x.x. Please see the transition guide
-  (<http://www.glfw.org/docs/3.1/moving.html>).
+  (<http://www.glfw.org/docs/3.2/moving.html>).
 
 cabal-version: >= 1.10
 build-type:    Simple
@@ -113,7 +114,7 @@
 
   if flag(system-glfw)
     pkgconfig-depends:
-      glfw3 == 3.1.*
+      glfw3 == 3.2.*
   else
     include-dirs:
       glfw/include/GLFW
