Commit 253e8d21 by Jonathan Wakely Committed by Jonathan Wakely

Define __cpp_lib_byte feature-test macro

	* include/c_global/cstddef: Define __cpp_lib_byte feature-test macro.
	* testsuite/18_support/byte/requirements.cc: Check macro.

From-SVN: r253952
parent b0926447
2017-10-20 Jonathan Wakely <jwakely@redhat.com>
* include/c_global/cstddef: Define __cpp_lib_byte feature-test macro.
* testsuite/18_support/byte/requirements.cc: Check macro.
2017-10-19 Jonathan Wakely <jwakely@redhat.com> 2017-10-19 Jonathan Wakely <jwakely@redhat.com>
* testsuite/experimental/filesystem/iterators/ * testsuite/experimental/filesystem/iterators/
......
...@@ -57,9 +57,11 @@ namespace std ...@@ -57,9 +57,11 @@ namespace std
} }
#endif #endif
#if __cplusplus > 201402L #if __cplusplus >= 201703L
namespace std namespace std
{ {
#define __cpp_lib_byte 201603
/// std::byte /// std::byte
enum class byte : unsigned char {}; enum class byte : unsigned char {};
......
...@@ -20,6 +20,12 @@ ...@@ -20,6 +20,12 @@
#include <cstddef> #include <cstddef>
#ifndef __cpp_lib_byte
# error "Feature-test macro for byte missing"
#elif __cpp_lib_byte != 201603
# error "Feature-test macro for byte has wrong value"
#endif
static_assert( sizeof(std::byte) == sizeof(unsigned char) ); static_assert( sizeof(std::byte) == sizeof(unsigned char) );
static_assert( alignof(std::byte) == alignof(unsigned char) ); static_assert( alignof(std::byte) == alignof(unsigned char) );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment