diff --git a/testsuite/runtime/typecheck/hard-unification.gfs.gold b/testsuite/runtime/typecheck/hard-unification.gfs.gold
index f21d6c2da..9ca737384 100644
--- a/testsuite/runtime/typecheck/hard-unification.gfs.gold
+++ b/testsuite/runtime/typecheck/hard-unification.gfs.gold
@@ -1,8 +1,6 @@
-Expression: s (\v0 -> v0) (app (\v0 -> v0)) ex
-Type: S
-Probability: 1.0
-
-Meta variable(s) ?2 should be resolved
-in the expression: s ?2 (app ?2) ?4
-CallStack (from HasCallStack):
- error, called at src/compiler/GF/Command/Commands.hs:744:43 in gf-3.10.4-EdD6fabQUzM4AhRenbxTb3:GF.Command.Commands
+Expression: s (\v0 -> v0) (app (\v0 -> v0)) ex
+Type: S
+Probability: 1.0
+
+Meta variable(s) ?2 should be resolved
+in the expression: s ?2 (app ?2) ?4
diff --git a/testsuite/runtime/typecheck/implicit-arguments.gfs.gold b/testsuite/runtime/typecheck/implicit-arguments.gfs.gold
index eda2eb4fd..3292c2ea1 100644
--- a/testsuite/runtime/typecheck/implicit-arguments.gfs.gold
+++ b/testsuite/runtime/typecheck/implicit-arguments.gfs.gold
@@ -1,37 +1,35 @@
-Expression: join {n1} {n2} {n3} l12 (link {n2} {n3} l23)
-Type: Path n1 n3
-Probability: 1.0000000000000002e-2
-
-Expression: join {n1} {n2} {n3} l12 (link {n2} {n3} l23)
-Type: Path n1 n3
-Probability: 1.0000000000000002e-2
-
-Expression: 2 : Label {?1}>
-Type: Label {?1}
-Probability: 1.0
-
-Expression: 2 : Label {n1}>
-Type: Label {n1}
-Probability: 1.0
-
-{n1} is implicit argument but not implicit argument is expected here
-CallStack (from HasCallStack):
- error, called at src/compiler/GF/Command/Commands.hs:744:43 in gf-3.10.4-EdD6fabQUzM4AhRenbxTb3:GF.Command.Commands
-Expression: <\{_1}, x -> x : ({m} : Node) -> (n : Node) -> Node>
-Type: ({m} : Node) -> (n : Node) -> Node
-Probability: 1.0
-
-Expression: <\{_1} -> n1 : ({m} : Node) -> Node>
-Type: ({m} : Node) -> Node
-Probability: 1.0
-
-Expression: <\{_1} -> ?1 : ({m} : Node) -> Node>
-Type: ({m} : Node) -> Node
-Probability: 1.0
-
-Expression:
-Type: Path n1 n1
-Probability: 1.0
-
-n1
-
+Expression: join {n1} {n2} {n3} l12 (link {n2} {n3} l23)
+Type: Path n1 n3
+Probability: 1.0000000000000002e-2
+
+Expression: join {n1} {n2} {n3} l12 (link {n2} {n3} l23)
+Type: Path n1 n3
+Probability: 1.0000000000000002e-2
+
+Expression: 2 : Label {?1}>
+Type: Label {?1}
+Probability: 1.0
+
+Expression: 2 : Label {n1}>
+Type: Label {n1}
+Probability: 1.0
+
+{n1} is implicit argument but not implicit argument is expected here
+Expression: <\{_1}, x -> x : ({m} : Node) -> (n : Node) -> Node>
+Type: ({m} : Node) -> (n : Node) -> Node
+Probability: 1.0
+
+Expression: <\{_1} -> n1 : ({m} : Node) -> Node>
+Type: ({m} : Node) -> Node
+Probability: 1.0
+
+Expression: <\{_1} -> ?1 : ({m} : Node) -> Node>
+Type: ({m} : Node) -> Node
+Probability: 1.0
+
+Expression:
+Type: Path n1 n1
+Probability: 1.0
+
+n1
+
diff --git a/testsuite/runtime/typecheck/typecheck.gfs.gold b/testsuite/runtime/typecheck/typecheck.gfs.gold
index a6a1b7d2e..048b6d892 100644
--- a/testsuite/runtime/typecheck/typecheck.gfs.gold
+++ b/testsuite/runtime/typecheck/typecheck.gfs.gold
@@ -1,118 +1,86 @@
-Couldn't match expected type Nat
- against inferred type String
-In the expression: "0"
-CallStack (from HasCallStack):
- error, called at src/compiler/GF/Command/Commands.hs:744:43 in gf-3.10.4-EdD6fabQUzM4AhRenbxTb3:GF.Command.Commands
-Category Int should have 0 argument(s), but has been given 1
-In the type: Int 0
-CallStack (from HasCallStack):
- error, called at src/compiler/GF/Command/Commands.hs:744:43 in gf-3.10.4-EdD6fabQUzM4AhRenbxTb3:GF.Command.Commands
-A function type is expected for the expression 1 instead of type Int
-CallStack (from HasCallStack):
- error, called at src/compiler/GF/Command/Commands.hs:744:43 in gf-3.10.4-EdD6fabQUzM4AhRenbxTb3:GF.Command.Commands
-Couldn't match expected type Int -> Int
- against inferred type Int
-In the expression: 1
-CallStack (from HasCallStack):
- error, called at src/compiler/GF/Command/Commands.hs:744:43 in gf-3.10.4-EdD6fabQUzM4AhRenbxTb3:GF.Command.Commands
-unknown category of function identifier unknown_fun
-
-Category unknown_cat is not in scope
-CallStack (from HasCallStack):
- error, called at src/compiler/GF/Command/Commands.hs:744:43 in gf-3.10.4-EdD6fabQUzM4AhRenbxTb3:GF.Command.Commands
-Cannot infer the type of expression \x -> x
-CallStack (from HasCallStack):
- error, called at src/compiler/GF/Command/Commands.hs:744:43 in gf-3.10.4-EdD6fabQUzM4AhRenbxTb3:GF.Command.Commands
-A function type is expected for the expression \x -> x instead of type Int
-CallStack (from HasCallStack):
- error, called at src/compiler/GF/Command/Commands.hs:744:43 in gf-3.10.4-EdD6fabQUzM4AhRenbxTb3:GF.Command.Commands
-Expression: append (succ (succ zero)) (succ zero) (vector (succ (succ zero))) (vector (succ zero))
-Type: Vector (succ (succ (succ zero)))
-Probability: 3.532127097800926e-8
-
-Expression: <\m, n -> vector (plus m n) : (m : Nat) -> (n : Nat) -> Vector (plus m n)>
-Type: (m : Nat) -> (n : Nat) -> Vector (plus m n)
-Probability: 1.0
-
-Expression: mkMorph (\x -> succ zero)
-Type: Morph (\v0 -> succ zero)
-Probability: 0.5
-
-Expression: idMorph (mkMorph (\x -> x))
-Type: Nat
-Probability: 0.125
-
-Couldn't match expected type Morph (\v0 -> v0)
- against inferred type Morph (\v0 -> succ zero)
-In the expression: mkMorph (\x -> succ zero)
-CallStack (from HasCallStack):
- error, called at src/compiler/GF/Command/Commands.hs:744:43 in gf-3.10.4-EdD6fabQUzM4AhRenbxTb3:GF.Command.Commands
-Expression: Vector (succ zero) -> Vector (succ zero)>
-Type: Vector zero -> Vector (succ zero) -> Vector (succ zero)
-Probability: 1.0
-
-Expression: <\n, v1, n1, v2 -> append n n1 v1 v2 : (n : Nat) -> Vector n -> (m : Nat) -> Vector m -> Vector (plus n m)>
-Type: (n : Nat) -> Vector n -> (m : Nat) -> Vector m -> Vector (plus n m)
-Probability: 1.0
-
-Category EQ is not in scope
-CallStack (from HasCallStack):
- error, called at src/compiler/GF/Command/Commands.hs:744:43 in gf-3.10.4-EdD6fabQUzM4AhRenbxTb3:GF.Command.Commands
-Expression: <\v1, v2 -> cmpVector ?7 v1 v2 : Vector ?7 -> Vector ?7 -> Int> (vector ?7)
-Type: Vector ?7 -> Int
-Probability: 0.3333333333333333
-
-Couldn't match expected type (m : Nat) -> Vector ?1
- against inferred type (n : Nat) -> Vector n
-In the expression: vector
-CallStack (from HasCallStack):
- error, called at src/compiler/GF/Command/Commands.hs:744:43 in gf-3.10.4-EdD6fabQUzM4AhRenbxTb3:GF.Command.Commands
-Expression: f1 (\v -> v) vector
-Type: Int
-Probability: 5.555555555555555e-2
-
-Expression: f1 (\v -> succ v) (\x -> vector (succ x))
-Type: Int
-Probability: 0.16666666666666666
-
-Couldn't match expected type Vector x
- against inferred type Vector (succ x)
-In the expression: vector (succ x)
-CallStack (from HasCallStack):
- error, called at src/compiler/GF/Command/Commands.hs:744:43 in gf-3.10.4-EdD6fabQUzM4AhRenbxTb3:GF.Command.Commands
-Couldn't match expected type Vector n
- against inferred type Vector (succ n)
-In the expression: vector (succ n)
-CallStack (from HasCallStack):
- error, called at src/compiler/GF/Command/Commands.hs:744:43 in gf-3.10.4-EdD6fabQUzM4AhRenbxTb3:GF.Command.Commands
-Expression: h ?2 (u0 ?2)
-Type: Int
-Probability: 8.333333333333333e-2
-
-Couldn't match expected type U ?2 ?2
- against inferred type U ?2 (succ ?2)
-In the expression: u1 ?2
-CallStack (from HasCallStack):
- error, called at src/compiler/GF/Command/Commands.hs:744:43 in gf-3.10.4-EdD6fabQUzM4AhRenbxTb3:GF.Command.Commands
-Meta variable(s) ?11 should be resolved
-in the expression: cmpVector (succ (succ zero)) (vector (succ (succ zero))) (append ?11 (succ zero) (vector ?11) (vector (succ zero)))
-CallStack (from HasCallStack):
- error, called at src/compiler/GF/Command/Commands.hs:744:43 in gf-3.10.4-EdD6fabQUzM4AhRenbxTb3:GF.Command.Commands
-Expression: diff (succ (succ (succ zero))) (succ (succ zero)) (vector (succ (succ (succ (succ (succ zero)))))) (vector (succ (succ (succ zero))))
-Type: Vector (succ (succ zero))
-Probability: 2.1558392930913853e-12
-
-Couldn't match expected type Vector (plus (succ (succ (succ zero))) (succ (succ zero)))
- against inferred type Vector (succ (succ (succ (succ zero))))
-In the expression: vector (succ (succ (succ (succ zero))))
-CallStack (from HasCallStack):
- error, called at src/compiler/GF/Command/Commands.hs:744:43 in gf-3.10.4-EdD6fabQUzM4AhRenbxTb3:GF.Command.Commands
-Expression: idMorph (mkMorph2 (\x -> x) (vector zero))
-Type: Nat
-Probability: 1.0416666666666666e-2
-
-Couldn't match expected type Vector zero
- against inferred type Vector n
-In the expression: x
-CallStack (from HasCallStack):
- error, called at src/compiler/GF/Command/Commands.hs:744:43 in gf-3.10.4-EdD6fabQUzM4AhRenbxTb3:GF.Command.Commands
+Couldn't match expected type Nat
+ against inferred type String
+In the expression: "0"
+Category Int should have 0 argument(s), but has been given 1
+In the type: Int 0
+A function type is expected for the expression 1 instead of type Int
+Couldn't match expected type Int -> Int
+ against inferred type Int
+In the expression: 1
+unknown category of function identifier unknown_fun
+
+Category unknown_cat is not in scope
+Cannot infer the type of expression \x -> x
+A function type is expected for the expression \x -> x instead of type Int
+Expression: append (succ (succ zero)) (succ zero) (vector (succ (succ zero))) (vector (succ zero))
+Type: Vector (succ (succ (succ zero)))
+Probability: 3.532127097800926e-8
+
+Expression: <\m, n -> vector (plus m n) : (m : Nat) -> (n : Nat) -> Vector (plus m n)>
+Type: (m : Nat) -> (n : Nat) -> Vector (plus m n)
+Probability: 1.0
+
+Expression: mkMorph (\x -> succ zero)
+Type: Morph (\v0 -> succ zero)
+Probability: 0.5
+
+Expression: idMorph (mkMorph (\x -> x))
+Type: Nat
+Probability: 0.125
+
+Couldn't match expected type Morph (\v0 -> v0)
+ against inferred type Morph (\v0 -> succ zero)
+In the expression: mkMorph (\x -> succ zero)
+Expression: Vector (succ zero) -> Vector (succ zero)>
+Type: Vector zero -> Vector (succ zero) -> Vector (succ zero)
+Probability: 1.0
+
+Expression: <\n, v1, n1, v2 -> append n n1 v1 v2 : (n : Nat) -> Vector n -> (m : Nat) -> Vector m -> Vector (plus n m)>
+Type: (n : Nat) -> Vector n -> (m : Nat) -> Vector m -> Vector (plus n m)
+Probability: 1.0
+
+Category EQ is not in scope
+Expression: <\v1, v2 -> cmpVector ?7 v1 v2 : Vector ?7 -> Vector ?7 -> Int> (vector ?7)
+Type: Vector ?7 -> Int
+Probability: 0.3333333333333333
+
+Couldn't match expected type (m : Nat) -> Vector ?1
+ against inferred type (n : Nat) -> Vector n
+In the expression: vector
+Expression: f1 (\v -> v) vector
+Type: Int
+Probability: 5.555555555555555e-2
+
+Expression: f1 (\v -> succ v) (\x -> vector (succ x))
+Type: Int
+Probability: 0.16666666666666666
+
+Couldn't match expected type Vector x
+ against inferred type Vector (succ x)
+In the expression: vector (succ x)
+Couldn't match expected type Vector n
+ against inferred type Vector (succ n)
+In the expression: vector (succ n)
+Expression: h ?2 (u0 ?2)
+Type: Int
+Probability: 8.333333333333333e-2
+
+Couldn't match expected type U ?2 ?2
+ against inferred type U ?2 (succ ?2)
+In the expression: u1 ?2
+Meta variable(s) ?11 should be resolved
+in the expression: cmpVector (succ (succ zero)) (vector (succ (succ zero))) (append ?11 (succ zero) (vector ?11) (vector (succ zero)))
+Expression: diff (succ (succ (succ zero))) (succ (succ zero)) (vector (succ (succ (succ (succ (succ zero)))))) (vector (succ (succ (succ zero))))
+Type: Vector (succ (succ zero))
+Probability: 2.1558392930913853e-12
+
+Couldn't match expected type Vector (plus (succ (succ (succ zero))) (succ (succ zero)))
+ against inferred type Vector (succ (succ (succ (succ zero))))
+In the expression: vector (succ (succ (succ (succ zero))))
+Expression: idMorph (mkMorph2 (\x -> x) (vector zero))
+Type: Nat
+Probability: 1.0416666666666666e-2
+
+Couldn't match expected type Vector zero
+ against inferred type Vector n
+In the expression: x