there are already examples of this.
even when you change the name of a function parameter, that is f(int x) in the header and f(int y) in the cpp file.
The parser does not take into account the arguments, their types, their names, and as shown here when in the header a default value is applied to an argument.
Sadly, because once this would work a lot of other things will become possible.