diff --git a/cabal-install/Main.hs b/cabal-install/Main.hs
index 9c33b3f81531e94d3f75bc76d6c300fee72564e5..ee0617c53ac1ebdbeab4f18fb943fe1bf39a0979 100644
--- a/cabal-install/Main.hs
+++ b/cabal-install/Main.hs
@@ -1132,7 +1132,9 @@ unpackAction getFlags extraArgs globalFlags = do
   getAction getFlags extraArgs globalFlags
 
 initAction :: InitFlags -> [String] -> Action
-initAction initFlags _extraArgs globalFlags = do
+initAction initFlags extraArgs globalFlags = do
+  when (extraArgs /= []) $
+    die $ "'init' doesn't take any extra arguments: " ++ unwords extraArgs
   let verbosity = fromFlag (initVerbosity initFlags)
   (_useSandbox, config) <- loadConfigOrSandboxConfig verbosity
                            (globalFlags { globalRequireSandbox = Flag False })