[
https://issues.apache.org/jira/browse/STDCXX-180?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12484649
]
Martin Sebor commented on STDCXX-180:
-------------------------------------
I suspect this is a gcc configuration or installation issue. The same program
behaves as expect on Solaris 10:
$ gmake t CPPOPTS=-D_RWSTDDEBUG
gcc -pedantic -nostdinc++ -O2 -W -Wall -Wcast-qual -Winline -Wshadow
-Wwrite-strings -Wno-long-long -I/amd/devco/sebor/stdcxx/include/ansi
-pthreads -I/amd/devco/sebor/stdcxx/include
-I/build/sebor/gcc-4.1.1-12d/include -I/amd/devco/sebor/stdcxx/examples/include
-D_RWSTDDEBUG -pthreads -L/build/sebor/gcc-4.1.1-12d/lib
-Wl,-R/build/sebor/gcc-4.1.1-12d/lib t.cpp -lstd12d -lsupc++ -lm -o t
examples$ ./t
/amd/devco/sebor/stdcxx/include/vector:627: typename std::vector<_TypeT,
_Allocator>::iterator std::vector<_TypeT,
_Allocator>::erase(__rw::__rw_debug_iter<std::vector<_TypeT, _Allocator>,
typename _Allocator::pointer, typename _Allocator::pointer>,
__rw::__rw_debug_iter<std::vector<_TypeT, _Allocator>, typename
_Allocator::pointer, typename _Allocator::pointer>) [with _TypeT = int,
_Allocator = std::allocator<int>]: Assertion '_RW::__rw_valid_range (begin (),
__first)' failed.
/build/sebor/gcc-4.1.1-12d/lib/libstd12d.so.4.2.0:_ZN4__rw16__rw_assert_failEPKcS1_iS1_+0x48
/build/sebor/gcc-4.1.1-12d/examples/t:main+0x34
/build/sebor/gcc-4.1.1-12d/examples/t:_start+0x5c
Abort (core dumped)
> [gcc 4.1/Solaris 9] SIGSEGV when SIGABRT expected
> -------------------------------------------------
>
> Key: STDCXX-180
> URL: https://issues.apache.org/jira/browse/STDCXX-180
> Project: C++ Standard Library
> Issue Type: Bug
> Components: Configuration
> Affects Versions: 4.1.3
> Environment: gcc 4.1/Solaris 9
> Reporter: Martin Sebor
> Assigned To: Martin Sebor
> Priority: Minor
>
> The program below is expected to print the stack trace and exit with SIGABRT
> when compiled in debug mode. Instead it fails to print the stack trace and
> exits with SIGSEGV.
> $ cat v.cpp && nice make v && ./v
> #include <vector>
> int main ()
> {
> std::vector<int> v1;
> std::vector<int> v2;
> v1.erase (v2.begin (), v2.end ());
> }
> gcc -c -I/build/sebor/dev/stdlib/include/ansi -D_RWSTDDEBUG -pthreads
> -D_RWSTD_USE_CONFIG -I/build/sebor/gcc-4.1.0-15s/include
> -I/build/sebor/dev/stdlib/include -I/build/sebor/dev/stdlib/../rwtest
> -I/build/sebor/dev/stdlib/../rwtest/include
> -I/build/sebor/dev/stdlib/tests/include -pedantic -nostdinc++ -g -W -Wall
> -Wcast-qual -Winline -Wshadow -Wwrite-strings -Wno-long-long v.cpp
> gcc v.o -o v -L/build/sebor/gcc-4.1.0-15s/rwtest -lrwtest15s -pthreads
> -L/build/sebor/gcc-4.1.0-15s/lib -lstd15s -lsupc++ -lm
> /build/sebor/dev/stdlib/include/vector:618: typename std::vector<_TypeT,
> _Allocator>::iterator std::vector<_TypeT,
> _Allocator>::erase(__rw::__rw_debug_iter<std::vector<_TypeT, _Allocator>,
> typename _Allocator::pointer, typename _Allocator::pointer>,
> __rw::__rw_debug_iter<std::vector<_TypeT, _Allocator>, typename
> _Allocator::pointer, typename _Allocator::pointer>) [with _TypeT = int,
> _Allocator = std::allocator<int>]: Assertion '_RW::__rw_valid_range (begin
> (), __first)' failed.
> Segmentation Fault (core dumped)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.