import Data.Dynamic
+#ifdef __HUGS__
+import Hugs.Weak
+#endif
+
#ifdef __GLASGOW_HASKELL__
import GHC.Base
import GHC.IOBase
import GHC.Weak
-#include "Dynamic.h"
-INSTANCE_TYPEABLE1(Weak,weakTc,"Weak")
-
{-|
Dereferences a weak pointer. If the key is still alive, then
@'Just' v@ is returned (where @v@ is the /value/ in the weak pointer), otherwise
(# s1, _, f #) -> f s1
#endif
+#include "Dynamic.h"
+INSTANCE_TYPEABLE1(Weak,weakTc,"Weak")
{- $precise