aboutsummaryrefslogtreecommitdiff
path: root/src/interp/compiler.boot
diff options
context:
space:
mode:
Diffstat (limited to 'src/interp/compiler.boot')
-rw-r--r--src/interp/compiler.boot8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/interp/compiler.boot b/src/interp/compiler.boot
index 6df3e914..c679cadd 100644
--- a/src/interp/compiler.boot
+++ b/src/interp/compiler.boot
@@ -1550,9 +1550,11 @@ compColon([":",f,t],m,e) ==
e:=
f is [op,:argl] =>
--for MPOLY--replace parameters by formal arguments: RDJ 3/83
- newTarget := EQSUBSTLIST(take(#argl,$FormalMapVariableList),
- [(x is [":",a,m] => a; x) for x in argl],t)
- signature:=
+ --FIXME: why? -- gdr 2011-04-30
+ newTarget :=
+ applySubst(pairList([(x is [":",a,m] => a; x) for x in argl],
+ $FormalMapVariableList),t)
+ signature :=
["Mapping",newTarget,:
[(x is [":",a,m] => m;
getmode(x,e) or systemErrorHere ['"compColon",x]) for x in argl]]