DMD 2.055 Crashing on Windows 7 x64 (So is my D program)

Mehrdad wfunction at hotmail.com
Mon Sep 26 15:36:16 PDT 2011


On 9/26/2011 2:58 PM, Steven Schveighoffer wrote:
> This is likely a DMC issue, and is probably best reported as a DMC 
> bug.  I don't know how much more you want to pursue this, but the next 
> steps I'd recommend are:
>
> 1. obtain the dmc compiler (it's free) if you haven't already.
> 2. Compile an empty C program and run it using SciTE and Notepad++.  
> Verify the same error occurs
> 3. report the failure using DMC's bugzilla.
>
> I'm guessing there's something in the way SciTE or Notepad++ sets up 
> the pipes before executing the process which causes the problem.  I 
> have a sinking feeling we'll see more of this issue when the new 
> std.process is released :(
>
> -Steve
OK, I think I found the bug, and I'm pretty sure it's what I was saying 
originally:

A handle is being closed that isn't actually valid.

Which handle? stderr.  stderr is being closed when in fact it is the 
same handle as stdout. So when _fcloseallp() is called, it goes through 
the structures in __iob and closes each one in turn -- which causes a 
duplicate close operation on stderr, because it already gets closed when 
stdout gets closed.

So it's an snn.lib issue. Is it easy to fix? (I hope it is...)

Thanks!


More information about the Digitalmars-d mailing list