On Mon, 09 Feb 2015 06:35:57 -0800, elizabeth wrote:
> [15:31:47] <lizmat> m: sub a(Int(Cool:D) $a) { say $a }; a Cool
> # feels this should fail
> [15:31:48] <+camelia> rakudo-moar d29715: OUTPUT«use of
> uninitialized value of type Cool in numeric context in sub a at
> /tmp/L77KWsiM9N:10»
> [15:32:03] <lizmat> or complain about the :D in the coercer
> [15:32:16] <lizmat> std: sub a(Int(Cool:D) $a) { say $a }; a Cool
> [15:32:18] <+camelia> std f9b7f55: OUTPUT«ok 00:01 141m»
> [15:33:06] <lizmat> m: sub a(Cool:D $a as Int) { say $a }; a Cool
> # should fail like this
> [15:33:06] <+camelia> rakudo-moar d29715: OUTPUT«Parameter '$a'
> requires an instance, but a type object was passed in sub a at
> /tmp/D5UepJwrRP:1 in block <unit> at /tmp/D5UepJwrRP:1»
> [15:33:30] <timotimo> sounds reasonable to me, maybe someone could
> rakudobug it
> [15:33:50] <lizmat> I will
> [15:34:12] <jnthn> lizmat: Yeah...which in turn really wants
> definedness types to become first class too...
Some cases of this work now, and the rest are covered by RT#126433.
Tests were rearranged to reflect this in roast commit 574035ff4,
so resolving this ticket and leaving RT#126433 for the outstanding issues.