# New Ticket Created by  Michael Schaap 
# Please include the string:  [perl #131599]
# in the subject line of all future correspondence about this issue. 
# <URL: https://rt.perl.org/Ticket/Display.html?id=131599 >


#!/usr/bin/env perl6

my %sum{Int} is default([]);
%sum{4}.push: "1+3";
%sum{4}.push: "2+2";

say (1..10).grep(-> $i { %sum{$i} == 2 });
# Expected output: (4)
# Actual output: (1 2 3 4 5 6 7 8 9 10)

%sum{3}.push: "1+2";

say (1..10).grep(-> $i { %sum{$i} == 2 });
# Expected output: (4)
# Actual output: ()

say %sum;
# Expected output: {3 => [1+2], 4 => [1+3 2+2]}
# Actual output: {}

say %sum{4};
# Expected output: [1+3 2+2]
# Actual output: [1+3 2+2 1+2]

# Without "is default([])" it works fine, except that the "grep" complains
# (rightly) about uninitialized values.

# % perl6 --version
# This is Rakudo version 2017.04.3 built on MoarVM version 
2017.04-53-g66c6dda
# implementing Perl 6.c.

Reply via email to