diff options
Diffstat (limited to 'compiler/standardClient.ey')
| -rw-r--r-- | compiler/standardClient.ey | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/compiler/standardClient.ey b/compiler/standardClient.ey index e26dd14..27d6455 100644 --- a/compiler/standardClient.ey +++ b/compiler/standardClient.ey @@ -651,8 +651,11 @@ # Run from right (stacktop) argument to left (stacklow) argument: # Take topmost type, check whether it can be found in other stacks (from top) # Eliminate all matching types via function or loop creation - { _ ==f _ sys .typed .inputs ==inputs - sys .typed .outputs ==outputs + { ==f + f sys .typed .type 7 eq { f { * }_ [ 0 ] [ 0 ] '' =f } rep + + f sys .typed .inputs ==inputs + f sys .typed .outputs ==outputs outputs len 1 gt { "multi-output function in auto-loop" die } rep |
