V1 has 3 issues applied from the Lenexa meeting, and is being sent for publication.
V2 has 5 motions applied from the Lenexa meeting.
This paper was written as changes to the main C++ standard, so I had to adjust headers and section numbers to make it fit into the TS.
Not all applied papers proposed feature-test macros, so I invented
some. I also gave all new features a value of 201505
.
Put definitions outside the synopsis section, gave the synopsis a "synop" stable name, and put all creation operations together.
A log of all changes to V1 of the Library Fundamentals TS since N4335 is below and on Github.
commit b12eda2ddb8145f9481c112dcb6ab112b5e8737b Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sat Nov 22 23:58:53 2014 -0800 Update the V1 repo after N4335. commit b3e5cdf7d39c8ded92dcf4bd4dff35308eb06771 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Nov 23 00:02:38 2014 -0800 Fix the second instance of #43, wording of "May throw bad_alloc" sentence. commit 17ad117df927a338989468288d63226c5f2cf5d5 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Jan 11 15:53:17 2015 -0800 Remove a description of a char* as a "string" in string.view.cons. This handles the PDTS comment FI3 editorially. I didn't include the extra description of an "array of charT" from string.cons because the postcondition table is sufficient. commit dc1dd0a9c5176251aca3786aa9ecb745d6b1f9fe Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Jan 11 16:12:18 2015 -0800 Make the order of comparison definitions in [optional.comp_with_t] match the synopsis and [optional.nullops]. Fixes LEWG71. commit 68068cec402fc90d08242d4917c9913dad866f59 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Jan 11 16:49:45 2015 -0800 Update html-doc-framework to support the DTS stage. commit 0cbde65a57bfadc662e1d11c99dffc7434db4348 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Thu Feb 5 11:03:00 2015 +0000 Remove the experimental/net header from Table 1 after be184ef630 removed the header. commit 4aa93f1a5d20daa9933b12f19c93e7a15edb8f58 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Mon Apr 6 21:33:15 2015 -0700 Fix #50, "#include <exerimental/string>" commit 800ec422d36ea1b6ff0f02005ddfd775a0067a50 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Mon Apr 6 22:45:56 2015 -0700 Update the normative reference to the published C++14. commit 6cda0a00d70f635f42a3ea13ea80ab2ddc62a680 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun May 10 12:12:30 2015 -0500 Apply LWG2410 from N4383 per LWG Motion 3 at the 2015-05 Lenexa meeting. http://wiki.edg.com/twiki/bin/view/Wg21lenexa/StrawPolls commit 5c563c8dd98980eb861d5bbace6ab841c650ee78 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun May 10 12:20:38 2015 -0500 Apply LWG2418 from N4383 per LWG Motion 3 at the 2015-05 Lenexa meeting. http://wiki.edg.com/twiki/bin/view/Wg21lenexa/StrawPolls commit 5a7a1bdadbc4222db7f87fc5a4794257f76a344d Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun May 10 12:24:55 2015 -0500 Apply LWG2463 from N4383 per LWG Motion 3 at the 2015-05 Lenexa meeting. http://wiki.edg.com/twiki/bin/view/Wg21lenexa/StrawPolls
A log of all changes to V2 of the Library Fundamentals TS since N4336 is below and on Github. Many of these changes are V1 changes included by N4521.
commit 4c96a60e0d78c531ba798f065a65367d654c8d93 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Nov 23 00:05:36 2014 -0800 Update the V2 repo after N4336. commit 26a09a0f0d37bd2d26c1c3184a0118175bbf5d70 Author: Jonathan Wakely <cxx@kayari.org> Date: Sat May 2 16:41:39 2015 +0100 [iterator.ostream.joiner] Reorder constructors in synopsis. Also use injected-class-name and typedef to de-clutter. Fixes #53. commit 2a4ad77eacce5433b4fb1185beaa646475b78c98 Author: Jonathan Wakely <github@kayari.org> Date: Sat May 2 16:36:51 2015 +0100 [iterator.ostream.joiner.ops] Remove redundant parentheses. commit e09928fef4382c4f294ebf5bf4383684585a7e58 Author: Jonathan Wakely <cxx@kayari.org> Date: Sat May 2 16:40:36 2015 +0100 [iterator.ostream.joiner.cons] Use addressof. Fixes #52. commit f1f4e29774a448163dec2af3f0dce073801c3c82 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Mon Apr 6 22:45:56 2015 -0700 Update the normative reference to the published C++14. commit 69a4cb8a10438542df2216963a9b49af782dca86 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sat Apr 11 12:27:32 2015 -0700 Apply N4388 per LWG Motion 4 at the 2015-05 Lenexa meeting. http://wiki.edg.com/twiki/bin/view/Wg21lenexa/StrawPolls commit 2dc989ca7554fd471c45bf0f7240d1b5762a5b68 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sat Apr 11 13:32:52 2015 -0700 Apply N4391 per LWG Motion 5 at the 2015-05 Lenexa meeting. http://wiki.edg.com/twiki/bin/view/Wg21lenexa/StrawPolls commit 5b1db9b06a572f940d89d0b91c2762859dc6fb2f Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun May 10 12:19:24 2015 -0700 Apply N4519 per LWG Motion 7 at the 2015-05 Lenexa meeting. http://wiki.edg.com/twiki/bin/view/Wg21lenexa/StrawPolls commit adb5fad3dc645fcdda745463c6d8c7b6e2911d66 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun May 10 13:16:05 2015 -0700 Add the reflection clause, forgotten in the previous commit. commit 5b69ee0d44ee07a6ced16cd65ffcce5cd4fa6df9 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun May 10 13:57:46 2015 -0700 Update the HTML document framework to 0.3.1. commit 71599b4c689e090414a058cb416643a37d319b16 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Jul 6 11:00:34 2014 -0700 Rename mods.allocator.uses to allocator.uses.trait. commit 05b8ad087fe8b602d1e7ecca637d3d304b12a0ff Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Jul 6 11:01:11 2014 -0700 Use a real reference for BinaryTypeTrait. commit da29e15b4b8fe5d35b04f15533ab15e883dccfda Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Jul 6 11:15:03 2014 -0700 Section references are now against the C++14 DIS. commit 5f2655c80ed5103bb4ba55a22a940aa5182e38ba Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Jul 6 11:36:42 2014 -0700 Put a missed string_view table caption in code font. commit 550ef7a9dcf0b32c25a972d75d1194c2177bad12 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Jul 6 13:05:50 2014 -0700 Number and caption the new optional<> tables. commit 06b8e0e89d08db74427ef1cc1df497f52f774e7d Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Jul 6 13:06:56 2014 -0700 Use std::move() instead of move() in optional<>. commit 2b0f6193bbb9be002d7febc831b9c1d18880fb39 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Jul 6 13:11:12 2014 -0700 Insert "Then" at the beginning of [meta.trans.other] p6 b3. commit 9cbc31423020a2ff7fca98d920aa8f4a38d28340 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Jul 6 13:13:23 2014 -0700 It's <cxx-postconditions>, not <cxx-postcondition>. Filed cplusplus/html-doc-framework#12. commit b030b2235daef34b73a565eb5c158f071aa016b2 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Jul 6 13:20:05 2014 -0700 Change alg.search to "Equivalent to *return*". commit b178466490eb77ff8fb7c43f3dacd971817e2d0c Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Jul 6 14:01:41 2014 -0700 Revert "Rename mods.allocator.uses to allocator.uses.trait." This reverts commit 71599b4c689e090414a058cb416643a37d319b16. commit 6fdf23b4046e006ee8b07ab92aaa85b4be41108a Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Mon Jul 7 22:07:11 2014 -0700 Fix the font size of <pre> blocks. commit 69d0bb154f311a8e9db2ddebb8b97c2c5799c761 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Mon Jul 7 22:36:31 2014 -0700 Add a missed </code>. commit be184ef6309314a127b0ec5ec38f0ca3d26c4aef Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Nov 16 21:44:21 2014 -0800 Apply LWG motion 5, striking the Network Byte Order clause and removing the reference to the Unicode standard RFC2781 http://wiki.edg.com/twiki/bin/view/Wg21urbana-champaign/StrawPolls commit f083f7339e10295975f29345137ab878fc60393b Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Nov 16 22:31:03 2014 -0800 Apply LWG motion 6, N4270, Collected Edits to the Library Fundamentals TS. http://wiki.edg.com/twiki/bin/view/Wg21urbana-champaign/StrawPolls commit 24a76c592dc6fc5b329ea128fc8f67f95aec2801 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Nov 16 23:08:34 2014 -0800 Apply LWG motion 7, N4288, Strike string_view::clear http://wiki.edg.com/twiki/bin/view/Wg21urbana-champaign/StrawPolls commit 2b1454357372d7120d6784565f02e10f1d005e5a Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Nov 16 23:14:02 2014 -0800 Update the feature test macros for changes in the 2014-11 meeting. commit c748daef3033d83b078a9c53f47c3c994c0624e5 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Fri Nov 21 23:26:52 2014 -0800 Fix #43, wording of "May throw bad_alloc" sentence. commit b12eda2ddb8145f9481c112dcb6ab112b5e8737b Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sat Nov 22 23:58:53 2014 -0800 Update the V1 repo after N4335. commit b3e5cdf7d39c8ded92dcf4bd4dff35308eb06771 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Nov 23 00:02:38 2014 -0800 Fix the second instance of #43, wording of "May throw bad_alloc" sentence. commit 17ad117df927a338989468288d63226c5f2cf5d5 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Jan 11 15:53:17 2015 -0800 Remove a description of a char* as a "string" in string.view.cons. This handles the PDTS comment FI3 editorially. I didn't include the extra description of an "array of charT" from string.cons because the postcondition table is sufficient. commit dc1dd0a9c5176251aca3786aa9ecb745d6b1f9fe Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Jan 11 16:12:18 2015 -0800 Make the order of comparison definitions in [optional.comp_with_t] match the synopsis and [optional.nullops]. Fixes LEWG71. commit 68068cec402fc90d08242d4917c9913dad866f59 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun Jan 11 16:49:45 2015 -0800 Update html-doc-framework to support the DTS stage. commit 0cbde65a57bfadc662e1d11c99dffc7434db4348 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Thu Feb 5 11:03:00 2015 +0000 Remove the experimental/net header from Table 1 after be184ef630 removed the header. commit 4aa93f1a5d20daa9933b12f19c93e7a15edb8f58 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Mon Apr 6 21:33:15 2015 -0700 Fix #50, "#include <exerimental/string>" commit 800ec422d36ea1b6ff0f02005ddfd775a0067a50 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Mon Apr 6 22:45:56 2015 -0700 Update the normative reference to the published C++14. commit 6cda0a00d70f635f42a3ea13ea80ab2ddc62a680 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun May 10 12:12:30 2015 -0500 Apply LWG2410 from N4383 per LWG Motion 3 at the 2015-05 Lenexa meeting. http://wiki.edg.com/twiki/bin/view/Wg21lenexa/StrawPolls commit 5c563c8dd98980eb861d5bbace6ab841c650ee78 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun May 10 12:20:38 2015 -0500 Apply LWG2418 from N4383 per LWG Motion 3 at the 2015-05 Lenexa meeting. http://wiki.edg.com/twiki/bin/view/Wg21lenexa/StrawPolls commit 5a7a1bdadbc4222db7f87fc5a4794257f76a344d Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun May 10 12:24:55 2015 -0500 Apply LWG2463 from N4383 per LWG Motion 3 at the 2015-05 Lenexa meeting. http://wiki.edg.com/twiki/bin/view/Wg21lenexa/StrawPolls commit 34cd87e183efc128cf12c43eb0dd50b0aa8c182b Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun May 10 17:10:11 2015 -0700 Apply N4502 per LWG Motion 8 at the 2015-05 Lenexa meeting. http://wiki.edg.com/twiki/bin/view/Wg21lenexa/StrawPolls commit 05f0afca43ee35a6093a456227edea0dd6dd174b Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun May 10 17:14:26 2015 -0700 Fix a merge mistake after [syserror]. commit b593ba723121c9d863c0070843140e29ca4c8c5a Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun May 10 17:28:49 2015 -0700 Rearrange [reflection.src_loc] to put definitions outside the synopsis section, give the synopsis a "synop" stable name, and to put all creation operations together. commit 06ba46a152530f77aae62bc19790c558ccebb8cd Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Sun May 10 17:49:12 2015 -0700 Assign the next paper number and regenerate the single-page HTML. commit a1decaa31cc8fa1adac7e4c269bddbf6d7605652 Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Mon May 11 09:59:06 2015 -0700 Fix the make_array and propagate_const paper numbers and feature test values. Zhihao Yuan noticed I had the versions from the tentative V2 draft, not the adopted versions. commit 4f9efaa685ba54f53f40e5b3619447f5cbdce471 Author: timsong-cpp <rs2740@gmail.com> Date: Tue May 12 16:56:45 2015 -0400 Fix wrong examples in [meta.detect] It's `is_detected<Op, Args...>`, so `copy_assign_t` first, then `T`. Similarly, it's `is_detected_exact<Expected, Op, Args...>`, so `T&`, then `copy_assign_t`, then `T`. commit 27f0b8c8ffa89aea1831dd5d3efbd334d7d076de Author: Jeffrey Yasskin <jyasskin@gmail.com> Date: Fri May 22 01:06:29 2015 -0700 Release N4529, the Library Fundamentals v2 working paper.