31 Input/output library [input.output]

31.12 File systems [filesystems]

31.12.13 Filesystem operation functions [fs.op.funcs]

31.12.13.28 Proximate [fs.op.proximate]

path filesystem::proximate(const path& p, error_code& ec);
Returns: proximate(p, current_path(), ec).
Throws: As specified in [fs.err.report].
path filesystem::proximate(const path& p, const path& base = current_path()); path filesystem::proximate(const path& p, const path& base, error_code& ec);
Returns: For the first form: weakly_canonical(p).lexically_proximate(weakly_canonical(base));
For the second form: weakly_canonical(p, ec).lexically_proximate(weakly_canonical(base, ec)); or path() at the first error occurrence, if any.
Throws: As specified in [fs.err.report].