Commit 7fe7ca37 authored by John van Groningen's avatar John van Groningen
Browse files

fix Run Time errors and incorrect inconsistent attribution errors caused by...

fix Run Time errors and incorrect inconsistent attribution errors caused by commit 28c890cd, instead fix crash on existentially qualified type variables that already appear in the left-hand side of the type by removing these existential variables from the list
parent cdbdf78f
......@@ -153,6 +153,19 @@ iterateSt op st :== iterate_st op st
= iterate_st op st
= st
mapFilterSt f l st
:== map_filter_st l st
where
map_filter_st [h:t] st
# (keep, f_h , st) = f h st
| keep
# (t2, st) = map_filter_st t st
= ([f_h:t2], st)
= map_filter_st t st
map_filter_st [] st
#! st = st
= ([], st)
mapFilterYesSt f l st
:== map_filter_yes_st l st
where
......
......@@ -248,6 +248,19 @@ iterateSt op st :== iterate_st op st
= iterate_st op st
= st
mapFilterSt f l st
:== map_filter_st l st
where
map_filter_st [h:t] st
# (keep, f_h , st) = f h st
| keep
# (t2, st) = map_filter_st t st
= ([f_h:t2], st)
= map_filter_st t st
map_filter_st [] st
#! st = st
= ([], st)
mapFilterYesSt f l st
:== map_filter_yes_st l st
where
......@@ -261,7 +274,6 @@ mapFilterYesSt f l st
st = st
= (f_h_t2, st)
iMapFilterYesSt f fr to st
:== i_map_filter_yes_st fr to st
where
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment