public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH] 21_strings/basic_string/capacity/wchar_t/18654.cc
@ 2015-11-13 18:41 David Edelsohn
  2015-11-13 23:53 ` David Edelsohn
  0 siblings, 1 reply; 4+ messages in thread
From: David Edelsohn @ 2015-11-13 18:41 UTC (permalink / raw)
  To: Jonathan Wakely, Paolo Carlini; +Cc: GCC Patches

http://www.cplusplus.com/reference/string/basic_string/reserve/

"Note that the resulting string capacity may be equal or greater than n."

The current testcase verifies that the capacity is exactly equal to
the length of the string or reserve value, but the standard allows the
capacity to be larger.  On AIX, the capacity is larger and the
testcase incorrectly fails.

Linux x86-64:
i: 4
str.length: 4
str.capacity: 4
str.capacity: 12
str.capacity: 8
str.capacity: 4

AIX:
i: 4
str.length: 4
str.capacity: 7   <-- i
str.capacity: 14  <-- i*3
str.capacity: 8   <-- i*2
str.capacity: 7   <-- default

* 21_strings/basic_string/capacity/wchar_t/18654.cc: Verify the
capacity is greater than or equal to the requested amount.

Index: 18654.cc
===================================================================
--- 18654.cc    (revision 230322)
+++ 18654.cc    (working copy)
@@ -50,10 +50,10 @@
       str.reserve(3 * i);

       str.reserve(2 * i);
-      VERIFY( str.capacity() == 2 * i );
+      VERIFY( str.capacity() >= 2 * i );

       str.reserve();
-      VERIFY( str.capacity() == i );
+      VERIFY( str.capacity() >= i );
     }
 }

Thanks, David

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-11-14 17:25 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-11-13 18:41 [PATCH] 21_strings/basic_string/capacity/wchar_t/18654.cc David Edelsohn
2015-11-13 23:53 ` David Edelsohn
2015-11-14  0:56   ` Jonathan Wakely
2015-11-14 17:25     ` Jonathan Wakely

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).