Personally, I'd probably just call the normal constructor, and not worry about the assertion. In a release build, it won't actually blow-up, it'll just create a path that doesn't exist. The assertion's really just there to catch people doing silly things rather than to signal that it's a fatal error.
That's what i do now. ok.