return in void functions

Daniel Keep daniel.keep.lists at gmail.com
Wed Mar 4 14:27:25 PST 2009



BCS wrote:
> Reply to bearophile,
> 
> 
>> But this compiles with no errors:
>>
>> void foo() {
>> return 1;
>> }
>> void main() {
>> foo();
>> }
> 
> IIRC D allows "return exp;" in a void function because it avoids special
> cases in template code.
> 
> ReturnTypeOf!(AFn, T) fn(T)(T t)
> {
>    return AFn(t,t); // AFn might return void
> }

Sadly, this doesn't help if you need to cache the result before exiting.
 I personally wish we could create void *variables*.

  -- Daniel



More information about the Digitalmars-d mailing list