| //// |
| Copyright 2003-2017 Beman Dawes |
| |
| Distributed under the Boost Software License, Version 1.0. |
| |
| See accompanying file LICENSE_1_0.txt or copy at |
| http://www.boost.org/LICENSE_1_0.txt |
| //// |
| |
| [#history] |
| # History |
| :idprefix: history_ |
| |
| http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1975.html[N1975], |
| Filesystem Library Proposal for TR2, accepted for Library Technical |
| Report 2 (TR2) at the Berlin meeting, included additional components to |
| supplement the Standard Library's Diagnostics clause. Since then, these error |
| reporting components have received wider public scrutiny and enhancements have |
| been made to the design. The enhanced version has been used by |
| http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n2054.pdf[N2054], |
| Networking Library Proposal for TR2, demonstrating that these error reporting |
| components are useful beyond the original Filesystem Library. |
| |
| The original proposal viewed error categories as a binary choice between |
| `errno` (i.e. POSIX-style) and the native operating system's error |
| codes. The proposed components now allow as many additional error categories as |
| are needed by either implementations or by users. The need to support additional |
| error categories, for example, occurs in some networking library implementations |
| because they are built on top of the POSIX `getaddrinfo` API that |
| uses error codes not based on `errno`. |