stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Travis Vitek (JIRA)" <j...@apache.org>
Subject [jira] Issue Comment Edited: (STDCXX-664) [IBM XLC++ 9.0/AIX 5.3] SIGABRT in 22.locale.globals.mt
Date Thu, 13 Dec 2007 21:51:43 GMT

    [ 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  <vitek@roguewave.com>

	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  <vitek@roguewave.com>

	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  <vitek@roguewave.com>

	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  <vitek@roguewave.com>

	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 <class T> bool std::has_facet (const locale&)
> # CLAUSE: lib.locale.global.templates
> # INFO (S1) (3 lines):
> # TEXT: template <class T> 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.


Mime
View raw message