What    |Removed                     |Added
             Status|RESOLVED                    |REOPENED
         Resolution|INVALID                     |

--- Comment #10 from 2012-01-24 07:18:45 PST ---
The signature of the overriding function is identical to the overridden one in
all cases discussed here.

class A{
    void f(){} // note: return type void
class B: A{
    override void f(){} // overrides base f                                     
    void f()immutable{} // new overload                                         
    void f()shared{}       // new overload                                      

It is impossible to break the type system (even if the return types would be
different): the new overloads are not even reachable through a base class
reference. The bug is that the compiler does not take into account the storage
class of the hidden this pointer while deciding what overrides what.

Configure issuemail:
------- You are receiving this mail because: -------

Reply via email to