So is the current behavior good or bad? On 2014-10-15 05:16:27, barto...@gmx.de wrote: > The current behaviour is: > > $ perl6-m -e 'my %h{Any}; %h<a>=Any; %h<a> //= "a"; say %h.perl' > Hash[Any,Any].new("a" => "a") > > $ perl6-m -e 'my %h{Any}; %h<a> //= "a"; say %h.perl' > Hash[Any,Any].new("a" => "a") > > $ perl6-m -e 'my $froms= do { my %h{Any} of Hash; %h }; $froms<a>=Any; > $froms<a> //= do { my %h{Any} of Hash; %h }; say $froms;' ## formerly > marked as "works" > Type check failed in assignment to '%h'; expected 'Hash' but got 'Any' > in method assign_key at src/gen/m-CORE.setting:10342 > in sub postcircumfix:<{ }> at src/gen/m-CORE.setting:2875 > in block <unit> at -e:1 > > $ perl6-m -e 'my $froms= do { my %h{Any} of Hash; %h }; $froms<a> //= > do { my %h{Any} of Hash; %h }; say $froms.perl' > Hash[Any,Any].new("a" => Hash[Any,Any].new()) > > $ perl6-m -e '(my %h{Any} of Hash){Any} //= my %; say %h.perl' > Hash[Any,Any].new(Any => {})
[perl #118023] [BUG] typed hashes and metaops and slots, oh my, in Rakudo
Aleks-Daniel Jakimenko-Aleksejev via RT Sun, 03 Dec 2017 03:30:59 -0800