This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of C++17 status.
system_complete refers to undefined variable 'base'
Section: 99 [fs.op.system_complete] Status: C++17 Submitter: Jonathan Wakely Opened: 2014-07-20 Last modified: 2017-07-30
Priority: 0
View all issues with C++17 status.
Discussion:
The example says "...or p and base have the same root_name().", but
base is not defined. I believe it refers to the value returned by current_path().
[Apr 2016 Issue updated to address the C++ Working Paper. Previously addressed File System TS]
Proposed resolution:
Change 99 [fs.op.system_complete] as indicated:
For Windows based operating systems,
system_complete(p)has the same semantics asabsolute(p, current_path())ifp.is_absolute() || !p.has_root_name()orpandhave the samebasecurrent_path()root_name(). Otherwise it acts likeabsolute(p, cwd)is the current directory for thep.root_name()drive. This will be the current directory for that drive the last time it was set, and thus may be residue left over from a prior program run by the command processor. Although these semantics are useful, they may be surprising.