diff --git a/Cabal.cabal b/Cabal.cabal
--- a/Cabal.cabal
+++ b/Cabal.cabal
@@ -1,5 +1,5 @@
 Name: Cabal
-Version: 1.16.0.2
+Version: 1.16.0.3
 Copyright: 2003-2006, Isaac Jones
            2005-2011, Duncan Coutts
 License: BSD3
@@ -149,7 +149,9 @@
                  PackageTests.TestOptions.Check,
                  PackageTests.TestStanza.Check,
                  PackageTests.TestSuiteExeV10.Check,
+                 PackageTests.BenchmarkOptions.Check,
                  PackageTests.BenchmarkStanza.Check,
+                 PackageTests.BenchmarkExeV10.Check,
                  PackageTests.TemplateHaskell.Check,
                  PackageTests.PackageTester
   hs-source-dirs: tests
diff --git a/Distribution/Simple/Build/PathsModule.hs b/Distribution/Simple/Build/PathsModule.hs
--- a/Distribution/Simple/Build/PathsModule.hs
+++ b/Distribution/Simple/Build/PathsModule.hs
@@ -73,9 +73,9 @@
         "\n"++
         foreign_imports++
         "import qualified Control.Exception as Exception\n"++
-        "import Data.Version (Version(Version, versionBranch, versionTags))\n"++
+        "import Data.Version (Version(..))\n"++
         "import System.Environment (getEnv)\n"++
-        "import Prelude ((++), FilePath, IO, return)\n"++
+        "import Prelude\n"++
         "\n"++
         "catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a\n"++
         "catchIO = Exception.catch\n" ++
diff --git a/tests/PackageTests/BenchmarkExeV10/Check.hs b/tests/PackageTests/BenchmarkExeV10/Check.hs
new file mode 100644
--- /dev/null
+++ b/tests/PackageTests/BenchmarkExeV10/Check.hs
@@ -0,0 +1,21 @@
+module PackageTests.BenchmarkExeV10.Check
+       ( checkBenchmark
+       ) where
+
+import Distribution.PackageDescription ( Benchmark(..), emptyBenchmark )
+import Distribution.Simple.Hpc
+import Distribution.Version
+import Test.HUnit
+import System.Directory
+import System.FilePath
+import PackageTests.PackageTester
+
+dir :: FilePath
+dir = "PackageTests" </> "BenchmarkExeV10"
+
+checkBenchmark :: Version -> Test
+checkBenchmark cabalVersion = TestCase $ do
+    let spec = PackageSpec dir ["--enable-benchmarks"]
+    buildResult <- cabal_build spec
+    let buildMessage = "\'setup build\' should succeed"
+    assertEqual buildMessage True $ successful buildResult
diff --git a/tests/PackageTests/BenchmarkOptions/Check.hs b/tests/PackageTests/BenchmarkOptions/Check.hs
new file mode 100644
--- /dev/null
+++ b/tests/PackageTests/BenchmarkOptions/Check.hs
@@ -0,0 +1,23 @@
+module PackageTests.BenchmarkOptions.Check where
+
+import Test.HUnit
+import System.FilePath
+import PackageTests.PackageTester
+
+suite :: Test
+suite = TestCase $ do
+    let directory = "PackageTests" </> "BenchmarkOptions"
+        pdFile = directory </> "BenchmarkOptions" <.> "cabal"
+        spec = PackageSpec directory ["--enable-benchmarks"]
+    _ <- cabal_build spec
+    result <- cabal_bench spec ["--benchmark-options=1 2 3"]
+    let message = "\"cabal bench\" did not pass the correct options to the "
+                  ++ "benchmark executable with \"--benchmark-options\""
+    assertEqual message True $ successful result
+    result' <- cabal_bench spec [ "--benchmark-option=1"
+                                , "--benchmark-option=2"
+                                , "--benchmark-option=3"
+                                ]
+    let message = "\"cabal bench\" did not pass the correct options to the "
+                  ++ "benchmark executable with \"--benchmark-option\""
+    assertEqual message True $ successful result'
