forked from OSchip/llvm-project
Implement LWG2221: 'Formatted output for nullptr_t' Reviewed as: https://reviews.llvm.org/D63053
llvm-svn: 364802
This commit is contained in:
parent
62d64b0c30
commit
3c125fe821
|
@ -56,6 +56,7 @@ public:
|
|||
basic_ostream& operator<<(long double f);
|
||||
basic_ostream& operator<<(const void* p);
|
||||
basic_ostream& operator<<(basic_streambuf<char_type,traits>* sb);
|
||||
basic_ostream& operator<<(nullptr_t);
|
||||
|
||||
// 27.7.2.7 Unformatted output:
|
||||
basic_ostream& put(char_type c);
|
||||
|
@ -218,6 +219,10 @@ public:
|
|||
basic_ostream& operator<<(const void* __p);
|
||||
basic_ostream& operator<<(basic_streambuf<char_type, traits_type>* __sb);
|
||||
|
||||
_LIBCPP_INLINE_VISIBILITY
|
||||
basic_ostream& operator<<(nullptr_t)
|
||||
{ return *this << "nullptr"; }
|
||||
|
||||
// 27.7.2.7 Unformatted output:
|
||||
basic_ostream& put(char_type __c);
|
||||
basic_ostream& write(const char_type* __s, streamsize __n);
|
||||
|
|
|
@ -67,6 +67,13 @@ int main(int, char**)
|
|||
os << &sb2;
|
||||
assert(sb.str() == "testing...");
|
||||
}
|
||||
{ // LWG 2221 - nullptr
|
||||
testbuf<char> sb;
|
||||
std::ostream os(&sb);
|
||||
os << nullptr;
|
||||
assert(sb.str().size() != 0);
|
||||
LIBCPP_ASSERT(sb.str() == "nullptr");
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -364,7 +364,7 @@
|
|||
<tr><td></td><td></td><td></td><td></td></tr>
|
||||
<tr><td><a href="https://wg21.link/LWG2062">2062</a></td><td>Effect contradictions w/o no-throw guarantee of std::function swaps</td><td>Issaquah</td><td>Complete</td></tr>
|
||||
<tr><td><a href="https://wg21.link/LWG2166">2166</a></td><td>Heap property underspecified?</td><td>Issaquah</td><td></td></tr>
|
||||
<tr><td><a href="https://wg21.link/LWG2221">2221</a></td><td>No formatted output operator for nullptr</td><td>Issaquah</td><td></td></tr>
|
||||
<tr><td><a href="https://wg21.link/LWG2221">2221</a></td><td>No formatted output operator for nullptr</td><td>Issaquah</td><td>Complete</td></tr>
|
||||
<tr><td><a href="https://wg21.link/LWG2223">2223</a></td><td>shrink_to_fit effect on iterator validity</td><td>Issaquah</td><td>Complete</td></tr>
|
||||
<tr><td><a href="https://wg21.link/LWG2261">2261</a></td><td>Are containers required to use their 'pointer' type internally?</td><td>Issaquah</td><td></td></tr>
|
||||
<tr><td><a href="https://wg21.link/LWG2394">2394</a></td><td>locale::name specification unclear - what is implementation-defined?</td><td>Issaquah</td><td>Complete</td></tr>
|
||||
|
|
Loading…
Reference in New Issue