[20:30] *** librasteve_ joined
[20:33] *** librasteve_ left
[20:33] *** librasteve_ joined
[23:04] <Geth> ¦ Benchmark/ugexe-patch-1: c5160cb146 | (Nick Logan)++ (committed using GitHub Web editor) | lib/Benchmark.rakumod

[23:04] <Geth> ¦ Benchmark/ugexe-patch-1: Declare %result as Duration:D to match the return type

[23:04] <Geth> ¦ Benchmark/ugexe-patch-1: 

[23:04] <Geth> ¦ Benchmark/ugexe-patch-1: timethis declares its return type as Hash:D[Duration:D] but built the

[23:04] <Geth> ¦ Benchmark/ugexe-patch-1: result with my Duration %result, which types as Hash[Duration]. Those

[23:04] <Geth> ¦ Benchmark/ugexe-patch-1: parameterizations do not smartmatch, so the return-value type check

[23:04] <Geth> ¦ Benchmark/ugexe-patch-1: fails. The legacy optimizer skipped the parameterized nominal check on

[23:04] <Geth> ¦ Benchmark/ugexe-patch-1: the return value, so this went unnoticed; RakuAST enforces it.

[23:04] <Geth> ¦ Benchmark/ugexe-patch-1: 

[23:04] <Geth> ¦ Benchmark/ugexe-patch-1: Constrain the value type to Duration:D so %result types as

[23:04] <Geth> ¦ Benchmark/ugexe-patch-1: Hash[Duration:D] and passes the check on both frontends.

[23:04] <Geth> ¦ Benchmark/ugexe-patch-1: review: https://github.com/raku-community-modules/Benchmark/commit/c5160cb146

[23:04] <Geth> ¦ Benchmark: ugexe++ created pull request #2: Declare %result as Duration:D to match the return type

[23:04] <Geth> ¦ Benchmark: review: https://github.com/raku-community-modules/Benchmark/pull/2

