Author: marshall
Date: Tue Jul 31 16:39:12 2018
New Revision: 338457

URL: http://llvm.org/viewvc/llvm-project?rev=338457&view=rev
Log:
Final bit of P0063 - make sure that aligned_alloc is available when the 
underlying C library supports it

Modified:
    libcxx/trunk/test/std/depr/depr.c.headers/stdlib_h.pass.cpp
    libcxx/trunk/test/std/language.support/support.runtime/cstdlib.pass.cpp
    libcxx/trunk/www/cxx1z_status.html

Modified: libcxx/trunk/test/std/depr/depr.c.headers/stdlib_h.pass.cpp
URL: 
http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/depr/depr.c.headers/stdlib_h.pass.cpp?rev=338457&r1=338456&r2=338457&view=diff
==============================================================================
--- libcxx/trunk/test/std/depr/depr.c.headers/stdlib_h.pass.cpp (original)
+++ libcxx/trunk/test/std/depr/depr.c.headers/stdlib_h.pass.cpp Tue Jul 31 
16:39:12 2018
@@ -12,6 +12,8 @@
 #include <stdlib.h>
 #include <type_traits>
 
+#include "test_macros.h"
+
 // As of 1/10/2015 clang emits a -Wnonnull warnings even if the warning occurs
 // in an unevaluated context. For this reason we manually suppress the warning.
 #if defined(__clang__)
@@ -83,6 +85,14 @@ int main()
     static_assert((std::is_same<decltype(strtoull("", endptr,0)), unsigned 
long long>::value), "");
     static_assert((std::is_same<decltype(rand()), int>::value), "");
     static_assert((std::is_same<decltype(srand(0)), void>::value), "");
+
+//  Microsoft does not implement aligned_alloc in their C library
+#ifndef TEST_COMPILER_C1XX
+#if TEST_STD_VER > 14 && defined(TEST_HAS_C11_FEATURES)
+    static_assert((std::is_same<decltype(aligned_alloc(0,0)), void*>::value), 
"");
+#endif
+#endif
+
     static_assert((std::is_same<decltype(calloc(0,0)), void*>::value), "");
     static_assert((std::is_same<decltype(free(0)), void>::value), "");
     static_assert((std::is_same<decltype(malloc(0)), void*>::value), "");

Modified: 
libcxx/trunk/test/std/language.support/support.runtime/cstdlib.pass.cpp
URL: 
http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/language.support/support.runtime/cstdlib.pass.cpp?rev=338457&r1=338456&r2=338457&view=diff
==============================================================================
--- libcxx/trunk/test/std/language.support/support.runtime/cstdlib.pass.cpp 
(original)
+++ libcxx/trunk/test/std/language.support/support.runtime/cstdlib.pass.cpp Tue 
Jul 31 16:39:12 2018
@@ -13,6 +13,8 @@
 #include <type_traits>
 #include <cassert>
 
+#include "test_macros.h"
+
 // As of 1/10/2015 clang emits a -Wnonnull warnings even if the warning occurs
 // in an unevaluated context. For this reason we manually suppress the warning.
 #if defined(__clang__)
@@ -71,6 +73,14 @@ int main()
     static_assert((std::is_same<decltype(std::strtoull("", endptr,0)), 
unsigned long long>::value), "");
     static_assert((std::is_same<decltype(std::rand()), int>::value), "");
     static_assert((std::is_same<decltype(std::srand(0)), void>::value), "");
+
+//  Microsoft does not implement aligned_alloc in their C library
+#ifndef TEST_COMPILER_C1XX
+#if TEST_STD_VER > 14 && defined(TEST_HAS_C11_FEATURES)
+    static_assert((std::is_same<decltype(std::aligned_alloc(0,0)), 
void*>::value), "");
+#endif
+#endif
+
     static_assert((std::is_same<decltype(std::calloc(0,0)), void*>::value), 
"");
     static_assert((std::is_same<decltype(std::free(0)), void>::value), "");
     static_assert((std::is_same<decltype(std::malloc(0)), void*>::value), "");

Modified: libcxx/trunk/www/cxx1z_status.html
URL: 
http://llvm.org/viewvc/llvm-project/libcxx/trunk/www/cxx1z_status.html?rev=338457&r1=338456&r2=338457&view=diff
==============================================================================
--- libcxx/trunk/www/cxx1z_status.html (original)
+++ libcxx/trunk/www/cxx1z_status.html Tue Jul 31 16:39:12 2018
@@ -99,9 +99,9 @@
        <tr><td></td><td></td><td></td><td></td><td></td><td></td></tr>
        <tr><td><a 
href="https://wg21.link/p0032r3";>p0032r3</a></td><td>LWG</td><td>Homogeneous 
interface for variant, any and 
optional</td><td>Oulu</td><td>Complete</td><td>4.0</td></tr>
        <tr><td><a 
href="https://wg21.link/p0040r3";>p0040r3</a></td><td>LWG</td><td>Extending 
memory management tools</td><td>Oulu</td><td>Complete</td><td>4.0</td></tr>
-       <tr><td><a 
href="https://wg21.link/p0063r3";>p0063r3</a></td><td>LWG</td><td>C++17 should 
refer to C11 instead of C99</td><td>Oulu</td><td><i>Nothing to 
do</i></td><td>n/a</td></tr>
-       <tr><td><a 
href="https://wg21.link/p0067r3";>p0067r3</a></td><td>LWG</td><td>Elementary 
string conversions</td><td>Oulu</td><td>Now <a 
href="https://wg21.link/P0067R5";>P0067R5</a></td><td></td></tr>
-       <tr><td><a 
href="https://wg21.link/p0083r3";>p0083r3</a></td><td>LWG</td><td>Splicing Maps 
and Sets</td><td>Oulu</td><td></td><td></td></tr>
+       <tr><td><a 
href="https://wg21.link/p0063r3";>p0063r3</a></td><td>LWG</td><td>C++17 should 
refer to C11 instead of C99</td><td>Oulu</td><td>Complete</td><td>7.0</td></tr>
+       <tr><td><a 
href="https://wg21.link/p0067r3";>p0067r3</a></td><td>LWG</td><td>Elementary 
string conversions</td><td>Oulu</td><td>Now <a 
href="https://wg21.link/P0067R5";>P0067R5</a></td><td>n/a</td></tr>
+       <tr><td><a 
href="https://wg21.link/p0083r3";>p0083r3</a></td><td>LWG</td><td>Splicing Maps 
and Sets</td><td>Oulu</td><td><i>Partially Done</i></td><td></td></tr>
        <tr><td><a 
href="https://wg21.link/p0084r2";>p0084r2</a></td><td>LWG</td><td>Emplace Return 
Type</td><td>Oulu</td><td>Complete</td><td>4.0</td></tr>
        <tr><td><a 
href="https://wg21.link/p0088r3";>p0088r3</a></td><td>LWG</td><td>Variant: a 
type-safe union for C++17</td><td>Oulu</td><td>Complete</td><td>4.0</td></tr>
        <tr><td><a 
href="https://wg21.link/p0137r1";>p0137r1</a></td><td>CWG</td><td>Core Issue 
1776: Replacement of class objects containing reference 
members</td><td>Oulu</td><td>Complete</td><td>6.0</td></tr>
@@ -127,7 +127,7 @@
        <tr><td><a 
href="https://wg21.link/P0394r4";>P0394r4</a></td><td>LWG</td><td>Hotel 
Parallelifornia: terminate() for Parallel Algorithms Exception 
Handling</td><td>Oulu</td><td></td><td></td></tr>
        <tr><td></td><td></td><td></td><td></td><td></td><td></td></tr>
        <tr><td><a 
href="https://wg21.link/P0003R5";>P0003R5</a></td><td>LWG</td><td>Removing 
Deprecated Exception Specifications from 
C++17</td><td>Issaquah</td><td>Complete</td><td>5.0</td></tr>
-       <tr><td><a 
href="https://wg21.link/P0067R5";>P0067R5</a></td><td>LWG</td><td>Elementary 
string conversions, revision 5</td><td>Issaquah</td><td></td><td></td></tr>
+       <tr><td><a 
href="https://wg21.link/P0067R5";>P0067R5</a></td><td>LWG</td><td>Elementary 
string conversions, revision 5</td><td>Issaquah</td><td><i>Partially 
done</i></td><td></td></tr>
        <tr><td><a 
href="https://wg21.link/P0403R1";>P0403R1</a></td><td>LWG</td><td>Literal 
suffixes for 
<tt>basic_string_view</tt></td><td>Issaquah</td><td>Complete</td><td>4.0</td></tr>
        <tr><td><a 
href="https://wg21.link/P0414R2";>P0414R2</a></td><td>LWG</td><td>Merging 
shared_ptr changes from Library Fundamentals to 
C++17</td><td>Issaquah</td><td></td><td></td></tr>
        <tr><td><a 
href="https://wg21.link/P0418R2";>P0418R2</a></td><td>LWG</td><td>Fail or 
succeed: there is no atomic lattice</td><td>Issaquah</td><td></td><td></td></tr>


_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to