diff options
-rw-r--r-- | testsuite/tests/typing-gadts/pr6163.ml.principal.reference | 18 | ||||
-rw-r--r-- | testsuite/tests/typing-gadts/pr6163.ml.reference | 18 |
2 files changed, 36 insertions, 0 deletions
diff --git a/testsuite/tests/typing-gadts/pr6163.ml.principal.reference b/testsuite/tests/typing-gadts/pr6163.ml.principal.reference index e69de29bb..0b771dc76 100644 --- a/testsuite/tests/typing-gadts/pr6163.ml.principal.reference +++ b/testsuite/tests/typing-gadts/pr6163.ml.principal.reference @@ -0,0 +1,18 @@ + +# type _ nat = Zero : [ `Zero ] nat | Succ : 'a nat -> [ `Succ of 'a ] nat +# type 'a pre_nat = [ `Succ of 'a | `Zero ] +# type aux = + Aux : + [ `Succ of [< [< [< [ `Zero ] pre_nat ] pre_nat ] pre_nat ] ] nat -> + aux +# Characters 19-157: + ..match x with + | Succ Zero -> "1" + | Succ (Succ Zero) -> "2" + | Succ (Succ (Succ Zero)) -> "3" + | Succ (Succ (Succ (Succ Zero))) -> "4" +Warning 8: this pattern-matching is not exhaustive. +Here is an example of a value that is not matched: +Succ (Succ (Succ (Succ (Succ _)))) +val f : aux -> string = <fun> +# diff --git a/testsuite/tests/typing-gadts/pr6163.ml.reference b/testsuite/tests/typing-gadts/pr6163.ml.reference index e69de29bb..0b771dc76 100644 --- a/testsuite/tests/typing-gadts/pr6163.ml.reference +++ b/testsuite/tests/typing-gadts/pr6163.ml.reference @@ -0,0 +1,18 @@ + +# type _ nat = Zero : [ `Zero ] nat | Succ : 'a nat -> [ `Succ of 'a ] nat +# type 'a pre_nat = [ `Succ of 'a | `Zero ] +# type aux = + Aux : + [ `Succ of [< [< [< [ `Zero ] pre_nat ] pre_nat ] pre_nat ] ] nat -> + aux +# Characters 19-157: + ..match x with + | Succ Zero -> "1" + | Succ (Succ Zero) -> "2" + | Succ (Succ (Succ Zero)) -> "3" + | Succ (Succ (Succ (Succ Zero))) -> "4" +Warning 8: this pattern-matching is not exhaustive. +Here is an example of a value that is not matched: +Succ (Succ (Succ (Succ (Succ _)))) +val f : aux -> string = <fun> +# |