Skip to content

Instantly share code, notes, and snippets.

@Whateverable
Created April 26, 2019 08:58
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/4f059147a9d8e0214d827a8eea06b2d4 to your computer and use it in GitHub Desktop.
Save Whateverable/4f059147a9d8e0214d827a8eea06b2d4 to your computer and use it in GitHub Desktop.
bisectable6
bad=2019.03 good=2018.04 https://gist.githubusercontent.com/taboege/500b3c4c3dc64668e2fe5f09699c7ead/raw/baea0bea966006aa2b57b0c35d248c826f5b7fb9/enter.p6
Bisecting: 1054 revisions left to test after this (roughly 10 steps)
[5fe0140cfd4dbacd3a696aaefedc8ad30e6a6269] [js] Make new comb variant support NFG
»»»»» Testing 5fe0140cfd4dbacd3a696aaefedc8ad30e6a6269
»»»»» Script output:
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Se…
»»»»» (output was trimmed because it is too large)
»»»»» Script exit code: 0
»»»»» Script exit signal: 1 (SIGHUP)
»»»»» Bisecting by exit signal
»»»»» Current exit signal is 1 (SIGHUP), exit signal on “old” revision is 1 (SIGHUP)
»»»»» Note that on “old” revision exit signal is normally 0 (None), you are probably trying to find when something was fixed
»»»»» If exit signal is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “old”
»»»»» -------------------------------------------------------------------------
»»»»» Testing cbbe16edd1015cb9894efe3d49d038bcc9526b73
»»»»» Script output:
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Se…
»»»»» (output was trimmed because it is too large)
»»»»» Script exit code: 0
»»»»» Script exit signal: 1 (SIGHUP)
»»»»» Bisecting by exit signal
»»»»» Current exit signal is 1 (SIGHUP), exit signal on “old” revision is 1 (SIGHUP)
»»»»» Note that on “old” revision exit signal is normally 0 (None), you are probably trying to find when something was fixed
»»»»» If exit signal is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “old”
»»»»» -------------------------------------------------------------------------
»»»»» Testing 922d41b3d0116c9bf67daa196db2717ec63b0b4f
»»»»» Script output:
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Se…
»»»»» (output was trimmed because it is too large)
»»»»» Script exit code: 0
»»»»» Script exit signal: 1 (SIGHUP)
»»»»» Bisecting by exit signal
»»»»» Current exit signal is 1 (SIGHUP), exit signal on “old” revision is 1 (SIGHUP)
»»»»» Note that on “old” revision exit signal is normally 0 (None), you are probably trying to find when something was fixed
»»»»» If exit signal is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “old”
»»»»» -------------------------------------------------------------------------
»»»»» Testing 50e1ec33b413a720a7a5948dbacaaf1b957faa2f
»»»»» Script output:
(Set)
set(A.new(x => 1))
set(A.new(x => 1) A.new(x => 2))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3) A.new(x => 4))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6) A.new(x => 7))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6) A.new(x => 7) A.new(x => 8))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6) A.new(x => 7) A.new(x => 8) A.new(x => 9))
set(A.new(x => 1) A.new(x => 10) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6) A.new(x => 7) A.new(x => 8) A.new(x => 9))
set(A.new(x => 1) A.new(x => 10) A.new(x => 11) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6) A.new(x => 7) A.new(x => 8) A.new(x => 9))
set(A.new(x => 1) A.new(x => 10) A.new(x => 11) A.new(x => 12) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6) A.new(x => 7) A.new(x => 8) A.new(x => 9))
»»»»» Script exit code: 0
»»»»» Bisecting by exit signal
»»»»» Current exit signal is 0 (None), exit signal on “old” revision is 1 (SIGHUP)
»»»»» Note that on “old” revision exit signal is normally 0 (None), you are probably trying to find when something was fixed
»»»»» If exit signal is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “new”
»»»»» -------------------------------------------------------------------------
»»»»» Testing f976c85e2aaea3d6918e8c1c292cc962816da760
»»»»» Script output:
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Se…
»»»»» (output was trimmed because it is too large)
»»»»» Script exit code: 0
»»»»» Script exit signal: 1 (SIGHUP)
»»»»» Bisecting by exit signal
»»»»» Current exit signal is 1 (SIGHUP), exit signal on “old” revision is 1 (SIGHUP)
»»»»» Note that on “old” revision exit signal is normally 0 (None), you are probably trying to find when something was fixed
»»»»» If exit signal is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “old”
»»»»» -------------------------------------------------------------------------
»»»»» Testing 485dec4df7bbb7367fd680e5782d3b18c93338e2
»»»»» Script output:
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Se…
»»»»» (output was trimmed because it is too large)
»»»»» Script exit code: 0
»»»»» Script exit signal: 1 (SIGHUP)
»»»»» Bisecting by exit signal
»»»»» Current exit signal is 1 (SIGHUP), exit signal on “old” revision is 1 (SIGHUP)
»»»»» Note that on “old” revision exit signal is normally 0 (None), you are probably trying to find when something was fixed
»»»»» If exit signal is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “old”
»»»»» -------------------------------------------------------------------------
»»»»» Testing 4d7cdc0f415ac887a67c07a8dd5be5b29a36ec71
»»»»» Script output:
(Set)
set(A.new(x => 1))
set(A.new(x => 1) A.new(x => 2))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3) A.new(x => 4))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6) A.new(x => 7))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6) A.new(x => 7) A.new(x => 8))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6) A.new(x => 7) A.new(x => 8) A.new(x => 9))
set(A.new(x => 1) A.new(x => 10) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6) A.new(x => 7) A.new(x => 8) A.new(x => 9))
set(A.new(x => 1) A.new(x => 10) A.new(x => 11) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6) A.new(x => 7) A.new(x => 8) A.new(x => 9))
set(A.new(x => 1) A.new(x => 10) A.new(x => 11) A.new(x => 12) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6) A.new(x => 7) A.new(x => 8) A.new(x => 9))
»»»»» Script exit code: 0
»»»»» Bisecting by exit signal
»»»»» Current exit signal is 0 (None), exit signal on “old” revision is 1 (SIGHUP)
»»»»» Note that on “old” revision exit signal is normally 0 (None), you are probably trying to find when something was fixed
»»»»» If exit signal is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “new”
»»»»» -------------------------------------------------------------------------
»»»»» Testing 541a4f1628e4e156f6eefc547938746f7b736104
»»»»» Script output:
(Set)
set(A.new(x => 1))
set(A.new(x => 1) A.new(x => 2))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3) A.new(x => 4))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6) A.new(x => 7))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6) A.new(x => 7) A.new(x => 8))
set(A.new(x => 1) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6) A.new(x => 7) A.new(x => 8) A.new(x => 9))
set(A.new(x => 1) A.new(x => 10) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6) A.new(x => 7) A.new(x => 8) A.new(x => 9))
set(A.new(x => 1) A.new(x => 10) A.new(x => 11) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6) A.new(x => 7) A.new(x => 8) A.new(x => 9))
set(A.new(x => 1) A.new(x => 10) A.new(x => 11) A.new(x => 12) A.new(x => 2) A.new(x => 3) A.new(x => 4) A.new(x => 5) A.new(x => 6) A.new(x => 7) A.new(x => 8) A.new(x => 9))
»»»»» Script exit code: 0
»»»»» Bisecting by exit signal
»»»»» Current exit signal is 0 (None), exit signal on “old” revision is 1 (SIGHUP)
»»»»» Note that on “old” revision exit signal is normally 0 (None), you are probably trying to find when something was fixed
»»»»» If exit signal is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “new”
»»»»» -------------------------------------------------------------------------
»»»»» Testing b0d5d818a983fc3b5bf2d79a3e3857626b8e3979
»»»»» Script output:
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Se…
»»»»» (output was trimmed because it is too large)
»»»»» Script exit code: 0
»»»»» Script exit signal: 1 (SIGHUP)
»»»»» Bisecting by exit signal
»»»»» Current exit signal is 1 (SIGHUP), exit signal on “old” revision is 1 (SIGHUP)
»»»»» Note that on “old” revision exit signal is normally 0 (None), you are probably trying to find when something was fixed
»»»»» If exit signal is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “old”
»»»»» -------------------------------------------------------------------------
»»»»» Testing 307ae381eaf7af46e0ac3a374e677bb8ee29ee3f
»»»»» Script output:
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Se…
»»»»» (output was trimmed because it is too large)
»»»»» Script exit code: 0
»»»»» Script exit signal: 1 (SIGHUP)
»»»»» Bisecting by exit signal
»»»»» Current exit signal is 1 (SIGHUP), exit signal on “old” revision is 1 (SIGHUP)
»»»»» Note that on “old” revision exit signal is normally 0 (None), you are probably trying to find when something was fixed
»»»»» If exit signal is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “old”
»»»»» -------------------------------------------------------------------------
»»»»» Testing fcfd51beba36469478435c2d9103330c1e8f24fc
»»»»» Script output:
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Set)
(Se…
»»»»» (output was trimmed because it is too large)
»»»»» Script exit code: 0
»»»»» Script exit signal: 1 (SIGHUP)
»»»»» Bisecting by exit signal
»»»»» Current exit signal is 1 (SIGHUP), exit signal on “old” revision is 1 (SIGHUP)
»»»»» Note that on “old” revision exit signal is normally 0 (None), you are probably trying to find when something was fixed
»»»»» If exit signal is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “old”
»»»»» -------------------------------------------------------------------------
541a4f1628e4e156f6eefc547938746f7b736104 is the first new commit
commit 541a4f1628e4e156f6eefc547938746f7b736104
Author: Jonathan Worthington <jnthn@jnthn.net>
Date: Mon Jan 7 17:30:58 2019 +0100
More aggressive scope flattening
Previously, we would only ever flatten away lexical scopes if we saw
that there were no declarations inside of that scope, the only special
case being `$_`, which was handled specially. There was also some
special mechanism in place to try and handle topic rebinds correctly.
Recently, lexical to local lowering became more powerful, able to deal
with normal lexical variables rather than just parameters and name
bindings. This handling takes in $_ too.
This commit replaces the scope flattening mechanism with one that, at
its heart, will flatten in an immediate block if all of its variables
were lowered. This means that in a program like:
my $a = 42;
if $a > 21 {
my $b = 10;
if $b < 200 {
say $a + $b
}
}
Then both of those scopes flatten away, thanks to both `$a` and `$b`
having been lowered. Previously, only the innermost one would have been,
thanks to the declaration of `$b`.
Since the `$_` in each block is now also lowered to a local when
possible, then we can replace the `getouterlex` calls with a simple
bind, and do away with the topic preservation mechanism, which was
always rather cheaty.
:040000 040000 322a5751d03238a1cdfce7c2b73fe274dde6cde8 6707b5c3fbc65c7f86483adcab963b26c57655a1 M src
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment