Use a proper datatype, rather than pairs, for flags
[ghc-hetmet.git] / compiler / main / DriverMkDepend.hs
index 052c138..a0ce114 100644 (file)
@@ -395,17 +395,17 @@ depEndMarker   = "# DO NOT DELETE: End of Haskell dependencies"
 
 -- for compatibility with the old mkDependHS, we accept options of the form
 -- -optdep-f -optdep.depend, etc.
-dep_opts :: [(String, OptKind IO)]
+dep_opts :: [Flag IO]
 dep_opts =
-   [ (  "s",                    SepArg (consIORef v_Dep_suffixes) )
-   , (  "f",                    SepArg (writeIORef v_Dep_makefile) )
-   , (  "w",                    NoArg (writeIORef v_Dep_warnings False) )
+   [ Flag "s"                 (SepArg (consIORef v_Dep_suffixes))
+   , Flag "f"                 (SepArg (writeIORef v_Dep_makefile))
+   , Flag "w"                 (NoArg (writeIORef v_Dep_warnings False))
 
-   , (  "-include-prelude",     NoArg (writeIORef v_Dep_include_pkg_deps True) )
+   , Flag "-include-prelude"  (NoArg (writeIORef v_Dep_include_pkg_deps True))
         -- -include-prelude is the old name for -include-pkg-deps, kept around
         -- for backward compatibility, but undocumented
 
-   , (  "-include-pkg-deps",    NoArg (writeIORef v_Dep_include_pkg_deps True) )
-   , (  "-exclude-module=",     Prefix (consIORef v_Dep_exclude_mods . mkModuleName) )
-   , (  "x",                    Prefix (consIORef v_Dep_exclude_mods . mkModuleName) )
+   , Flag "-include-pkg-deps" (NoArg (writeIORef v_Dep_include_pkg_deps True))
+   , Flag "-exclude-module="  (Prefix (consIORef v_Dep_exclude_mods . mkModuleName))
+   , Flag "x"                 (Prefix (consIORef v_Dep_exclude_mods . mkModuleName))
    ]