30 Input/output library [input.output]

30.10 File systems [filesystems]

30.10.34 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.

Remarks: Pathname resolution terminates if p names a symbolic link.

Throws: As specified in [fs.err.report].