diff options
-rw-r--r-- | libstdc++-v3/ChangeLog | 7 | ||||
-rw-r--r-- | libstdc++-v3/docs/html/ext/howto.html | 6 | ||||
-rw-r--r-- | libstdc++-v3/include/bits/basic_ios.tcc | 5 |
3 files changed, 18 insertions, 0 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 3ac3f04..7ee8180 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,10 @@ +2003-10-22 Paolo Carlini <pcarlini@suse.de> + + PR libstdc++/12657 + * include/bits/basic_ios.tcc (copyfmt(const basic_ios&)): + Implement resolution of DR 292 (WP). + * docs/html/ext/howto.html: Add entry for DR 292. + 2003-10-21 Benjamin Kosnik <bkoz@redhat.com> * include/ext/mt_allocator.h: Change include to gthr.h. diff --git a/libstdc++-v3/docs/html/ext/howto.html b/libstdc++-v3/docs/html/ext/howto.html index 1c190a6..f9e7cb6 100644 --- a/libstdc++-v3/docs/html/ext/howto.html +++ b/libstdc++-v3/docs/html/ext/howto.html @@ -640,6 +640,12 @@ <dd>Similar to 118. </dd> + <dt><a href="lwg-defects.html#292">292</a>: + <em>Effects of a.copyfmt (a)</em> + </dt> + <dd>If <code>(this == &rhs)</code> do nothing. + </dd> + <!-- <dt><a href="lwg-defects.html#"></a>: <em></em> diff --git a/libstdc++-v3/include/bits/basic_ios.tcc b/libstdc++-v3/include/bits/basic_ios.tcc index 9df5f48..541453a 100644 --- a/libstdc++-v3/include/bits/basic_ios.tcc +++ b/libstdc++-v3/include/bits/basic_ios.tcc @@ -60,6 +60,11 @@ namespace std basic_ios<_CharT, _Traits>& basic_ios<_CharT, _Traits>::copyfmt(const basic_ios& __rhs) { + // _GLIBCXX_RESOLVE_LIB_DEFECTS + // 292. effects of a.copyfmt (a) + if (this == &__rhs) + return *this; + // Per 27.1.1, do not call imbue, yet must trash all caches // associated with imbue() |