www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 6848] New: typeof(super) does not take into account const/immutable attributes inside member functions

reply d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=6848

           Summary: typeof(super) does not take into account
                    const/immutable attributes inside member functions
           Product: D
           Version: D2
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: DMD
        AssignedTo: nobody puremagic.com
        ReportedBy: k.hara.pg gmail.com



This is similar to bug 6695.

class Foo {}

class Bar : Foo
{
    void func() immutable {
        pragma(msg, typeof(this));  // immutable(Bar)
        auto t = this;
        pragma(msg, typeof(t));     // immutable(Bar)

        pragma(msg, typeof(super)); // Foo instead of immutable(Foo)
        auto s = super;
        pragma(msg, typeof(s));     // Foo instead of immutable(Foo)
    }
}

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Oct 24 2011
next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=6848


SomeDude <lovelydear mailmetrash.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |lovelydear mailmetrash.com



PDT ---
Output of 2.059 Win32

PS E:\DigitalMars\dmd2\samples> rdmd --main bug.d
immutable(Bar)
immutable(Bar)
immutable(Foo)
immutable(Foo)
PS E:\DigitalMars\dmd2\samples>

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Apr 20 2012
prev sibling next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=6848





 Output of 2.059 Win32
 
 PS E:\DigitalMars\dmd2\samples> rdmd --main bug.d
 immutable(Bar)
 immutable(Bar)
 immutable(Foo)
 immutable(Foo)
 PS E:\DigitalMars\dmd2\samples>
Thanks for your checking. May fixed in 2.057. https://github.com/D-Programming-Language/dmd/pull/475 https://github.com/D-Programming-Language/dmd/commit/85549f10e7904dac18da80b94a0cea2084936542 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Apr 20 2012
prev sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=6848


Kenji Hara <k.hara.pg gmail.com> changed:

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


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