how come is this legal? 'void fun(int){ }' ?
I understand this is legal for declaration wo definition (void fun(int);) but why allow this: void test(int){} ?
Re: how come is this legal? 'void fun(int){ }' ?
On Sun, 14 Jun 2015 05:11:17 +, Maxim Fomin wrote: On Sunday, 14 June 2015 at 01:20:39 UTC, Timothee Cour wrote: I understand this is legal for declaration wo definition (void fun(int);) but why allow this: void test(int){} ? Actually it is void test(int _param_0) { } You can test by compiling void test(int) { _param_0 = 0; } Nameless parameters are simulated by providing internal symbol as above. yet one shouldn't rely on generated names, they are undocumented on purpose, and can change without a notice and deprecation cycle. signature.asc Description: PGP signature
Re: how come is this legal? 'void fun(int){ }' ?
On Sunday, 14 June 2015 at 01:20:39 UTC, Timothee Cour wrote: I understand this is legal for declaration wo definition (void fun(int);) but why allow this: void test(int){} ? Actually it is void test(int _param_0) { } You can test by compiling void test(int) { _param_0 = 0; } Nameless parameters are simulated by providing internal symbol as above.
Re: how come is this legal? 'void fun(int){ }' ?
Sometimes you have empty functions and/or unused parameters just to fulfill some interface but you don't actually care about the arguments passed. No need to name them if you aren't going to use them.