diff --git a/README.markdown b/README.markdown
--- a/README.markdown
+++ b/README.markdown
@@ -42,6 +42,8 @@
 
 &nbsp;&nbsp;&nbsp;&nbsp;&#x2612;&nbsp;&nbsp;2017-02-21  v0.2.0.3  Tweak README/index layout
 
+&nbsp;&nbsp;&nbsp;&nbsp;&#x2612;&nbsp;&nbsp;2017-02-22  v0.2.0.4  [Repair re-gen-modules-test for Windows](https://github.com/iconnect/regex/issues/47)
+
 &nbsp;&nbsp;&nbsp;&nbsp;&#x2610;&nbsp;&nbsp;2017-02-26  v0.3.0.0  [API adjustments, tutorials and examples finalized](https://github.com/iconnect/regex/milestone/2)
 
 &nbsp;&nbsp;&nbsp;&nbsp;&#x2610;&nbsp;&nbsp;2017-03-20  v1.0.0.0  [First stable release](https://github.com/iconnect/regex/milestone/3)
diff --git a/changelog b/changelog
--- a/changelog
+++ b/changelog
@@ -1,6 +1,9 @@
 -*-change-log-*-
 
-0.2.0.3 Chris Dornan <chris.dornan@irisconnect.co.uk> 2017-02-21
+0.2.0.4 Chris Dornan <chris.dornan@irisconnect.co.uk> 2017-02-22
+  * Repair re-gen-modules-test for Windows
+
+0.2.0.4 Chris Dornan <chris.dornan@irisconnect.co.uk> 2017-02-21
   * README/index layout tweak
 
 0.2.0.2 Chris Dornan <chris.dornan@irisconnect.co.uk> 2017-02-21
diff --git a/examples/re-gen-modules.lhs b/examples/re-gen-modules.lhs
--- a/examples/re-gen-modules.lhs
+++ b/examples/re-gen-modules.lhs
@@ -42,8 +42,9 @@
 test' :: (ModPath,SedScript RE) -> IO Bool
 test' (mp,scr) = do
     putStrLn mp
-    sed scr (mod_filepath source_mp) tmp_pth
-    cmp     (T.pack tmp_pth) (T.pack $ mod_filepath mp)
+    tp <- is_text_present
+    sed scr (mod_filepath tp source_mp) tmp_pth
+    cmp     (T.pack tmp_pth) (T.pack $ mod_filepath tp mp)
   where
     tmp_pth = "tmp/prog.hs"
 
@@ -55,7 +56,8 @@
 gen' :: (ModPath,SedScript RE) -> IO ()
 gen' (mp,scr) = do
   putStrLn mp
-  sed scr (mod_filepath source_mp) (mod_filepath mp)
+  tp <- is_text_present
+  sed scr (mod_filepath tp source_mp) (mod_filepath tp mp)
 
 tdfa_edits :: [(ModPath,SedScript RE)]
 tdfa_edits =
@@ -108,11 +110,18 @@
 import_re = [re|import qualified Data.ByteString.Lazy.Char8 *as LBS|]
 bs_re     = [re|LBS.ByteString|]
 
-mod_filepath :: ModPath -> FilePath
-mod_filepath mp = "src/" ++ map tr mp ++ ".hs"
+mod_filepath :: Bool -> ModPath -> FilePath
+mod_filepath text_present mp = pfx ++ map tr mp ++ ".hs"
   where
+    pfx = case text_present of
+      True  -> ""
+      False -> "src/"
+
     tr '.' = '/'
     tr c   = c
+
+is_text_present :: IO Bool
+is_text_present = doesDirectoryExist "Text"
 
 cmp :: T.Text -> T.Text -> IO Bool
 cmp src dst = handle hdl $ do
diff --git a/lib/mega-regex.cabal b/lib/mega-regex.cabal
--- a/lib/mega-regex.cabal
+++ b/lib/mega-regex.cabal
@@ -1,5 +1,5 @@
 Name:                   regex
-Version:                0.2.0.3
+Version:                0.2.0.4
 Synopsis:               Toolkit for regex-base
 Description:            A Regular Expression Toolkit for regex-base with
                         Compile-time checking of RE syntax, data types for
@@ -62,7 +62,7 @@
 Source-Repository this
     Type:               git
     Location:           https://github.com/iconnect/regex.git
-    Tag:                0.2.0.3
+    Tag:                0.2.0.4
 
 
 
@@ -143,7 +143,7 @@
       -fwarn-tabs
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -171,7 +171,7 @@
       -fwarn-tabs
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -196,7 +196,7 @@
       -fwarn-tabs
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -220,7 +220,7 @@
       -fwarn-tabs
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -247,7 +247,7 @@
       TestKit
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
       , bytestring           >= 0.10.2.0
@@ -271,7 +271,7 @@
       TestKit
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
       , bytestring           >= 0.10.2.0
@@ -292,7 +292,7 @@
       -fwarn-tabs
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -320,7 +320,7 @@
       -fwarn-tabs
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -351,7 +351,7 @@
       TestKit
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
       , bytestring           >= 0.10.2.0
@@ -377,7 +377,7 @@
       TestKit
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
       , bytestring           >= 0.10.2.0
@@ -403,7 +403,7 @@
       TestKit
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -439,7 +439,7 @@
       TestKit
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -476,7 +476,7 @@
       -fwarn-tabs
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -518,7 +518,7 @@
       -fwarn-tabs
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -562,7 +562,7 @@
       -fwarn-tabs
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
diff --git a/lib/version.txt b/lib/version.txt
--- a/lib/version.txt
+++ b/lib/version.txt
@@ -1,1 +1,1 @@
-0.2.0.3
+0.2.0.4
diff --git a/regex-examples.cabal b/regex-examples.cabal
--- a/regex-examples.cabal
+++ b/regex-examples.cabal
@@ -1,5 +1,5 @@
 Name:                   regex-examples
-Version:                0.2.0.3
+Version:                0.2.0.4
 Synopsis:               Tutorial, tests and example programs for regex
 Description:            Tutorial, tests and example programs for regex,
                         a Regular Expression Toolkit for regex-base with
@@ -63,7 +63,7 @@
 Source-Repository this
     Type:               git
     Location:           https://github.com/iconnect/regex.git
-    Tag:                0.2.0.3
+    Tag:                0.2.0.4
 
 
 
@@ -81,7 +81,7 @@
       -fwarn-tabs
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -109,7 +109,7 @@
       -fwarn-tabs
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -134,7 +134,7 @@
       -fwarn-tabs
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -158,7 +158,7 @@
       -fwarn-tabs
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -185,7 +185,7 @@
       TestKit
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
       , bytestring           >= 0.10.2.0
@@ -209,7 +209,7 @@
       TestKit
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
       , bytestring           >= 0.10.2.0
@@ -230,7 +230,7 @@
       -fwarn-tabs
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -258,7 +258,7 @@
       -fwarn-tabs
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -289,7 +289,7 @@
       TestKit
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
       , bytestring           >= 0.10.2.0
@@ -315,7 +315,7 @@
       TestKit
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
       , bytestring           >= 0.10.2.0
@@ -341,7 +341,7 @@
       TestKit
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -377,7 +377,7 @@
       TestKit
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -414,7 +414,7 @@
       -fwarn-tabs
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -456,7 +456,7 @@
       -fwarn-tabs
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
@@ -500,7 +500,7 @@
       -fwarn-tabs
 
     Build-depends:
-        regex                == 0.2.0.3
+        regex                == 0.2.0.4
       , array                >= 0.4
       , base                 >= 4 && < 5
       , base-compat          >= 0.6.0
