# New Ticket Created by Mark Montague
# Please include the string: [perl #69991]
# in the subject line of all future correspondence about this issue.
# URL: http://rt.perl.org/rt3/Ticket/Display.html?id=69991
Exceptions from src/builtins/io.pir (and possibly elsewhere) are not
being properly thrown:
diff --git a/src/builtins/io.pir b/src/builtins/io.pir
index 69cdf88..10fe7e8 100644
--- a/src/builtins/io.pir
+++ b/src/builtins/io.pir
@@ -172,6 +172,7 @@ true value is returned.
failure:
pop_eh
+print parrot exception for chdir caught\n
.tailcall '!FAIL'('Unable to change to directory ', newdir, '')
.end
$ ./perl6 -e 'try { chdir(/no/such/directory); CATCH { say caught; } }'
parrot exception for chdir caught
$
The above should also have said caught but did not. The same thing
happens for mkdir():
$ ./perl6 -e 'try { mkdir(/no/such/directory); CATCH { say caught; } }'
$
However, this works:
$ ./perl6 -e 'try { fail(oh noes); CATCH { say caught; } }'
caught
$
Extra info:
$ git pull
Already up-to-date.
$ git rev-parse HEAD
501b4fb08ece44433e2bbedba0ef13e3e523f883
$ parrot_config VERSION # built and installed separately from rakudo
1.7.0
Mark Montague
markm...@umich.edu