Skip to content

Instantly share code, notes, and snippets.

@Whateverable
Created December 18, 2016 14:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Whateverable/34a9fd70b4e72ef900095e83c4ce29af to your computer and use it in GitHub Desktop.
Save Whateverable/34a9fd70b4e72ef900095e83c4ce29af to your computer and use it in GitHub Desktop.
bisectable6
old=2015.11 my &block = { say 'returning from &block'; return }; sub returned-from(&code) { say 'enter returned-from'; code; say 'leave returned-from' }; sub forcing-a-return { returned-from &block }; forcing-a-return;
Bisecting: 1801 revisions left to test after this (roughly 11 steps)
[ad33bb6bd0f51c0d40b32c08fba93f1778ecf122] [release] Add my release to history releases
»»»»» Testing ad33bb6bd0f51c0d40b32c08fba93f1778ecf122
»»»»» Script output:
enter returned-from
returning from &block
Attempt to return outside of any Routine
in block <unit> at /tmp/ccnrzR0hmT line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 0
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “new”
»»»»» -------------------------------------------------------------------------
»»»»» Testing 511854ada2d8ecbdabb6d7ed03ff9d65b82ffb8f
»»»»» Script output:
enter returned-from
returning from &block
Attempt to return outside of any Routine
in block <unit> at /tmp/ccnrzR0hmT line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 0
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “new”
»»»»» -------------------------------------------------------------------------
»»»»» Testing dc78af2d78f9cef7ee7218d6df17ff7240668d69
»»»»» Cannot test this commit. Reason: Commit exists, but a perl6 executable could not be built for it
»»»»» Therefore, skipping this revision
»»»»» -------------------------------------------------------------------------
»»»»» Testing 3568c1ebf0789e330e7052e4418b2181467ea214
»»»»» Script output:
enter returned-from
returning from &block
Attempt to return outside of any Routine
in block <unit> at /tmp/ccnrzR0hmT line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 0
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “new”
»»»»» -------------------------------------------------------------------------
»»»»» Testing fadbb5434cf2f411c484f56afa5c81b1407fa92a
»»»»» Script output:
enter returned-from
returning from &block
Attempt to return outside of any Routine
in block <unit> at /tmp/ccnrzR0hmT:1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 0
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “new”
»»»»» -------------------------------------------------------------------------
»»»»» Testing 117490d2d90864f402d1885acd08f7fb18c86849
»»»»» Script output:
enter returned-from
returning from &block
»»»»» Script exit code: 0
»»»»» Bisecting by exit code
»»»»» Current exit code is 0, exit code on “old” revision is 0
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “old”
»»»»» -------------------------------------------------------------------------
»»»»» Testing 09a3e3deae81c4946afa5f1debdc351fa82c86fe
»»»»» Script output:
enter returned-from
returning from &block
Attempt to return outside of any Routine
in block <unit> at /tmp/ccnrzR0hmT:1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 0
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “new”
»»»»» -------------------------------------------------------------------------
»»»»» Testing ff4e54b678cd504622824bb103706bbb180b1cc1
»»»»» Script output:
enter returned-from
returning from &block
»»»»» Script exit code: 0
»»»»» Bisecting by exit code
»»»»» Current exit code is 0, exit code on “old” revision is 0
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “old”
»»»»» -------------------------------------------------------------------------
»»»»» Testing c0edfcbb77067ae4b97f75c72e1f590babd8771d
»»»»» Script output:
enter returned-from
returning from &block
»»»»» Script exit code: 0
»»»»» Bisecting by exit code
»»»»» Current exit code is 0, exit code on “old” revision is 0
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “old”
»»»»» -------------------------------------------------------------------------
»»»»» Testing 9511ff21cf288858b397f9dc2f7ab25f353db6fd
»»»»» Script output:
enter returned-from
returning from &block
Attempt to return outside of any Routine
in block <unit> at /tmp/ccnrzR0hmT:1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 0
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “new”
»»»»» -------------------------------------------------------------------------
»»»»» Testing 13564de7142e6c1e8841423d2e4002f641b2beea
»»»»» Script output:
enter returned-from
returning from &block
»»»»» Script exit code: 0
»»»»» Bisecting by exit code
»»»»» Current exit code is 0, exit code on “old” revision is 0
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “old”
»»»»» -------------------------------------------------------------------------
»»»»» Testing 518b46feb9ae179cf7a73220673da5b9fbb01016
»»»»» Script output:
enter returned-from
returning from &block
»»»»» Script exit code: 0
»»»»» Bisecting by exit code
»»»»» Current exit code is 0, exit code on “old” revision is 0
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “old”
»»»»» -------------------------------------------------------------------------
»»»»» Testing 2b5c41e94fa61bfa6ead92e2432152745ce49ce9
»»»»» Script output:
enter returned-from
returning from &block
»»»»» Script exit code: 0
»»»»» Bisecting by exit code
»»»»» Current exit code is 0, exit code on “old” revision is 0
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “old”
»»»»» -------------------------------------------------------------------------
»»»»» Testing a4ca12afa30be4ce5dfc3602f54a5563d069ffa5
»»»»» Script output:
enter returned-from
returning from &block
Attempt to return outside of any Routine
in block <unit> at /tmp/ccnrzR0hmT:1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 0
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “new”
»»»»» -------------------------------------------------------------------------
a4ca12afa30be4ce5dfc3602f54a5563d069ffa5 is the first new commit
commit a4ca12afa30be4ce5dfc3602f54a5563d069ffa5
Author: Jonathan Worthington <jnthn@jnthn.net>
Date: Tue Dec 1 22:45:08 2015 +0100
Fix some failures to catch return outside routine.
We actually ended up returning from the first thing we found down the
call stack that could be returned from, which led to some rather odd
behaviors. RT #123732 was a great example; this:
for ^5 { .say; NEXT { return } }
Ended up with the return binding to the run_phasers method that runs
the NEXT phasers. This also makes return a tad cheaper, and will let
us make return a multi sub too, for further performance win. But this
patch just corrects the semantics.
:040000 040000 f24fbdbb478fce6a8abb68e414ba6b9fdb49581f 35cb06b7019c34385cf758eb484ebf30f1e9482e M src
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment