Lacking committer privileges, I'd like to discuss patches first.  I'll
only start coding anything after I received at least one +1 from a
committer.  After that I would submit a patch and wait for it to be
applied or rejected.  That way I hope to avoid warnocked patches.


t/pmc/env.t is failing on win32, so I looked into it.  On Windows,
there are two different ways to access the environment:

_putenv, _getenv, _environ

- SetEnvironmentVariable, GetEnvironmentVariable,
GetEnvironmentStrings

env.pmc mixes those two, which causes problems.  Variables set via
SetEnvironmentVariable don't get reflected in _environ.

I can think of two ways to fix this:

- Hide every env access behind the platform stuff.  That is, add
something like Parrot_environ.

- Provide platform specific PMCs.  That is, there are two different
env.pmc implementations, depending on the platform.  This would be
simpler, more isolated and probably more efficient because it avoids
another level of indirection.

Let me know what you think.

Ron

Reply via email to