www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 6896] New: ICE(glue.c !vthis->csym): on method with alias this access

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

           Summary: ICE(glue.c !vthis->csym): on method with alias this
                    access
           Product: D
           Version: D2
          Platform: Other
        OS/Version: All
            Status: NEW
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P2
         Component: DMD
        AssignedTo: nobody puremagic.com
        ReportedBy: dawg dawgfoto.de



// REQUIRED_ARGS: -inline

struct Nested
{
    int _val;
}

struct S
{
    Nested _nested;
    alias _nested this;

    void set(int v)
    {
        assign(v);
    }

    void assign(int v)
    {
        _val = v;
    }
}

----

Note that this does not happen when the definition of assign
comes lexically before set. So the issue appears to be an alias this
access when inlining a function that was forward referenced.

This is probably related to
http://d.puremagic.com/issues/show_bug.cgi?id=2962.

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


David Simcha <dsimcha yahoo.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |dsimcha yahoo.com



Here's another way to reproduce the same failure:

int expression( string op, Lhs, Rhs )
( auto ref Lhs lhs, auto ref Rhs rhs ) {
    return 0;
}

struct BasicMatrix( Storage_ ) {
    auto opBinary( string op, NewRhs )( auto ref NewRhs newRhs ) {
        alias this thisConverted;      
        return expression!op( thisConverted, newRhs );
    }
}

void ridgeLargeP() {
    BasicMatrix!double cwc;
    auto foo = cwc * cwc;
}

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




*** Issue 7082 has been marked as a duplicate of this issue. ***

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


SomeDude <lovelydear mailmetrash.com> changed:

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



PDT ---
Both tests pass and run with or without -inline

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




PDT ---

 Both tests pass and run with or without -inline
On 2.059 Win32 -- 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=6896




PDT ---
Should be closed FIXED.

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


SomeDude <lovelydear mailmetrash.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: -------
May 04 2012