This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

3.1.1 PATCH: Fix libstdc++-v3 isprint for Solaris 2.5.1


Comparing Solaris 2.5.1/SPARC testsuite results between 3.1 and the current
branch, I noticed a new failure:

+FAIL: 22_locale/ctype_scan_char.cc execution test

Assertion failed: gctype.scan_is((std::ctype_base::print), (cs), (cs) + traits_type::length(cs)) == (cs), file /vol/gnu/src/gcc/gcc-3.1-branch-dist/libstdc++-v3/testsuite/22_locale/ctype_scan_char.cc, line 226

This is not a regression since the test was only introduced after the 3.1
release, but it's a stupid bug and trivial to fix:

The definition of print in the solaris2.5 ctype_base.h doesn't match
/usr/include/ctype.h: The latter includes _B (i.e. 0100, a Blank
indicator), while the former includes 0200 (i.e. _X, heXadecimal digit).

The fix was tested by rebuilding and re-testing libstdc++-v3 on
sparc-sun-solaris2.5.1: the only difference was the fixed testcase.

Ok for branch and trunk (where the same fix applies, modulo the removal of
the bits subdirectory)?

	Rainer


Sat Jul 13 02:15:14 2002  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* config/os/solaris/solaris2.5/bits/ctype_base.h (ctype_base):
	Fix.

Index: libstdc++-v3/config/os/solaris/solaris2.5/bits/ctype_base.h
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/config/os/solaris/solaris2.5/bits/Attic/ctype_base.h,v
retrieving revision 1.2
diff -u -p -r1.2 ctype_base.h
--- libstdc++-v3/config/os/solaris/solaris2.5/bits/ctype_base.h	14 Dec 2000 07:20:36 -0000	1.2
+++ libstdc++-v3/config/os/solaris/solaris2.5/bits/ctype_base.h	13 Jul 2002 00:32:03 -0000
@@ -47,7 +47,7 @@
     static const mask digit 	= 04;
     static const mask xdigit 	= 0200;
     static const mask space 	= 010;
-    static const mask print 	= 020 | 01 | 02 | 04 | 0200;
+    static const mask print 	= 020 | 01 | 02 | 04 | 0100;
     static const mask graph 	= 020 | 01 | 02 | 04;
     static const mask cntrl 	= 040;
     static const mask punct 	= 020;


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]