On Sat, 13 Apr 2013 11:19:50 -0400, Timothee Cour <[email protected]> wrote:

A)
what has been described so far doesn't take into account revamped
modules, only new modules. However revamping modules also needs to be
taken into consideration (there was a discussion before on whether we
should have std.process2, which was agreed to be bad).

Here's a suggestion that would work for both new and revamped modules:

put experimental/revamped modules during staging period under (to take
std.process example):

./phobos/std/process.d //current one
./phobos/experimental/std/process.d //new one, still called module std.process

now instead of having to modify D source files to change 'import
exp.process' into 'import std.process' as has been suggested by some,
here we would only need to change compiler flags:

rdmd $DFLAGS -I$phobos_root/experimental main.d  => uses
experimental/std/process.d if import std.process is mentioned

rdmd $DFLAGS main.d => uses std/process.d if import std.process is mentioned

How does that work if both modules are std.process? Wouldn't there be a link error?

-Steve

Reply via email to