Skip to content

Instantly share code, notes, and snippets.

@Whateverable
Created December 6, 2018 04:03
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/0cd69289660823a5eae56e58e4add93a to your computer and use it in GitHub Desktop.
Save Whateverable/0cd69289660823a5eae56e58e4add93a to your computer and use it in GitHub Desktop.
bisectable6
old=2018.10 new=HEAD class C { has $!a }; C.^add_multi_method: "a", method () is rw { self.^attributes.head.get_value: self }; C.^compose; my $c = C.new; $c.^attributes.head.set_value: $c, Proxy.new: FETCH => method { say "FETCH" }, STORE => method (|) { say "STORE" }; say $c.a; $c.a = 42
Bisecting: 102 revisions left to test after this (roughly 7 steps)
[c50cf82afc67f1a7c464dad69e4c3d810243e86d] An initial stab at handling <<op=>> faster
»»»»» Testing c50cf82afc67f1a7c464dad69e4c3d810243e86d
»»»»» Script output:
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
True
STORE
»»»»» 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 19f0c842765726fbd65285acfd8870a79709a378
»»»»» Script output:
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
True
STORE
»»»»» 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 68b44e33b7ffae8526bf6efc797d596d184ead13
»»»»» Script output:
FETCH
Cannot modify an immutable Bool (True)
in block <unit> at /tmp/1bONxxibEF line 1
FETCH
FETCH
True
FETCH
»»»»» 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 5720ef223f4ef1cebbc64984d9a3169392b88f97
»»»»» Script output:
FETCH
Cannot modify an immutable Bool (True)
in block <unit> at /tmp/1bONxxibEF line 1
FETCH
FETCH
True
FETCH
»»»»» 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 7262b4e840fb8148e2f66ecf8fff5951c11f160e
»»»»» Script output:
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
True
STORE
»»»»» 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 50f0fce9b5e0167ade5efc2601f26dd74ea503c1
»»»»» Script output:
FETCH
Cannot modify an immutable Bool (True)
in block <unit> at /tmp/1bONxxibEF line 1
FETCH
FETCH
True
FETCH
»»»»» 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 7d37f9aaf0ef0290709679568dac0b6110c43506
»»»»» Script output:
FETCH
Cannot modify an immutable Bool (True)
in block <unit> at /tmp/1bONxxibEF line 1
FETCH
FETCH
True
FETCH
»»»»» 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 49f07abe99508d3fe3f9777ac78f0b676d41438b
»»»»» Script output:
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
FETCH
True
STORE
»»»»» 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”
»»»»» -------------------------------------------------------------------------
7d37f9aaf0ef0290709679568dac0b6110c43506 is the first new commit
commit 7d37f9aaf0ef0290709679568dac0b6110c43506
Author: Jonathan Worthington <jnthn@jnthn.net>
Date: Mon Nov 19 16:44:33 2018 +0100
Give 6.d correct `is rw` Proxy semantics
We had a long-standing bug where Proxy would not be decontainerized
when returning from a routine. This behavior should only apply for `is
rw` routines, but accidentally applied to all of them. This was fixed
while changing decontrv handling to use a spesh plugin, but it turned
out some modules depended on the wrong behavior, so the bug was then
emulated in the spesh plugin.
With the first 6.d-supporting release, we'll take the opportunity to
have the fix in 6.d, while compiling programs doing `use v6.c` to use
the previous buggy behavior.
This resolves issue #2113.
:040000 040000 9e840441f92dedbbd2784dc642035ea9a7a0f0ef 52ef6e38506b21df6ff64c6e3cd8a4649dce7fc5 M src
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment