]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
As per DR 184, libstdc++/3139
authorBenjamin Kosnik <bkoz@redhat.com>
Thu, 4 Apr 2002 05:32:59 +0000 (05:32 +0000)
committerBenjamin Kosnik <bkoz@gcc.gnu.org>
Thu, 4 Apr 2002 05:32:59 +0000 (05:32 +0000)
2002-04-03  Benjamin Kosnik  <bkoz@redhat.com>

        As per DR 184, libstdc++/3139
        * include/std/std_limits.h (__glibcpp_bool_digits): Change to 1.
        (numeric_limits<bool>::is_iec559): False.
        (numeric_limits<bool>::is_modulo): False.

* testsuite/27_io/ios_init.cc: Add instantiations.

From-SVN: r51838

libstdc++-v3/ChangeLog
libstdc++-v3/include/std/std_limits.h
libstdc++-v3/testsuite/27_io/ios_init.cc

index bbb282d26100182eb506b19e3a8057409e9f89f7..08561c0a97fa741f902e32cd858185d55114ba29 100644 (file)
@@ -1,3 +1,12 @@
+2002-04-03  Benjamin Kosnik  <bkoz@redhat.com>
+
+        As per DR 184, libstdc++/3139
+        * include/std/std_limits.h (__glibcpp_bool_digits): Change to 1.
+        (numeric_limits<bool>::is_iec559): False.
+        (numeric_limits<bool>::is_modulo): False.       
+
+       * testsuite/27_io/ios_init.cc: Add instantiations.
+
 2002-04-02  Benjamin Kosnik  <bkoz@redhat.com>
        
        libstdc++/5268
index d2b57e39cc756069c94beaa1dea2fae9a18e8c43..64d8a9bb59edab9f8ed4d4e6ffe110543a74cfad 100644 (file)
 // bool-specific hooks:
 //     __glibcpp_bool_digits  __glibcpp_int_traps __glibcpp_long_traps
 
-// This is actually CHAR_BITS because the new ABI says a bool
-// is one (1) byte wide.
-
 #ifndef __glibcpp_bool_digits
-#define __glibcpp_bool_digits __glibcpp_char_bits
+#define __glibcpp_bool_digits 1
 #endif
 
 // char.
@@ -996,9 +993,9 @@ namespace std
       static bool denorm_min() throw()
       { return false; }
 
-      static const bool is_iec559 = true;
+      static const bool is_iec559 = false;
       static const bool is_bounded = true;
-      static const bool is_modulo = true;
+      static const bool is_modulo = false;
 
       // It is not clear what it means for a boolean type to trap.
       // This is a DR on the LWG issue list.  Here, I use integer
index 72b9fb4cc85698856181a57cac4906202cbaf789..1905aa64ac8d326ada401553454f78c355a98cf9 100644 (file)
@@ -215,6 +215,14 @@ template
 template 
   unsigned short
   std::basic_string<unsigned short>::_Rep::_S_terminal;
+
+template 
+  std::basic_string<unsigned char>::size_type 
+  std::basic_string<unsigned char>::_Rep::_S_max_size;
+
+template 
+  unsigned char
+  std::basic_string<unsigned char>::_Rep::_S_terminal;
 #endif
 
 int main()