possible to inherit an overload group without excluding+opening

This commit is contained in:
aarne
2008-06-03 11:59:00 +00:00
parent 130a75a43a
commit c161e0e4df
3 changed files with 4 additions and 2 deletions

View File

@@ -260,7 +260,7 @@ checkResInfo gr mo mm (c,info) = do
checkUniq xss = case xss of
x:y:xs
| x == y -> raise $ "ambiguous for type" +++
prtType gr (mkFunType (init x) (last x))
prtType gr (mkFunType (tail x) (head x))
| otherwise -> checkUniq $ y:xs
_ -> return ()

View File

@@ -94,6 +94,8 @@ extendAnyInfo isc n o i j =
liftM ResParam $ updn isc n mt1 mt2
(ResValue mt1, ResValue mt2) ->
liftM ResValue $ updn isc n mt1 mt2
(_, ResOverload ms t) | elem n ms ->
return $ ResOverload ms t
(ResOper mt1 m1, ResOper mt2 m2) -> ---- extendResOper n mt1 m1 mt2 m2
liftM2 ResOper (updn isc n mt1 mt2) (updn isc n m1 m2)
(CncCat mc1 mf1 mp1, CncCat mc2 mf2 mp2) ->

View File

@@ -65,7 +65,7 @@ lookupResDefKind gr m c = look True m c where
CncCat _ _ _ -> liftM (flip (,) 1) $ lock c defLinType
CncFun (Just (cat,_)) (Yes tr) _ -> liftM (flip (,) 1) $ unlock cat tr
CncFun _ (Yes tr) _ -> liftM (flip (,) 1) $ unlock c tr
CncFun _ (Yes tr) _ -> liftM (flip (,) 1) (return tr) ---- $ unlock c tr
AnyInd _ n -> look False n c
ResParam _ -> return (QC m c,2)