Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
clean-compiler-and-rts
compiler
Commits
895ef836
Commit
895ef836
authored
Feb 06, 2002
by
John van Groningen
Browse files
store strictness annotations in SymbolType instead of AType
and remove annotations in generated functions
parent
5652517e
Changes
1
Hide whitespace changes
Inline
Side-by-side
frontend/convertcases.icl
View file @
895ef836
...
...
@@ -704,9 +704,10 @@ newFunction :: !(Optional Ident) !FunctionBody ![FreeVar] ![AType] !AType !Int !
newFunction
opt_id
fun_bodies
local_vars
arg_types
result_type
group_index
state
=
newFunctionWithType
opt_id
fun_bodies
local_vars
fun_type
group_index
state
where
fun_type
=
(_,
fun_type
)
=
removeAnnotations
{
st_vars
=
[]
,
st_args
=
arg_types
,
st_args_strictness
=
NotStrict
,
st_arity
=
length
arg_types
// -*-> ("newFunction", fun_id.id_name)
,
st_result
=
result_type
,
st_context
=
[]
...
...
@@ -1133,9 +1134,11 @@ where
#
body
=
TransformedBody
{
tb_args
=[
case_var
:
[
var
\\
(
var
,
_)
<-
free_vars
]],
tb_rhs
=
caseExpr
}
type
=
{
st_vars
=
[]
(_,
type
)
=
removeAnnotations
{
st_vars
=
[]
,
st_args
=
[
ct_pattern_type
:
[
type
\\
(_,
type
)
<-
free_vars
]]
,
st_args_strictness
=
NotStrict
,
st_arity
=
1
+
length
free_vars
,
st_result
=
ct_result_type
,
st_context
=
[]
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment