forked from GitHub/gf-core
fix in the typechecking of one and default
This commit is contained in:
@@ -382,19 +382,19 @@ tcRho scope c (Reset ctl mb_ct t qid) mb_ty
|
|||||||
instSigma scope c2 (Reset ctl mb_ct t qid) vtypeMarkup mb_ty
|
instSigma scope c2 (Reset ctl mb_ct t qid) vtypeMarkup mb_ty
|
||||||
| ctl == cOne = do
|
| ctl == cOne = do
|
||||||
let (c1,c2) = split c
|
let (c1,c2) = split c
|
||||||
(t,ty) <- tcRho scope c1 t mb_ty
|
(t,ty) <- tcRho scope c1 t mb_ty
|
||||||
mb_ct <- case mb_ct of
|
(mb_ct,ty) <- case mb_ct of
|
||||||
Just ct -> do (ct,ty) <- tcRho scope c2 ct (Just ty)
|
Just ct -> do (ct,ty) <- tcRho scope c2 ct (Just ty)
|
||||||
return (Just ct)
|
return (Just ct,ty)
|
||||||
Nothing -> return Nothing
|
Nothing -> return (Nothing,ty)
|
||||||
return (Reset ctl mb_ct t qid,ty)
|
return (Reset ctl mb_ct t qid,ty)
|
||||||
| ctl == cDefault = do
|
| ctl == cDefault = do
|
||||||
let (c1,c2) = split c
|
let (c1,c2) = split c
|
||||||
(t,ty) <- tcRho scope c1 t mb_ty
|
(t,ty) <- tcRho scope c1 t mb_ty
|
||||||
mb_ct <- case mb_ct of
|
(mb_ct,ty) <- case mb_ct of
|
||||||
Just ct -> do (ct,ty) <- tcRho scope c2 ct (Just ty)
|
Just ct -> do (ct,ty) <- tcRho scope c2 ct (Just ty)
|
||||||
return (Just ct)
|
return (Just ct,ty)
|
||||||
Nothing -> evalError (pp "[list: .. | ..] requires an argument")
|
Nothing -> evalError (pp "[list: .. | ..] requires an argument")
|
||||||
return (Reset ctl mb_ct t qid,ty)
|
return (Reset ctl mb_ct t qid,ty)
|
||||||
| ctl == cList = do
|
| ctl == cList = do
|
||||||
do let (c1,c2) = split c
|
do let (c1,c2) = split c
|
||||||
|
|||||||
Reference in New Issue
Block a user