[depr.cerrno]

# Annex D (normative) Compatibility features [[depr]](./#depr)

## D.12 Deprecated error numbers [depr.cerrno]

[1](#1)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/future.tex#L252)

The header [<cerrno>](errno.general#header:%3ccerrno%3e "19.4.1 General [errno.general]") has the following additional macros:

#define ENODATA *see below*#define ENOSR *see below*#define ENOSTR *see below*#define ETIME *see below*

[2](#2)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/future.tex#L262)

The meaning of these macros is defined by the POSIX standard[.](#2.sentence-1)

[3](#3)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/future.tex#L265)

The following enum errc enumerators are defined
in addition to those specified in [[system.error.syn]](system.error.syn "19.5.2 Header <system_­error> synopsis"):

[no_message_available](#lib:errc,no_message_available "D.12 Deprecated error numbers [depr.cerrno]"), // ENODATA[no_stream_resources](#lib:errc,no_stream_resources "D.12 Deprecated error numbers [depr.cerrno]"), // ENOSR[not_a_stream](#lib:errc,not_a_stream "D.12 Deprecated error numbers [depr.cerrno]"), // ENOSTR[stream_timeout](#lib:errc,stream_timeout "D.12 Deprecated error numbers [depr.cerrno]"), // ETIME

[4](#4)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/future.tex#L276)

The value of each enum errc enumerator above
is the same as the value of the [<cerrno>](errno.general#header:%3ccerrno%3e "19.4.1 General [errno.general]") macro
shown in the above synopsis[.](#4.sentence-1)
