You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@stdcxx.apache.org by "Martin Sebor (JIRA)" <ji...@apache.org> on 2006/01/07 21:47:22 UTC

[jira] Updated: (STDCXX-62) std::money_get::get() SIGABRT on EOF

     [ http://issues.apache.org/jira/browse/STDCXX-62?page=all ]

Martin Sebor updated STDCXX-62:
-------------------------------

    Fix Version: 4.1.4
                     (was: 4.1.3)

> std::money_get::get() SIGABRT on EOF
> ------------------------------------
>
>          Key: STDCXX-62
>          URL: http://issues.apache.org/jira/browse/STDCXX-62
>      Project: STDCXX
>         Type: Bug
>   Components: 22. Localization
>     Versions: 4.1.2
>  Environment: all
>     Reporter: Martin Sebor
>     Assignee: Martin Sebor
>     Priority: Critical
>      Fix For: 4.1.4

>
> The program below aborts in money_get<char>::do_get():
> $ cat t.cpp && make t -r && ./t 2>&1 | c++filt
> #include <ios>
> #include <locale>
> int main ()
> {
>     typedef std::money_get<char> MoneyGet;
>     const MoneyGet &mg = std::use_facet<MoneyGet>(std::locale::classic ());
>     std::ios io (0);
>     std::ios::iostate err;
>     long double x;
>     mg.get (std::istreambuf_iterator<char>(), std::istreambuf_iterator<char>(),
>             false, io, err, x);
> }
> gcc -c -I/build/sebor/dev/stdlib/include/ansi -D_RWSTDDEBUG   -pthreads -D_RWSTD_USE_CONFIG -I/build/sebor/gcc-3.4.3-15s/include -I/build/sebor/dev/stdlib/include -I/build/sebor/dev/stdlib/examples/include  -pedantic -nostdinc++ -g  -Wall -W -Wcast-qual -Winline -Wshadow -Wwrite-strings -Wno-long-long  t.cpp
> gcc t.o -o t -pthreads -L/build/sebor/gcc-3.4.3-15s/lib -lstd15s  -lsupc++ -lm
> /build/sebor/dev/stdlib/include/rw/_ioiter.h:146: typename std::istreambuf_iterator<_CharT, _Traits>::char_type std::istreambuf_iterator<_CharT, _Traits>::operator*() const [with _CharT = char, _Traits = std::char_traits<char>]: Assertion '0 != _C_sb' failed.
> /build/sebor/gcc-3.4.3-15s/examples/t:__rw::__rw_assert_fail(char const*, char const*, int, char const*)+0x7c
> /build/sebor/gcc-3.4.3-15s/examples/t:std::istreambuf_iterator<char, std::char_traits<char> >::operator*() const+0x38
> /build/sebor/gcc-3.4.3-15s/examples/t:std::money_get<char, std::istreambuf_iterator<char, std::char_traits<char> > >::_C_get(std::istreambuf_iterator<char, std::char_traits<char> >, std::istreambuf_iterator<char, std::char_traits<char> >, bool, std::ios_base&, __rw::__rw_iostate&, void*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >*) const+0x61c
> /build/sebor/gcc-3.4.3-15s/examples/t:std::money_get<char, std::istreambuf_iterator<char, std::char_traits<char> > >::do_get(std::istreambuf_iterator<char, std::char_traits<char> >, std::istreambuf_iterator<char, std::char_traits<char> >, bool, std::ios_base&, __rw::__rw_iostate&, long double&) const+0x6c
> /build/sebor/gcc-3.4.3-15s/examples/t:std::money_get<char, std::istreambuf_iterator<char, std::char_traits<char> > >::get(std::istreambuf_iterator<char, std::char_traits<char> >, std::istreambuf_iterator<char, std::char_traits<char> >, bool, std::ios_base&, __rw::__rw_iostate&, long double&) const+0x78
> /build/sebor/gcc-3.4.3-15s/examples/t:main+0x90
> /build/sebor/gcc-3.4.3-15s/examples/t:_start+0x5c
> Abort (core dumped)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira