diff --git a/GHCMod.hs b/GHCMod.hs
--- a/GHCMod.hs
+++ b/GHCMod.hs
@@ -21,7 +21,7 @@
 ----------------------------------------------------------------
 
 usage :: String
-usage =    "ghc-mod version 0.5.3\n"
+usage =    "ghc-mod version 0.5.4\n"
         ++ "Usage:\n"
         ++ "\t ghc-mod list [-l]\n"
         ++ "\t ghc-mod lang [-l]\n"
diff --git a/Types.hs b/Types.hs
--- a/Types.hs
+++ b/Types.hs
@@ -45,7 +45,7 @@
   }
 
 importDirs :: [String]
-importDirs = ["..","../..","../../..","../../../../.."]
+importDirs = ["..","../..","../../..","../../../..","../../../../.."]
 
 ghcPackage :: PackageFlag
 ghcPackage = ExposePackage "ghc"
diff --git a/elisp/ghc-flymake.el b/elisp/ghc-flymake.el
--- a/elisp/ghc-flymake.el
+++ b/elisp/ghc-flymake.el
@@ -103,7 +103,7 @@
 	(when (looking-at "^\\([^ ]+\\) *::")
 	  (save-match-data
 	    (forward-line)
-	    (if (eobp) (insert "\n")))
+	    (if (not (bolp)) (insert "\n")))
 	  (insert (match-string 1) " = undefined\n")))
        ((string-match "Not in scope: `\\([^']+\\)'" data)
 	(save-match-data
diff --git a/elisp/ghc.el b/elisp/ghc.el
--- a/elisp/ghc.el
+++ b/elisp/ghc.el
@@ -16,7 +16,7 @@
 
 ;;; Code:
 
-(defconst ghc-version "0.5.3")
+(defconst ghc-version "0.5.4")
 
 ;; (eval-when-compile
 ;;  (require 'haskell-mode))
diff --git a/ghc-mod.cabal b/ghc-mod.cabal
--- a/ghc-mod.cabal
+++ b/ghc-mod.cabal
@@ -1,5 +1,5 @@
 Name:                   ghc-mod
-Version:                0.5.3
+Version:                0.5.4
 Author:                 Kazu Yamamoto <kazu@iij.ad.jp>
 Maintainer:             Kazu Yamamoto <kazu@iij.ad.jp>
 License:                BSD3
