Skip to content

Instantly share code, notes, and snippets.

@Whateverable
Created January 29, 2020 18:48
Show Gist options
  • Save Whateverable/a590b13bf7bc56587119400bf67855ad to your computer and use it in GitHub Desktop.
Save Whateverable/a590b13bf7bc56587119400bf67855ad to your computer and use it in GitHub Desktop.
bisectable6
$/ := 42; dd /./.ACCEPTS("a")
Bisecting: 5536 revisions left to test after this (roughly 13 steps)
[b16aba019b31d1616931e09fb72fe96fed48d953] Optimize recursion handling in Lock::Async
»»»»» Testing b16aba019b31d1616931e09fb72fe96fed48d953
»»»»» Script output:
Cannot modify an immutable Int (42)
in block <unit> at /tmp/IrWIKkn_i2 line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 5fe0140cfd4dbacd3a696aaefedc8ad30e6a6269
»»»»» Script output:
Cannot modify an immutable Int (42)
in block <unit> at /tmp/IrWIKkn_i2 line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 1112988024e3be231afef5742965e5daa424e4dd
»»»»» Script output:
Cannot modify an immutable Int (42)
in block <unit> at /tmp/IrWIKkn_i2 line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 4a76778c5210183757640c9bf4f71da680f29184
»»»»» Script output:
Cannot modify an immutable Int (42)
in block <unit> at /tmp/IrWIKkn_i2 line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 aeb10ef5d82d8cab30e33d6d0ea6566ac2ca2653
»»»»» Script output:
Cannot modify an immutable Int (42)
in block <unit> at /tmp/IrWIKkn_i2 line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 5d5701171f2376c39e9f46344935339ecdf748f5
»»»»» Script output:
Cannot modify an immutable Int (42)
in block <unit> at /tmp/IrWIKkn_i2 line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 06db4c249972e5e5e769927fed7aa0586950203b
»»»»» Script output:
Cannot modify an immutable Int (42)
in block <unit> at /tmp/IrWIKkn_i2 line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 ca49dcbd57c26bbf9fb544ed81d14c2574f84eae
»»»»» Script output:
Cannot modify an immutable Int (42)
in block <unit> at /tmp/IrWIKkn_i2 line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 547c7b94e518c30fcaa9ab0fc316247bdfc5594e
»»»»» Script output:
Cannot modify an immutable Int (42)
in block <unit> at /tmp/IrWIKkn_i2 line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 dfb563af782fb93935e1dc74a8dbd512d25b626f
»»»»» Script output:
Cannot modify an immutable Int (42)
in block <unit> at /tmp/IrWIKkn_i2 line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 749ab904f2b8ad44c47877fc81aa31d7d49055fb
»»»»» Script output:
Cannot modify an immutable Int (42)
in block <unit> at /tmp/IrWIKkn_i2 line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 a08f04395345ff9f51b93f6fa11b4239b7ba6562
»»»»» Script output:
Cannot modify an immutable Int (42)
in block <unit> at /tmp/IrWIKkn_i2 line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 d18c69b2bc81c777c26dc658f107949a29920284
»»»»» Script output:
Cannot modify an immutable Int (42)
in block <unit> at /tmp/IrWIKkn_i2 line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “old”
b777d6ff61e52232a784724ec5b6f855b5e50813 is the first new commit
commit b777d6ff61e52232a784724ec5b6f855b5e50813
Author: Elizabeth Mattijsen <liz@wenzperl.nl>
Date: Wed Jan 29 12:14:13 2020 +0100
Regex.ACCEPTS should not assume $/ is a container
Since https://github.com/rakudo/rakudo/commit/d8e859d000 an
nqp::istype is done during creation of a BUILDPLAN for a class.
In some cases, specifically when the constraint on an attribute
is a subtype, this meant calling Regex.ACCEPTS at compile time.
However, at that point in time, the nearest $/ is an immutable
Perl6::Grammar object, causing an exception to be thrown.
This commit rewrites the Regex.ACCEPTS(Any) logic to check whether
the nearest $/ is actually a container, and only sets $/ if it can.
The opportunity to rewrite using ternaries was also taken.
This fixes the breakage of e.g. the URI module in the ecosystem
as spotted by vrurg++.
:040000 040000 4d3f7d14decfac0b967f4bb8271a5570f5cccb3c 98d78df892f2678e420ecb182a1e025734c2d6d9 M src
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment