summaryrefslogtreecommitdiff
path: root/community-testing/haskell-glib/0001-compatibility-with-ghc-7.6.1.patch
blob: 845beb2bd5980414a7dc0dc7efd2091cf27315a5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
From 7e677b1c633d2b426fc956fcfa084a82ef6df861 Mon Sep 17 00:00:00 2001
From: Thomas Dziedzic <gostrc@gmail.com>
Date: Thu, 27 Sep 2012 04:48:10 -0700
Subject: [PATCH] compatibility with ghc 7.6.1

---
 System/Glib/GObject.chs  | 4 +---
 System/Glib/MainLoop.chs | 4 ++--
 2 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/System/Glib/GObject.chs b/System/Glib/GObject.chs
index 5f0fe5c..9925d2c 100644
--- a/System/Glib/GObject.chs
+++ b/System/Glib/GObject.chs
@@ -127,8 +127,6 @@ makeNewGObject (constr, objectUnref) generator = do
 
 {#pointer GDestroyNotify as DestroyNotify#}
 
-foreign import ccall "wrapper" mkDestroyNotifyPtr :: IO () -> IO DestroyNotify
-
 -- | This function wraps any newly created objects that derives from
 -- GInitiallyUnowned also known as objects with
 -- \"floating-references\". The object will be refSink (for glib
@@ -225,4 +223,4 @@ isA 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)
\ No newline at end of file
+-- register functions and the problem of recursive modules)
diff --git a/System/Glib/MainLoop.chs b/System/Glib/MainLoop.chs
index 72fecb6..feb4c77 100644
--- a/System/Glib/MainLoop.chs
+++ b/System/Glib/MainLoop.chs
@@ -71,7 +71,7 @@ import System.Glib.GObject	(DestroyNotify, destroyFunPtr)
 
 {#pointer SourceFunc#}
 
-foreign import ccall "wrapper" mkSourceFunc :: IO {#type gint#} -> IO SourceFunc
+foreign import ccall "wrapper" mkSourceFunc :: (Ptr () -> IO {#type gint#}) -> IO SourceFunc
 
 type HandlerId = {#type guint#}
 
@@ -79,7 +79,7 @@ type HandlerId = {#type guint#}
 --
 makeCallback :: IO {#type gint#} -> IO (SourceFunc, DestroyNotify)
 makeCallback fun = do
-  funPtr <- mkSourceFunc fun
+  funPtr <- mkSourceFunc (const fun)
   return (funPtr, destroyFunPtr)
 
 -- | Sets a function to be called at regular intervals, with the default
-- 
1.7.12.1