Tue Feb 25 09:13:36 2014perl [...] toby.ink - Ticket created
From:
mail [...] tobyinkster.co.uk
Tue Feb 25 09:14:35 2014perl [...] toby.ink - Subject changed from (no value) to 'Inlining/compiling of coercions which haven't been frozen'
Tue Feb 25 09:14:35 2014perl [...] toby.ink - Status changed from 'new' to 'open'
Tue Feb 25 09:14:35 2014perl [...] toby.ink - Severity Normal added
Tue Feb 25 09:17:02 2014perl [...] toby.ink - Correspondence added
These should probably never be inlined.
my $type = ...;
my $arr_of_type = ArrayRef[$type];
$arr_of_type->coerce(undef);
$type->coercion->add_type_coercions(...);
# Now $arr_of_type has no knowledge of the new
# coercions. :-(
Tue Feb 25 17:06:54 2014perl [...] toby.ink - Correspondence added
Tue Feb 25 17:06:55 2014perl [...] toby.ink - Status changed from 'open' to 'stalled'
Tue Aug 05 11:16:37 2014perl [...] toby.ink - Correspondence added
This is partially resolved by:
https://github.com/tobyink/p5-type-tiny/commit/cc1f9e1e4328ed4655714ef2a8c7d8a0b91ec1d8
This will prevent non-frozen Type::Coercion objects from advertising themselves as inlineable.
It still doesn't solve what should happen in the case of ArrayRef[$foo] and other parameterized types, where $foo later has coercions added to it. (Which is an awful, evil thing to attempt!)
Tue Aug 05 11:16:37 2014The RT System itself - Status changed from 'stalled' to 'open'
Tue Aug 05 11:16:37 2014perl [...] toby.ink - Status changed from 'open' to 'patched'
Sat Aug 16 14:13:44 2014perl [...] toby.ink - Correspondence added
Type-Tiny-1.000000 has been released, mostly resolving this.
Sat Aug 16 14:13:44 2014perl [...] toby.ink - Status changed from 'patched' to 'resolved'
Sat Aug 16 14:13:44 2014perl [...] toby.ink - Fixed in 1.000000 added