cpp/filesystem/canonical

@1-2@ Converts path to a canonical absolute path, i.e. an absolute path that has no dot, dot-dot elements or symbolic links in its generic format representation. If is not an absolute path, the function behaves as if it is first made absolute by. The path must exist. @3-4@ Returns a path composed by from the result of calling  with a path argument composed of the leading elements of  that exist (as determined by  or ), if any, followed by the elements of  that do not exist. The resulting path is in.

Return value
@1-2@ An absolute path that resolves to the same file as. @3-4@ A normal path of the form, where is a path composed of the longest leading sequence of elements in  that exist, and  is a path composed of the remaining trailing non-existent elements of.