diff --git a/System/GIO/Types.chs b/System/GIO/Types.chs
--- a/System/GIO/Types.chs
+++ b/System/GIO/Types.chs
@@ -179,11 +179,13 @@
   ) where
 
 import Foreign.ForeignPtr (ForeignPtr, castForeignPtr)
-#if __GLASGOW_HASKELL__ >= 707
+-- TODO work around cpphs https://ghc.haskell.org/trac/ghc/ticket/13553
+#if __GLASGOW_HASKELL__ >= 707 || __GLASGOW_HASKELL__ == 0
 import Foreign.ForeignPtr.Unsafe (unsafeForeignPtrToPtr)
 #else
 import Foreign.ForeignPtr (unsafeForeignPtrToPtr)
 #endif
+
 import Foreign.C.Types    (CULong(..), CUInt(..), CULLong(..))
 import System.Glib.GType  (GType, typeInstanceIsA)
 import System.Glib.GObject
diff --git a/gio.cabal b/gio.cabal
--- a/gio.cabal
+++ b/gio.cabal
@@ -1,5 +1,5 @@
 Name:           gio
-Version:        0.13.3.1
+Version:        0.13.4.0
 License:        LGPL-2.1
 License-file:   COPYING
 Copyright:      (c) 2001-2010 The Gtk2Hs Team
@@ -82,7 +82,7 @@
         default-extensions: ForeignFunctionInterface
 		
         cpp-options:    -U__BLOCKS__ -Ubool
-        if os(darwin)
+        if os(darwin) || os(freebsd)
           cpp-options: -D__attribute__(A)= -D_Nullable= -D_Nonnull=
 
         x-Signals-File:  System/GIO/Signals.chs
