[Issue 7310] pure function results should implicitly cast to mutable, shared, and inout

d-bugmail at puremagic.com d-bugmail at puremagic.com
Wed Jan 18 16:57:41 PST 2012


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


Don <clugdbug at yahoo.com.au> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |clugdbug at yahoo.com.au


--- Comment #6 from Don <clugdbug at yahoo.com.au> 2012-01-18 16:57:39 PST ---
(In reply to comment #5)
> Furthermore, the optimization also applies when it is the other way round
> (mutable return value implicitly converted to immutable), so the analysis would
> consider implicit conversions of the return value anyway.

No. The only way an immutably pure function can return a mutable value, is if
it created it itself -- so we know it's unique. No analysis of the body of the
function is required.

But, if an immutable pure function returns an immutable value, we know nothing.
It could be a parameter, or an immutable global variable, or a variable created
inside the function.

-- 
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