Linus,
shit. ANSI C did it, and did it right. Long long long before the C++ people invented a completely pointless new syntax for the same thing.
C++ used to have the same behavior as C. During the early days of work on the first C++ standard it was decided to change the behavior (various arguments about it making overload resolution less confusing; obviously so they could add the confusion in other places ;-).
It's sad that this has to be stated even in the year 2018.
It's going to get worse: https://shape-of-code.coding-guidelines.com/2018/04/14/the-c-committee-has-taken-off-its-ball-and-chain/ -- Derek M. Jones Software analysis tel: +44 (0)1252 520667 blog:shape-of-code.coding-guidelines.com