[Issue 3746] Misleading error message "OP has no effect in expression XXX), in void function

d-bugmail at puremagic.com d-bugmail at puremagic.com
Mon Jun 13 22:25:45 PDT 2011


http://d.puremagic.com/issues/show_bug.cgi?id=3746



--- Comment #10 from yebblies <yebblies at gmail.com> 2011-06-13 22:21:03 PDT ---
(In reply to comment #9)
>
> I don't understand. Elsewhere I have a bug report that asks for a new error
> message if you don't use the result of a pure function.
> But this bug report just asks for a better error message in the situation of
> using "return x;" in a void function. So I expected an error message like:
> 
> foo.d(20): Error: a void function can't return 'int'.

Returning an int expression from a void function is perfectly legal, so long as
the expression has side effects.  This is explicitly allowed by the spec.
http://www.digitalmars.com/d/2.0/statement.html#ReturnStatement

You're talking about two completely separate issues, both of which are
enhancements.  This issue is about providing a clearer error message without
changing the spec.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------


More information about the Digitalmars-d-bugs mailing list