Kaiepi / ra-Trait-Traced

Automagic tracing

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Failures get thrown when outputting to standard streams

Kaiepi opened this issue · comments

Standard stream output relies on the gist method. This means that when a traced routine returns a failure when outputting to standard streams:

sub foo is traced { fail 'oops!' }();

It will always get thrown:

1 ROUTINE CALL [1 @ 1579967725.429901]
<== sub foo (GLOBAL)
!!! X::AdHoc
oops!
  in sub foo at test.raku line 5
  in sub foo at /home/morfent/Documents/p6-Trait-Traced/lib/Traced/Routine.pm6 (Traced::Routine) line 157
  in block <unit> at test.raku line 5

This would also happen for routine arguments and stash values. There needs to be a proper way of dealing with outputting failures when outputting to standard streams.

Fixed with 2977c53