it would be half ignored, kinda
I'm lacking the technical vocabulary to explain it properly but it's first ignored because as mentioned it basically makes no difference, and then the compiler is free to assume that you wanted to overload `A::f`. But then it also notices that you spelt out different return types for the two functions so you get a compile error