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


The code in Failure.pm has:

    # "Shouldn't happen."  We use note here because the dynamic scope in GC is 
likely meaningless.
    submethod DESTROY () { if not $!handled { note "WARNING: unhandled Failure 
detected in DESTROY:\n" ~ self.mess } }

However, it does happen with this code:
    my $matcher = *.so;
    say eager grep $matcher, gather with CORE:: -> $c {
        with &?BLOCK -> &dig {
            for $c.keys.grep(* ne 'IterationEnd') {
                take $c.{$_};
                $c.{$_}.WHO.keys and dig $c.{$_};
            }
        }
    }

Output:

    zoffix@VirtualBox:~$ perl6 /tmp/z.map.p6 
    WARNING: unhandled Failure detected in DESTROY:
    Type SocketType does not support associative indexing.
      in block  at /tmp/z.map.p6 line 6
      in code  at /tmp/z.map.p6 line 3
      in block <unit> at /tmp/z.map.p6 line 2

    WARNING: unhandled Failure detected in DESTROY:
    Type PromiseStatus does not support associative indexing.
      in block  at /tmp/z.map.p6 line 6
      in code  at /tmp/z.map.p6 line 3
      in block <unit> at /tmp/z.map.p6 line 2

    WARNING: unhandled Failure detected in DESTROY:
    Type Signal does not support associative indexing.
      in block  at /tmp/z.map.p6 line 6
      in code  at /tmp/z.map.p6 line 3
      in block <unit> at /tmp/z.map.p6 line 2

    WARNING: unhandled Failure detected in DESTROY:
    Type Signal does not support associative indexing.
      in block  at /tmp/z.map.p6 line 6
      in code  at /tmp/z.map.p6 line 3
      in block <unit> at /tmp/z.map.p6 line 2

    Cannot find method 'keys': no method cache and no .^find_method
      in block  at /tmp/z.map.p6 line 6
      in code  at /tmp/z.map.p6 line 3
      in block <unit> at /tmp/z.map.p6 line 2

    zoffix@VirtualBox:~$ perl6 /tmp/z.map.p6 
    Cannot find method 'keys': no method cache and no .^find_method
      in block  at /tmp/z.map.p6 line 6
      in code  at /tmp/z.map.p6 line 3
      in block <unit> at /tmp/z.map.p6 line 2

    zoffix@VirtualBox:~$ 

    zoffix@VirtualBox:~$ perl6 -v
    This is Rakudo version 2017.02-72-g3de7b08 built on MoarVM version 
2017.02-7-g3d85900
    implementing Perl 6.c.
    zoffix@VirtualBox:~$ 

Reply via email to