Subject: | Circular reference on Type::Coercion |
# Cycle:
# $ZZ->{'Type::Coercion(148756936)'} => \%Type::Coercion::BAB
# $Type::Coercion::BAB->{'type_coercion_map'} => \@BAC
# $BAC->[0] => \%Type::Tiny::BAD
# $Type::Tiny::BAD->{'parent'} => \%Type::Tiny::BAE
# $Type::Tiny::BAE->{'constraint_generator'} => \&BAF
# $BAF variable $meta => \$BAG
# $$BAG => \%Types::Standard::BAH
# $Types::Standard::BAH->{'types'} => \%BAJ
# $BAJ->{'ArrayRef'} => \%Type::Tiny::BAD
In other words:
The $$meta->{types}{ArrayRef} in the constraint_generator points to $type_coercion_obj->{type_coercion_map}[0]. This seems to happen on all kinds of types within $$meta->{types}{*}.
The parent connection on $type_coercion_obj->{type_coercion_map}[0]{parent} should probably be weakened.