diff --git a/Sifflet/Language/Expr.hs b/Sifflet/Language/Expr.hs
--- a/Sifflet/Language/Expr.hs
+++ b/Sifflet/Language/Expr.hs
@@ -409,6 +409,13 @@
                             let (tbValue, tb') = subEval tb in
                             T.Node (ifNode tbValue) [tt', ta, tb']
 
+                        EvalOk weirdValue ->
+                            -- This shouldn't happen with proper type
+                            -- checking!
+                            let msg = "if: non-boolean condition value: " ++
+                                      repr weirdValue
+                            in T.Node (ifNode (EvalError msg)) [tt', ta, tb]
+
                         EvalError msg ->
                             T.Node (ifNode (EvalError msg)) [tt', ta, tb]
 
diff --git a/sifflet-lib.cabal b/sifflet-lib.cabal
--- a/sifflet-lib.cabal
+++ b/sifflet-lib.cabal
@@ -1,5 +1,5 @@
 name: sifflet-lib
-version: 1.2.2
+version: 1.2.3
 cabal-version: >= 1.8
 build-type: Simple
 license: BSD3
@@ -16,12 +16,12 @@
   tests and its exporters.
 description: Supporting modules for the Sifflet visual, 
   functional programming language (Hackage 'sifflet' package).
-  Version 1.2.2: Safely quits when main (workspace) window is closed.
-  Version 1.2.1: Updated for compatibility with gtk-0.12.
+  Version 1.2.3: Dependencies revised for compatibility with GHC 7.0
+  and Haskell Platform 2011.2.
 category: 
   Language
   , Visual Programming
-tested-with: GHC == 6.12
+tested-with: GHC == 6.12.3, GHC == 7.0.1
 data-files: sifflet.scm sifflet.py siffml-1.0.dtd
 data-dir: datafiles
 extra-tmp-files:
@@ -32,29 +32,29 @@
 library
 
   build-depends:
-    base >= 4.0 && < 4.3,
+    base >= 4.0 && < 4.4,
 -- begin GTK stuff, these no longer need to have the same version
 -- numbers
     cairo >= 0.11 && < 0.13,
     glib >= 0.11 && < 0.13,
     gtk >= 0.11 && < 0.13,
 -- end
-    containers >= 0.2 && < 0.4,
-    directory >= 1.0 && < 1.1,
-    filepath >= 1.1 && < 1.2,
+    containers >= 0.2 && < 0.5,
+    directory >= 1.0 && < 1.2,
+    filepath >= 1.1 && < 1.3,
     fgl >= 5.4 && < 5.5,
-    haskell98 >= 1.0.1 && < 1.0.2,
+    haskell98 >= 1.0.1 && < 1.2,
     hxt >= 9.0 && < 9.1,
-    mtl >= 1.1 && < 1.2,
-    parsec >= 2.1.0.1 && < 2.3, 
+    mtl >= 1.1 && < 2.1,
+    parsec >= 2.1.0.1 && < 3.2, 
     process >= 1.0 && < 1.1
   if !os(windows)
     build-depends: unix >= 2.3 && < 2.5
   buildable: True
   extensions: ForeignFunctionInterface CPP
   ghc-options: -Wall
---  includes: gtk-2.0/gtk/gtk.h, gtk-2.0/gdk/gdk.h
---  extra-libraries: gdk-x11-2.0 gtk-x11-2.0
+  includes: gtk-2.0/gtk/gtk.h, gtk-2.0/gdk/gdk.h
+  extra-libraries: gdk-x11-2.0 gtk-x11-2.0
   exposed-modules: 
       Data.Number.Sifflet
     , Sifflet.Data.Geometry
