April 08, 2012
http://d.puremagic.com/issues/show_bug.cgi?id=7855

           Summary: Wrong module dtor order
           Product: D
           Version: D2
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: druntime
        AssignedTo: nobody@puremagic.com
        ReportedBy: code@benjamin-thaut.de


--- Comment #0 from Benjamin Thaut <code@benjamin-thaut.de> 2012-04-08 02:06:18 PDT ---
Created an attachment (id=1084)
repro case

When using a mixin template, which uses a module thats imported with a public import, the order the module destructors are called is wrong. The destructor of the module that is used by the mixin template gets called before the destructor of the module that uses the mixin template. Therefore the module that uses the mixin template works on a already destructed version of the module.

See attached repro case.

Tested with dmd 2.058

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


dawg@dawgfoto.de changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |dawg@dawgfoto.de
         Resolution|                            |INVALID


--- Comment #1 from dawg@dawgfoto.de 2012-04-09 01:42:41 PDT ---
You mixed "static shared this()" into a class.
As shared and static are not applicable for a constructor
they are ignored (see #3118).

A module constructor needs to be "shared static this()"

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