[ 
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.

Reply via email to