@@ -85,7 +85,7 @@ parseDerivation buf
85 , noHaddock <- buf `regsubmatch` "noHaddock *= *(true|false) *;"
85 , noHaddock <- buf `regsubmatch` "noHaddock *= *(true|false) *;"
86 = Just $ MkDerivation
86 = Just $ MkDerivation
87 { pname = name
87 { pname = name
88− , version = readVersion vers
88+ , version = maybe (error $ "cannot parse version " ++ show vers) id (simpleParse vers)
89 , sha256 = sha
89 , sha256 = sha
90 , isLibrary = False
90 , isLibrary = False
91 , isExecutable = False
91 , isExecutable = False
@@ -109,9 +109,3 @@ regsubmatch :: String -> String -> [String]
109regsubmatch buf patt = let (_,_,_,x) = f in x
109regsubmatch buf patt = let (_,_,_,x) = f in x
110 where f :: (String,String,String,[String])
110 where f :: (String,String,String,[String])
111 f = match (makeRegexOpts compExtended execBlank patt) buf
111 f = match (makeRegexOpts compExtended execBlank patt) buf
113−readVersion :: String -> Version
115− case [ v | (v,[]) <- readP_to_S parseVersion str ] of
117− _ -> error ("invalid version specifier " ++ show str)