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]

Re: what's up with wchar_t bits in 22_locale on ia64?


>|> http://gcc.gnu.org/ml/gcc-testresults/2003-03/msg00677.html
>|> 
>|> I see a bunch of wchar_t failures. Any chance you could give me (via 
>|> libstdc++ at gcc dot gnu dot org) a preliminary analysis of these fails?

> There are two types of failures:

> terminate called after throwing an instance of 'std::runtime_error'
>  what():  attempt to create locale from unknown name
[...]
> This system is running glibc 2.2.5.  The locale en_US.ISO-8859-15 does
> not exist.

OK, Benjamin/Andreas/Dave, we could handle this case of failure using
the same technique I used (/copied from existing wrapper structure) to
handle generic implementation failures (I used a different report
string since the failure was different, i.e. the system may know about
the locale but the generic implementation couldn't handle it).

Under the assumption that missing locales shouldn't be reported as a
failure (in test case failure after test case failure).  Luckily, I
think we only have to modify the new and old wrappers.  I would
support one special test case that reported if a class of testing was
missing due to the lack of non-generic implementation and/or missing
locale used by the testsuite.  Could someone test it where these
locale names are missing (you may have a file failures after fixing
this but those are real failures to look closely at):

	* testsuite/testsuite_hooks.cc: Suppress runtime exception
	thrown when locale name is unknown on the local system.

Index: testsuite_hooks.cc
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/testsuite/testsuite_hooks.cc,v
retrieving revision 1.9
diff -c -r1.9 testsuite_hooks.cc
*** testsuite_hooks.cc	11 Mar 2003 05:32:56 -0000	1.9
--- testsuite_hooks.cc	12 Mar 2003 00:14:04 -0000
***************
*** 157,162 ****
--- 157,164 ----
        {
  	if (std::strstr (ex.what(), "unhandled name in generic implementation"))
  	  return;
+ 	else if (std::strstr (ex.what(), "attempt to create locale from unknown name"))
+ 	  return;
  	else
  	  throw;
        }
***************
*** 192,197 ****
--- 194,201 ----
        {
  	if (std::strstr (ex.what(), "unhandled name in generic implementation"))
  	  return;
+ 	else if (std::strstr (ex.what(), "attempt to create locale from unknown name"))
+ 	  return;
  	else
  	  throw;
        }
***************
*** 218,223 ****
--- 222,229 ----
      catch (std::runtime_error& ex)
        {
  	if (std::strstr (ex.what(), "unhandled name in generic implementation"))
+ 	  return;
+ 	else if (std::strstr (ex.what(), "attempt to create locale from unknown name"))
  	  return;
  	else
  	  throw;


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