Skip to content

Commit

Permalink
clang-7.0 porting.
Browse files Browse the repository at this point in the history
  • Loading branch information
viboes committed Sep 30, 2018
1 parent 5785b56 commit 2aedf81
Show file tree
Hide file tree
Showing 5 changed files with 28 additions and 18 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
#projects
.project
.vscode
c_cpp_properties.json
settigs.jason

# Compiled Object files
*.slo
Expand Down
37 changes: 22 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,40 +3,45 @@ JASEL: Just a simple experimental library for C++

Experimental library for C++11/14/17.

# Proposals
# LWG Proposals

This code forms the basis of several formal proposal to the C++ standard library

* P0050R0 - C++ generic match function (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/p0050r0.pdf)
* P0051R3 - C++ generic overload function (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0051r3.pdf)
* P0196R4 - Generic none() factories for Nullable types (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0196r4.pdf)
* P0318R1 - `decay_unwrap` and `unwrap_reference` (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0318r1.pdf
* P0319R1 - Adding Emplace functions for `promise<T>`/`future<T>` (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0319r1.pdf
* P0320R1 - Thread Constructor Attributes (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0320r1.pdf
* P0323R6 - `std::expected` http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0323r6.pdf

# Ongoing Proposals

* P0050R0 - C++ generic match function (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/p0050r0.pdf)
* P0196R5 - Generic none() factories for Nullable types (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0196r5.pdf)
* P0319R2 - Adding Emplace functions for `promise<T>`/`future<T>` (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0319r2.pdf
* P0320R1 - Thread Constructor Attributes (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0320r1.pdf
* P0327R3 - Product types access (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0327r3.pdf)

# No yet reviewed yet Proposals

This code forms the basis of several formal proposal to the C++ standard library

* P0338R3 - C++ generic factories (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0338r3.pdf)
* P0343R1 - Meta-programming High-Order Functions (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0343r1.pdf)
* P0648R0 - Extending Tuple-like algorithms to Product-Types - http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0648r0.pdf
* P0649R0 - Other Product-Type algorithms - http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0649r0.pdf
* P0650R2 - C++ Monadic interface (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0650r2.pdf)
* P0786R1 - ValuedOrError and ValueOrNone types (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0786r1.pdf)
* P1051R0 - `std::experimental::expected` LWG design issues (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p1051r0.pdf)


# Ongoing new revisions proposals
# New revisions proposals

* D0051R4 - C++ generic overload function (https://github.com/viboes/tags/blob/master/doc/proposal/overload/d0051R4.md)
* D0196R5 - Generic `none()` factories for Nullable types - https://github.com/viboes/std-make/blob/master/doc/proposal/nullable/D0196R5.md
* D0319R2 - Adding Emplace functions for `promise<T>`/`future<T> - https://github.com/viboes/std-make/blob/master/doc/proposal/future/d0319r2.md
* D0323R7 - `std::expected` - https://github.com/viboes/std-make/blob/master/doc/proposal/expected/d0323r7.md
* D0338R4 - C++ generic factories - https://github.com/viboes/std-make/blob/master/doc/proposal/factories/d0338r4.md

# Ongoing New proposals
# Draft R0 proposals

* DXXXX - Sum types - https://github.com/viboes/std-make/blob/master/doc/proposal/sum_type/SumType.md
* DXXXX - C++ Ordinal types - https://github.com/viboes/std-make/blob/master/doc/proposal/ordinal/Ordinal.md
* DXXXX - C++ Strong types and mixins
* DXXXX - `chrono::modulo` types
* DXXXXR0 - Sum types - https://github.com/viboes/std-make/blob/master/doc/proposal/sum_type/SumType.md
* DXXXXR0 - C++ Ordinal types - https://github.com/viboes/std-make/blob/master/doc/proposal/ordinal/Ordinal.md
* DXXXXR0 - `chrono::modulo` types - https://github.com/viboes/std-make/blob/master/doc/proposal/chrono/DurationModulo.md
* DXXXXR0 - C++ Strong types and mixins

# Withdrawal proposals

Expand All @@ -59,7 +64,9 @@ The code is known to work with the following compilers:

* Clang 5.0.0 `-std=c++11 -std=c++14 -std=c++1y`
* Clang 6.0.0 `-std=c++11 -std=c++14 -std=c++1y -std=c++2a`
* Clang 7.0.0 `-std=c++11 -std=c++14 -std=c++1y -std=c++2a`
* GCC 6.1.1 `-std=c++11 -std=c++14 -std=c++1z`
* GCC 7.3.0 `-std=c++11 -std=c++14 -std=c++1z`

Other compiler and older versions could works as well, but are not tested regularly

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

#if __cplusplus >= 201402L
#include <type_traits>
#include <experimental/optional>
#include <experimental/optional.hpp>
#include <utility>
#include <vector>
#include <experimental/meta.hpp>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

#if __cplusplus >= 201402L
#include <type_traits>
#include <experimental/optional>
#include <experimental/optional.hpp>
#include <utility>
#include <vector>
#include <experimental/meta.hpp>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

#if __cplusplus >= 201402L
#include <type_traits>
#include <experimental/optional>
#include <experimental/optional.hpp>
#include <utility>
#include <vector>
#include <experimental/meta.hpp>
Expand Down

0 comments on commit 2aedf81

Please sign in to comment.