31 Input/output library [input.output]

31.12 File systems [filesystems]

31.12.8 Enumerations [fs.enum]

31.12.8.2 Enum class file_type [fs.enum.file.type]

This enum class specifies constants used to identify file types, with the meanings listed in Table 144.
The values of the constants are distinct.
Table 144: Enum class file_type[tab:fs.enum.file.type]
Constant
Meaning
The type of the file has not been determined or an error occurred while trying to determine the type.
Pseudo-type indicating the file was not found.
[Note 1: 
The file not being found is not considered an error while determining the type of a file.
— end note]
Regular file
Directory file
Symbolic link file
Block special file
Character special file
FIFO or pipe file
Socket file
implementation-defined
Implementations that support file systems having file types in addition to the above file_type types shall supply implementation-defined file_type constants to separately identify each of those additional file types
The file exists but the type cannot be determined