Skip to content

Instantly share code, notes, and snippets.

@Whateverable
Created February 11, 2022 15:41
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/b6a0a74f8f395d9631a2a18ffe9e9877 to your computer and use it in GitHub Desktop.
Save Whateverable/b6a0a74f8f395d9631a2a18ffe9e9877 to your computer and use it in GitHub Desktop.
bisectable6
multi sub foo(Int:D(Cool:D) $foo) { dd $foo }; foo("1")
Bisecting: 145 revisions left to test after this (roughly 7 steps)
[014f1712c66f2bf29b89246065eb344aea87c336] Make |(1,2,3) xx 42 about 3x faster
»»»»» Testing 014f1712c66f2bf29b89246065eb344aea87c336
»»»»» Script output:
===SORRY!=== Error while compiling /tmp/Pzs991a1dC
Calling foo(Str) will never work with any of these multi signatures:
(Cool:D:D $foo)
at /tmp/Pzs991a1dC:1
------> ub foo(Int:D(Cool:D) $foo) { dd $foo }; ⏏foo("1")
»»»»» Script exit code: 1
»»»»» Bisecting by output
»»»»» Output on “old” revision is:
===SORRY!=== Error while compiling /tmp/Pzs991a1dC
Calling foo(Str) will never work with any of these multi signatures:
(Int:D $foo)
at /tmp/Pzs991a1dC:1
------> ub foo(Int:D(Cool:D) $foo) { dd $foo }; ⏏foo("1")
»»»»» The output is different
»»»»» Therefore, marking this revision as “new”
»»»»» -------------------------------------------------------------------------
»»»»» Testing e543c890ad58d4c707f734035532090e418a379a
»»»»» Script output:
===SORRY!=== Error while compiling /tmp/Pzs991a1dC
Calling foo(Str) will never work with any of these multi signatures:
(Int:D $foo)
at /tmp/Pzs991a1dC:1
------> ub foo(Int:D(Cool:D) $foo) { dd $foo }; ⏏foo("1")
»»»»» Script exit code: 1
»»»»» Bisecting by output
»»»»» Output on “old” revision is:
===SORRY!=== Error while compiling /tmp/Pzs991a1dC
Calling foo(Str) will never work with any of these multi signatures:
(Int:D $foo)
at /tmp/Pzs991a1dC:1
------> ub foo(Int:D(Cool:D) $foo) { dd $foo }; ⏏foo("1")
»»»»» The output is identical
»»»»» Therefore, marking this revision as “old”
»»»»» -------------------------------------------------------------------------
»»»»» Testing 038b1ea7601618009ec0fb0018ce259ce4993206
»»»»» Script output:
===SORRY!=== Error while compiling /tmp/Pzs991a1dC
Calling foo(Str) will never work with any of these multi signatures:
(Cool:D:D $foo)
at /tmp/Pzs991a1dC:1
------> ub foo(Int:D(Cool:D) $foo) { dd $foo }; ⏏foo("1")
»»»»» Script exit code: 1
»»»»» Bisecting by output
»»»»» Output on “old” revision is:
===SORRY!=== Error while compiling /tmp/Pzs991a1dC
Calling foo(Str) will never work with any of these multi signatures:
(Int:D $foo)
at /tmp/Pzs991a1dC:1
------> ub foo(Int:D(Cool:D) $foo) { dd $foo }; ⏏foo("1")
»»»»» The output is different
»»»»» Therefore, marking this revision as “new”
»»»»» -------------------------------------------------------------------------
»»»»» Testing b3e73b64a28ff72a4a8e34a4d20d2575769bfc7d
»»»»» Script output:
===SORRY!=== Error while compiling /tmp/Pzs991a1dC
Calling foo(Str) will never work with any of these multi signatures:
(Int:D $foo)
at /tmp/Pzs991a1dC:1
------> ub foo(Int:D(Cool:D) $foo) { dd $foo }; ⏏foo("1")
»»»»» Script exit code: 1
»»»»» Bisecting by output
»»»»» Output on “old” revision is:
===SORRY!=== Error while compiling /tmp/Pzs991a1dC
Calling foo(Str) will never work with any of these multi signatures:
(Int:D $foo)
at /tmp/Pzs991a1dC:1
------> ub foo(Int:D(Cool:D) $foo) { dd $foo }; ⏏foo("1")
»»»»» The output is identical
»»»»» Therefore, marking this revision as “old”
»»»»» -------------------------------------------------------------------------
»»»»» Testing 96a3582c4473bf325731764e4ec4c543890454f6
»»»»» Script output:
===SORRY!=== Error while compiling /tmp/Pzs991a1dC
Calling foo(Str) will never work with any of these multi signatures:
(Cool:D:D $foo)
at /tmp/Pzs991a1dC:1
------> ub foo(Int:D(Cool:D) $foo) { dd $foo }; ⏏foo("1")
»»»»» Script exit code: 1
»»»»» Bisecting by output
»»»»» Output on “old” revision is:
===SORRY!=== Error while compiling /tmp/Pzs991a1dC
Calling foo(Str) will never work with any of these multi signatures:
(Int:D $foo)
at /tmp/Pzs991a1dC:1
------> ub foo(Int:D(Cool:D) $foo) { dd $foo }; ⏏foo("1")
»»»»» The output is different
»»»»» Therefore, marking this revision as “new”
»»»»» -------------------------------------------------------------------------
»»»»» Testing 6373961a5485a7b590b14e4945549d26671e0ea9
»»»»» Cannot test this commit. Reason: Commit exists, but an executable could not be built for it
»»»»» Therefore, skipping this revision
»»»»» -------------------------------------------------------------------------
»»»»» Testing 9adc58c3cb3e444f0ddca1efc646a1a56b742f3c
»»»»» Cannot test this commit. Reason: Commit exists, but an executable could not be built for it
»»»»» Therefore, skipping this revision
»»»»» -------------------------------------------------------------------------
»»»»» Testing f8d8481c995cd1b8a1411a768e090b4be2a712da
»»»»» Script output:
===SORRY!=== Error while compiling /tmp/Pzs991a1dC
Calling foo(Str) will never work with any of these multi signatures:
(Cool:D:D $foo)
at /tmp/Pzs991a1dC:1
------> ub foo(Int:D(Cool:D) $foo) { dd $foo }; ⏏foo("1")
»»»»» Script exit code: 1
»»»»» Bisecting by output
»»»»» Output on “old” revision is:
===SORRY!=== Error while compiling /tmp/Pzs991a1dC
Calling foo(Str) will never work with any of these multi signatures:
(Int:D $foo)
at /tmp/Pzs991a1dC:1
------> ub foo(Int:D(Cool:D) $foo) { dd $foo }; ⏏foo("1")
»»»»» The output is different
»»»»» Therefore, marking this revision as “new”
»»»»» -------------------------------------------------------------------------
»»»»» Testing fc99d5e1cd4ae2725a3db186ceb720c23585a5e8
»»»»» Script output:
===SORRY!=== Error while compiling /tmp/Pzs991a1dC
Calling foo(Str) will never work with any of these multi signatures:
(Cool:D:D $foo)
at /tmp/Pzs991a1dC:1
------> ub foo(Int:D(Cool:D) $foo) { dd $foo }; ⏏foo("1")
»»»»» Script exit code: 1
»»»»» Bisecting by output
»»»»» Output on “old” revision is:
===SORRY!=== Error while compiling /tmp/Pzs991a1dC
Calling foo(Str) will never work with any of these multi signatures:
(Int:D $foo)
at /tmp/Pzs991a1dC:1
------> ub foo(Int:D(Cool:D) $foo) { dd $foo }; ⏏foo("1")
»»»»» The output is different
»»»»» Therefore, marking this revision as “new”
»»»»» -------------------------------------------------------------------------
»»»»» Testing 8dcf9dac135539653676eb35ded613eb59abfbe9
»»»»» Script output:
===SORRY!=== Error while compiling /tmp/Pzs991a1dC
Calling foo(Str) will never work with any of these multi signatures:
(Cool:D:D $foo)
at /tmp/Pzs991a1dC:1
------> ub foo(Int:D(Cool:D) $foo) { dd $foo }; ⏏foo("1")
»»»»» Script exit code: 1
»»»»» Bisecting by output
»»»»» Output on “old” revision is:
===SORRY!=== Error while compiling /tmp/Pzs991a1dC
Calling foo(Str) will never work with any of these multi signatures:
(Int:D $foo)
at /tmp/Pzs991a1dC:1
------> ub foo(Int:D(Cool:D) $foo) { dd $foo }; ⏏foo("1")
»»»»» The output is different
»»»»» Therefore, marking this revision as “new”
»»»»» -------------------------------------------------------------------------
»»»»» Testing a177fa99cbb08387dd3186a25b4c65ed6f00048c
»»»»» Script output:
===SORRY!=== Error while compiling /tmp/Pzs991a1dC
Calling foo(Str) will never work with any of these multi signatures:
(Cool:D:D $foo)
at /tmp/Pzs991a1dC:1
------> ub foo(Int:D(Cool:D) $foo) { dd $foo }; ⏏foo("1")
»»»»» Script exit code: 1
»»»»» Bisecting by output
»»»»» Output on “old” revision is:
===SORRY!=== Error while compiling /tmp/Pzs991a1dC
Calling foo(Str) will never work with any of these multi signatures:
(Int:D $foo)
at /tmp/Pzs991a1dC:1
------> ub foo(Int:D(Cool:D) $foo) { dd $foo }; ⏏foo("1")
»»»»» The output is different
»»»»» Therefore, marking this revision as “new”
a177fa99cbb08387dd3186a25b4c65ed6f00048c is the first new commit
commit a177fa99cbb08387dd3186a25b4c65ed6f00048c
Author: Zoffix Znet <cpan@zoffix.com>
Date: Tue Jan 2 05:33:52 2018 -0500
Parse DefiniteHOWs as target type in coercers
We parse type smileys with <colonpair>s, which makes Int:D(Cool)
appear as Int with colonpair :D(Cool). We only care about the keys
of those colonpairs, so we end up thinking it's just a plain
DefiniteHOW without any coercer bits.
Fix by gutting the type-smiley Pair objects for WVals and using
them to make coercers. Originally tried to fix this by making
a separate type-smiley token, which works for parameters, but
conflicts with colonpair longnames in term:<name>s.
:040000 040000 e01bffe475cf28162109abf5f9aeb692f0274998 b481b2ebfcee5d8cf1159a22d0f26f5650422fc4 M src
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment