Return-Path: Delivered-To: apmail-incubator-stdcxx-dev-archive@www.apache.org Received: (qmail 72933 invoked from network); 13 Dec 2007 21:52:07 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 13 Dec 2007 21:52:07 -0000 Received: (qmail 43819 invoked by uid 500); 13 Dec 2007 21:51:56 -0000 Delivered-To: apmail-incubator-stdcxx-dev-archive@incubator.apache.org Received: (qmail 43758 invoked by uid 500); 13 Dec 2007 21:51:56 -0000 Mailing-List: contact stdcxx-dev-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: stdcxx-dev@incubator.apache.org Delivered-To: mailing list stdcxx-dev@incubator.apache.org Received: (qmail 43747 invoked by uid 99); 13 Dec 2007 21:51:56 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 13 Dec 2007 13:51:56 -0800 X-ASF-Spam-Status: No, hits=-100.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO brutus.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 13 Dec 2007 21:52:05 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 76BDF71422C for ; Thu, 13 Dec 2007 13:51:43 -0800 (PST) Message-ID: <6125204.1197582703483.JavaMail.jira@brutus> Date: Thu, 13 Dec 2007 13:51:43 -0800 (PST) From: "Travis Vitek (JIRA)" To: stdcxx-dev@incubator.apache.org Subject: [jira] Issue Comment Edited: (STDCXX-664) [IBM XLC++ 9.0/AIX 5.3] SIGABRT in 22.locale.globals.mt In-Reply-To: <10072607.1194906230910.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/STDCXX-664?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12551612 ] vitek edited comment on STDCXX-664 at 12/13/07 1:50 PM: --------------------------------------------------------------- Darn. My 'fix' would fail that test. It would not allow the ctype<> facet to be returned when the ctype_byname<> facet is requested, but it would return a ctype_byname facet when the user wanted a derived facet type. Well, I don't really have a preference for adding or not adding the rtti option. If we do add it, the user can easily override it by setting CXXOPTS=-qrtti=none when they invoke make. In case anyone is interested, here are the library and binary sizes for 11s and 12d builds both with and without the rtti flag. The last column is the change in size as a percentage of the original [i.e. percent growth]. rtti nortti growth libstd11s.a 7668238 7558127 1.46% accumulate 4676042 4610870 1.41% adj_diff 4703018 4637972 1.40% advance 4670361 4605133 1.42% alg1 5076890 5008162 1.37% alg2 4893849 4828789 1.35% alg3 4957347 4892395 1.33% alg4 4904490 4839376 1.35% alg5 4706968 4641246 1.42% alg6 4781295 4716161 1.38% alg7 5233717 5168485 1.26% auto_ptr 4592689 4527693 1.44% binary_search 4835486 4770284 1.37% binders 4684042 4618862 1.41% bitset 4601831 4536763 1.43% calc 4728289 4663095 1.40% codecvt 4610735 4543893 1.47% codecvt1 4606640 4540990 1.45% collate 4608657 4542807 1.45% complex 4733931 4664899 1.48% complx 4708134 4639364 1.48% concord 5426332 5360742 1.22% copyex 4709732 4644618 1.40% count 4698872 4633690 1.41% ctype 4595625 4529997 1.45% deque 5017853 4952769 1.31% distance 4692233 4627125 1.41% rtti nortti growth libstd12d.20 1841390 1826109 0.84% accumulate 32115 31838 0.87% adj_diff 35350 35111 0.68% advance 31665 31403 0.83% alg1 62497 62792 -0.47% alg2 64180 60571 5.96% alg3 80214 78731 1.88% alg4 54378 54114 0.49% alg5 43625 40537 7.62% alg6 46071 46050 0.05% alg7 122826 121773 0.86% auto_ptr 25801 25537 1.03% binary_search 55719 55725 -0.01% binders 31371 31092 0.90% bitset 23410 23424 -0.06% calc 51409 39504 30.14% codecvt 36246 36228 0.05% codecvt1 30083 30089 -0.02% collate 27233 27241 -0.03% complex 87356 87068 0.33% complx 63823 63359 0.73% concord 84498 84504 -0.01% copyex 35382 35077 0.87% count 31205 31162 0.14% ctype 24376 24358 0.07% deque 50885 50751 0.26% distance 29778 29775 0.01% I'm attaching two seperate patches. The first patch disables the failing portion of this test when _RWSTD_NO_DYNAMIC_CAST is defined. The second patch is optional and adds the appropriate command line argument to add the minimum necessary rtti support with the VisualAge compiler versions 6, 7, 8 and 9. 2007-12-13 Travis Vitek STDCXX-664 * tests/localization/22.locale.globals.mt.cpp (run_test): Avoid testing that use_facet<>() throws when using byname facets when _RWSTD_NO_DYNAMIC_CAST is defined. 2007-12-13 Travis Vitek STDCXX-664 * etc/config/vacpp.config: Add -qrtti=dynamiccast flag to enable dynamic_cast support. was (Author: vitek): Darn. My 'fix' would fail that test. It would not allow the ctype<> facet to be returned when the ctype_byname<> facet is requested, but it would return a ctype_byname facet when the user wanted a derived facet type. Well, I don't really have a preference for adding or not adding the rtti option. If we do add it, the user can easily override it by setting CXXOPTS=-qrtti=none when they invoke make. In case anyone is interested, here are the library and binary sizes for 11s and 12d builds both with and without the rtti flag. The last column is the change in size as a percentage of the original [i.e. percent growth]. rtti nortti growth libstd11s.a 7668238 7558127 1.46% accumulate 4676042 4610870 1.41% adj_diff 4703018 4637972 1.40% advance 4670361 4605133 1.42% alg1 5076890 5008162 1.37% alg2 4893849 4828789 1.35% alg3 4957347 4892395 1.33% alg4 4904490 4839376 1.35% alg5 4706968 4641246 1.42% alg6 4781295 4716161 1.38% alg7 5233717 5168485 1.26% auto_ptr 4592689 4527693 1.44% binary_search 4835486 4770284 1.37% binders 4684042 4618862 1.41% bitset 4601831 4536763 1.43% calc 4728289 4663095 1.40% codecvt 4610735 4543893 1.47% codecvt1 4606640 4540990 1.45% collate 4608657 4542807 1.45% complex 4733931 4664899 1.48% complx 4708134 4639364 1.48% concord 5426332 5360742 1.22% copyex 4709732 4644618 1.40% count 4698872 4633690 1.41% ctype 4595625 4529997 1.45% deque 5017853 4952769 1.31% distance 4692233 4627125 1.41% rtti nortti growth libstd12d.20 1841390 1826109 0.84% accumulate 32115 31838 0.87% adj_diff 35350 35111 0.68% advance 31665 31403 0.83% alg1 62497 62792 -0.47% alg2 64180 60571 5.96% alg3 80214 78731 1.88% alg4 54378 54114 0.49% alg5 43625 40537 7.62% alg6 46071 46050 0.05% alg7 122826 121773 0.86% auto_ptr 25801 25537 1.03% binary_search 55719 55725 -0.01% binders 31371 31092 0.90% bitset 23410 23424 -0.06% calc 51409 39504 30.14% codecvt 36246 36228 0.05% codecvt1 30083 30089 -0.02% collate 27233 27241 -0.03% complex 87356 87068 0.33% complx 63823 63359 0.73% concord 84498 84504 -0.01% copyex 35382 35077 0.87% count 31205 31162 0.14% ctype 24376 24358 0.07% deque 50885 50751 0.26% distance 29778 29775 0.01% I'm attaching two seperate patches. The first patch disables the failing portion of this test when _RWSTD_NO_DYNAMIC_CAST is defined. The second patch is optional and adds the appropriate command line argument to add the minimum necessary rtti support with the VisualAge compiler versions 6, 7, 8 and 9. 2007/12/13 Travis Vitek STDCXX-664 * tests/localization/22.locale.globals.mt.cpp (run_test): Avoid testing that use_facet<>() throws when using byname facets when _RWSTD_NO_DYNAMIC_CAST is defined. 2007/12/13 Travis Vitek STDCXX-664 * etc/config/vacpp.config: Add -qrtti=dynamiccast flag to enable dynamic_cast support. > [IBM XLC++ 9.0/AIX 5.3] SIGABRT in 22.locale.globals.mt > ------------------------------------------------------- > > Key: STDCXX-664 > URL: https://issues.apache.org/jira/browse/STDCXX-664 > Project: C++ Standard Library > Issue Type: Bug > Components: Tests > Affects Versions: 4.2.0 > Reporter: Travis Vitek > Assignee: Travis Vitek > Fix For: 4.2.1 > > Attachments: stdcxx-664-1.patch, stdcxx-664-2.patch > > > Appears to affect single-threaded bulids only. > [vitek@rimple tests]$ ./22.locale.globals.mt > # INFO (S1) (10 lines): > # TEXT: > # COMPILER: IBM VisualAge C++, __IBMCPP__ = 900 > # ENVIRONMENT: powerpc running aix-5.3 > # FILE: 22.locale.globals.mt.cpp > # COMPILED: Nov 8 2007, 21:35:16 > # COMMENT: thread safety > ############################################################ > # CLAUSE: lib.locale.global.templates > # NOTE (S2) (5 lines): > # TEXT: executing "locale -a > /tmp/tmpfile-fK3jqa" > # CLAUSE: lib.locale.global.templates > # FILE: process.cpp > # LINE: 270 > # INFO (S1) (3 lines): > # TEXT: testing std::locale globals with 1 thread, 20000 iterations each, in 16 locales { "C" "POSIX" "AR_DZ.UTF-8" "AR_BH" "AR_AA.UTF-8" "AR_BH.UTF-8" "AR_AE.UTF-8" "AR_DZ" "AR_EG.UTF-8" "AR_EG" "AR_AE" "AR_AA" "AR_JO" "AR_JO.UTF-8" "AR_KW" "AR_KW.UTF-8" } > # CLAUSE: lib.locale.global.templates > # INFO (S1) (3 lines): > # TEXT: template bool std::has_facet (const locale&) > # CLAUSE: lib.locale.global.templates > # INFO (S1) (3 lines): > # TEXT: template const T& std::use_facet (const locale&) > # CLAUSE: lib.locale.global.templates > # WARNING (S5) (3 lines): > # TEXT: exceptions not thread safe, skipping that part of test > # CLAUSE: lib.locale.global.templates > /amd/devco/vitek/stdcxx-trunk/tests/localization/22.locale.globals.mt.cpp:311: use_facet_loop: Assertion 'threw || opt_facets [opt_inx_collate] < 0' failed. > IOT/Abort trap (core dumped) > [vitek@rimple tests]$ -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.