diff --git a/src/typechecker.ts b/src/typechecker.ts index 47d1e1e..b1c8994 100644 --- a/src/typechecker.ts +++ b/src/typechecker.ts @@ -361,7 +361,7 @@ export function typecheck(defs: Definition[], typeDefs: TypeDefinition[] = [], c } else { let fnType: TypeAST = resultType; for (let i = ctor.args.length - 1; i >= 0; i--) { - fnType = { kind: 'type-function', param: ctor.args[0], result: fnType }; + fnType = { kind: 'type-function', param: ctor.args[i], result: fnType }; } env.set(ctor.name, fnType); }