path system_complete(const path& p);
path system_complete(const path& p, error_code& ec);
Effects: Composes an absolute path from p, using the same rules used by the operating system to resolve a path passed as the filename argument to standard library open functions.
Returns: The composed path. The signature with argument ec returns path() if an error occurs.
Postconditions: For the returned path, rp, rp.is_absolute() is true.
Throws: As specified in [fs.err.report].
[ Example: For POSIX-based operating systems, system_complete(p) has the same semantics as absolute(p, current_path()).
For Windows-based operating systems, system_complete(p) has the same semantics as absolute(p, current_path()) if p.is_absolute() || !p.has_root_name() or p and current_path() have the same root_name(). Otherwise system_complete(p) acts as if absolute(p, cwd) is the current directory for the p.root_name() drive. For programs run by the command processor, however, the current directory for the p.root_name() drive may have been set by a prior program, and this may have unintended consequences. — end example ]