shithub: mc

ref: 8317e87e7b6f9a15ff41f9f7293ef46dc208d0d7
dir: /test/generictype.myr/

View raw version
use std

/* checks that parameterized types work. exits with 0. */
type option(@a::(integral,numeric)) = union
	`Some @a::(integral,numeric)
	`None
;;

const main = {
	var v

	v = `Some 123
	match v
	| `None:	std.exit(1)
	| `Some 123:	std.exit(0)
	| `Some _:	std.die("Impossible match failure\n")
	;;
	std.exit(60)
}