29 Input/output library [input.output]

29.11 File systems [filesystems]

29.11.14 Filesystem operation functions [fs.op.funcs] Symlink status [fs.op.symlink.status]

file_status symlink_status(const path& p); file_status symlink_status(const path& p, error_code& ec) noexcept;
Effects: Same as status(), above, except that the attributes of p are determined as if by using POSIX lstat() to obtain a POSIX struct stat.
Let prms denote the result of (m & perms​::​mask), where m is determined as if by converting the st_­mode member of the obtained struct stat to the type perms.
Returns: Same as status(), above, except that if the attributes indicate a symbolic link, as if by POSIX S_­ISLNK, returns file_­status(file_­type​::​symlink, prms).
The signature with argument ec returns file_­status(file_­type​::​none) if an error occurs.
Throws: As specified in [fs.err.report].
Remarks: Pathname resolution terminates if p names a symbolic link.