This: ```rescript @send external reduce: (array<'b>, ('a, 'b) => 'a, ~initialValue: 'a=?) => 'a = "reduce" let reduce = (arr, initialValue, f) => reduce(arr, f, ~initialValue) ``` compiles fine: ```js function reduce(arr, initialValue, f) { return arr.reduce(f, initialValue); } ``` However, when I change the label name: ```rescript @send external reduce: (array<'b>, ('a, 'b) => 'a, ~wrongLabelName: 'a=?) => 'a = "reduce" let reduce = (arr, initialValue, f) => reduce(arr, f, ~initialValue) ``` 1. the code compiles (which it shouldn't, because the label name does not match) 2. I get the following incorrect output (v12): ```js function reduce(arr, initialValue, f) { return arr.reduce(f)(initialValue); } ```