Summary: std.process.execv() not return result, but terminate
           Product: D
           Version: 2.031
          Platform: x86
        OS/Version: Windows
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Phobos

Phobos in DMD 2.031, 2.030, 1.045 on Windows XP SP3:

function int std.process.execv(in string pathname, in immutable(char)[][] argv)
not return any value, but terminate application.

Short example - caller.exe should run called.exe, then print returned value:

/*** begin file caller.d */
import std.process;
import std.stdio;

void main()
  string[] args = ["a1", "b2", "c3"];
  int res = std.process.execv("called.exe", args);
  writefln("res=%d", res); /*this line never executed*/
}/*** end file caller.d */

In Windiws XP environment caller.exe terminates with code 0 while executing
execv() function, and writefln() never executed - no any output occure;

Under debug we can see calls:

_Dmain -> s...@process@execv -> _execv -> ___spawn -> sub_4263F0 -> _exec ->

Configure issuemail:
------- You are receiving this mail because: -------

Reply via email to