Currently, std.path.buildPath() is designed so that if one of the path
segments is rooted, then the preceding segments are simply dropped.
That is,
assert(buildPath("foo", "bar", "/baz") == "/baz");
The only reason I wrote it like this is that this was how the old (now
deprecated and removed) join() function was designed, and buildPath()
was supposed to be a drop-in replacement.
I have come to think this design sucks, and I want to fix it. I cannot
think of a single use case for it. I have a new implementation of this
function in the pipeline, so now seems like a good time. Would anyone
be opposed to me rewriting it so that it throws an exception when any
path segment but the first is rooted?
Lars