Thread overview
[Issue 9899] New: struct with pure/nothrow destructor cannot be used as a struct member in pure/nothrow functions
Apr 07, 2013
Henning Pohl
Apr 08, 2013
Kenji Hara
Apr 11, 2013
Walter Bright
April 07, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9899

           Summary: struct with pure/nothrow destructor cannot be used as
                    a struct member in pure/nothrow functions
           Product: D
           Version: D2
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: DMD
        AssignedTo: nobody@puremagic.com
        ReportedBy: henning@still-hidden.de


--- Comment #0 from Henning Pohl <henning@still-hidden.de> 2013-04-07 10:31:36 PDT ---
struct S {
    nothrow pure ~this() {
    }
}

struct MemberS {
    S s;
}

void main() nothrow pure { // 10
    MemberS s; // 11
}

-----
main.d(11): Error: pure function 'D main' cannot call impure function
'main.MemberS.~this'
main.d(11): Error: s.~this is not nothrow
main.d(10): Error: function D main 'main' is nothrow yet may throw
-----

Note: When the destructor is removed, everything works just fine.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
April 08, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9899


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

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |pull


--- Comment #1 from Kenji Hara <k.hara.pg@gmail.com> 2013-04-07 21:27:51 PDT ---
https://github.com/D-Programming-Language/dmd/pull/1866

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
April 11, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9899



--- Comment #2 from github-bugzilla@puremagic.com 2013-04-10 23:46:48 PDT ---
Commits pushed to master at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/a886e55abe29ed1ffe05ba154e2977443ad808ec
fix Issue 9899 - struct with pure/nothrow destructor cannot be used as a struct
member in pure/nothrow functions

https://github.com/D-Programming-Language/dmd/commit/5a0d812059995186860a418735c77e432b05500e Merge pull request #1866 from 9rnsr/fix9899

Issue 9899 - struct with pure/nothrow destructor cannot be used as a struct member in pure/nothrow functions

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
April 11, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9899


Walter Bright <bugzilla@digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |bugzilla@digitalmars.com
         Resolution|                            |FIXED


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