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