diff --git a/System/Glib/GObject.chs b/System/Glib/GObject.chs
--- a/System/Glib/GObject.chs
+++ b/System/Glib/GObject.chs
@@ -222,3 +222,7 @@
 isA obj gType = 
 	typeInstanceIsA ((unsafeForeignPtrToPtr.castForeignPtr.unGObject.toGObject) obj) gType
 
+-- at this point we would normally implement the notify signal handler;
+-- I've moved this definition into the Object class of the gtk package
+-- since there's a quite a bit of machinery missing here (generated signal
+-- register functions and the problem of recursive modules)
diff --git a/System/Glib/hsgclosure.c b/System/Glib/hsgclosure.c
--- a/System/Glib/hsgclosure.c
+++ b/System/Glib/hsgclosure.c
@@ -107,8 +107,12 @@
     WHEN_DEBUG(g_debug("gtk2hs_closure_marshal(%p): about to rts_evalIO", hc->callback));
     
     /* perform the call */
+    #if __GLASGOW_HASKELL__>=704
+    rts_evalIO(&cap, rts_apply(CAP (HaskellObj)runIO_closure, call),&ret);
+    #else
     cap=rts_evalIO(CAP rts_apply(CAP (HaskellObj)runIO_closure, call),&ret);
-    
+    #endif
+
     WHEN_DEBUG(g_debug("gtk2hs_closure_marshal(%p): about to rts_checkSchedStatus", hc->callback));
     
     /* barf if anything went wrong */
@@ -199,8 +203,8 @@
         return rts_mkPtr(CAP g_value_get_pointer(value));
     case G_TYPE_BOXED:
         return rts_mkPtr(CAP g_value_get_boxed(value));
-/*    case G_TYPE_PARAM:
-        return g_value_get_param(value); */
+    case G_TYPE_PARAM:
+        return rts_mkPtr(CAP g_value_get_param(value));
     case G_TYPE_OBJECT:
         return rts_mkPtr(CAP g_value_get_object(value));
     }
diff --git a/glib.cabal b/glib.cabal
--- a/glib.cabal
+++ b/glib.cabal
@@ -1,5 +1,5 @@
 Name:           glib
-Version:        0.12.2
+Version:        0.12.3
 License:        LGPL-2.1
 License-file:   COPYING
 Copyright:      (c) 2001-2010 The Gtk2Hs Team
@@ -16,7 +16,7 @@
                 much functionality as required to support the packages that
                 wrap libraries that are themselves based on GLib.
 Category:       System
-Tested-With:    GHC == 6.10.4, GHC == 6.12.3, GHC == 7.0.4, GHC == 7.2.1
+Tested-With:    GHC == 7.0.4, GHC == 7.2.2, GHC == 7.4.1
 Extra-Source-Files:
                 SetupWrapper.hs SetupMain.hs Gtk2HsSetup.hs
                 System/Glib/hsgclosure.c
