diff --git a/Cabal/Distribution/Simple/Program/Strip.hs b/Cabal/Distribution/Simple/Program/Strip.hs
index d1808e933a7c3b6e3f157cd5da596377a3ec3570..d579409aa15bd6ff9f1dca4f1398aa36f7184123 100644
--- a/Cabal/Distribution/Simple/Program/Strip.hs
+++ b/Cabal/Distribution/Simple/Program/Strip.hs
@@ -49,6 +49,10 @@ stripLib verbosity (Platform _arch os) conf path = do
            return ()
     IOS -> return ()
     Solaris -> return ()
+    Windows -> -- Stripping triggers a bug in 'strip.exe' for
+               -- libraries with lots identically named modules. See
+               -- #1784.
+               return()
     _   -> runStrip verbosity conf path args
   where
     args = ["--strip-unneeded"]