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


timon.g...@gmx.ch changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |INVALID


--- Comment #7 from timon.g...@gmx.ch 2012-01-18 17:09:48 PST ---
(In reply to comment #6)
> (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.

This is not what I was suggesting. I am only reasoning about the call-site
here.

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

For parameter, see comment #2. immutable global variables are a deal-breaker.
Implicitly casting between shared and unshared should still be possible at
strongly pure function border. I am opening a separate issue for it.

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

Reply via email to