diff --git a/OpenCL.cabal b/OpenCL.cabal
--- a/OpenCL.cabal
+++ b/OpenCL.cabal
@@ -1,5 +1,5 @@
 Name: OpenCL
-Version: 1.0.3.2
+Version: 1.0.3.3
 License: BSD3
 License-File: LICENSE
 Author: Luis Cabellos
@@ -8,9 +8,9 @@
 Build-Type: Simple
 Stability: Experimental
 Maintainer: Luis Cabellos
-Homepage: https://github.com/zhensydow/opencl
+Homepage: https://github.com/IFCA/opencl
 Synopsis: Haskell high-level wrapper for OpenCL
-bug-reports: https://github.com/zhensydow/opencl/issues
+bug-reports: https://github.com/zhensydow/IFCA/issues
 Cabal-Version: >=1.8
 Tested-With: GHC
 Description: 
@@ -34,7 +34,7 @@
   Build-tools: c2hs
   hs-Source-Dirs: src
   ghc-options: -Wall
-  Build-Depends: base >=4.0 && < 5, bytestring -any, mtl==2.*
+  Build-Depends: base >=4.0 && < 5, bytestring -any, mtl>=2
   Exposed-Modules: 
     Control.Parallel.OpenCL
     Control.Parallel.OpenCL.Query
@@ -60,12 +60,12 @@
   if os(windows)
     cpp-options: -DCALLCONV=stdcall -Iinclude
     include-dirs: include
-    -- this is needed for linking executables, but not for ghci -lOpenCL:
-    extra-libraries: OpenCL
-    -- NOTE: if extra-libraries fails without finding library! Yo can use:
-    --ghc-options: -lOpenCL
-    --ld-options:  -lOpenCL
+    -- NOTE: extra-libraries: OpenCL seems to fail without finding library!
     -- NOTE: include-dirs without -Iinclude seems to fail too with GHC 7.4.1!
+    -- switch commented blocks to compile in Window
+    extra-libraries: OpenCL
+    -- ghc-options: -lOpenCL
+    -- ld-options:  -lOpenCL
 
 
 Test-suite tests
@@ -79,11 +79,11 @@
 
 source-repository this
   type: git
-  location: https://zhensydow@github.com/zhensydow/opencl.git
-  tag: 1.0.3.0
+  location: https://zhensydow@github.com/IFCA/opencl.git
+  tag: 1.0.3.3
   branch: master
 
 source-repository head
   type: git
-  location: https://zhensydow@github.com/zhensydow/opencl.git
+  location: https://zhensydow@github.com/IFCA/opencl.git
   branch: develop
diff --git a/src/Control/Parallel/OpenCL/Types.chs b/src/Control/Parallel/OpenCL/Types.chs
--- a/src/Control/Parallel/OpenCL/Types.chs
+++ b/src/Control/Parallel/OpenCL/Types.chs
@@ -711,10 +711,10 @@
 testMask :: Bits b => b -> b -> Bool
 testMask mask v = (v .&. mask) == v
 
-bitmaskFromFlags :: (Enum a, Bits b) => [a] -> b
+bitmaskFromFlags :: (Enum a, Bits b, Num b) => [a] -> b
 bitmaskFromFlags = foldl' (.|.) 0 . map (fromIntegral . fromEnum)
 
-bitmaskToFlags :: (Enum a, Bits b) => [a] -> b -> [a]
+bitmaskToFlags :: (Enum a, Bits b, Num b) => [a] -> b -> [a]
 bitmaskToFlags xs mask = filter (testMask mask . fromIntegral . fromEnum) xs
 
 bitmaskToDeviceTypes :: CLDeviceType_ -> [CLDeviceType]
