From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18359 invoked by alias); 22 Jan 2002 10:56:02 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 18329 invoked by uid 71); 22 Jan 2002 10:56:01 -0000 Resent-Date: 22 Jan 2002 10:56:01 -0000 Resent-Message-ID: <20020122105601.18328.qmail@sources.redhat.com> Resent-From: gcc-gnats@gcc.gnu.org (GNATS Filer) Resent-To: nobody@gcc.gnu.org Resent-Cc: gcc-prs@gcc.gnu.org, gcc-bugs@gcc.gnu.org Resent-Reply-To: gcc-gnats@gcc.gnu.org, jens.thiele@student.uni-tuebingen.de Received:(qmail 17012 invoked by uid 61); 22 Jan 2002 10:50:58 -0000 Message-Id:<20020122105058.17011.qmail@sources.redhat.com> Date: Tue, 22 Jan 2002 02:56:00 -0000 From: jens.thiele@student.uni-tuebingen.de Reply-To: jens.thiele@student.uni-tuebingen.de To: gcc-gnats@gcc.gnu.org X-Send-Pr-Version:gnatsweb-2.9.3 (1.1.1.1.2.31) Subject: libstdc++/5451: std::streambuf::sungetc and sputbackc cause programm to crash on exit when eof was reached X-SW-Source: 2002-01/txt/msg00759.txt.bz2 List-Id: >Number: 5451 >Category: libstdc++ >Synopsis: std::streambuf::sungetc and sputbackc cause programm to crash on exit when eof was reached >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Tue Jan 22 02:56:01 PST 2002 >Closed-Date: >Last-Modified: >Originator: jens.thiele@student.uni-tuebingen.de >Release: gcc 2.95.2 >Organization: >Environment: debian gnu/linux potato (with some updates) glibc 2.1.3 >Description: gcc -v Reading specs from /usr/lib/gcc-lib/i386-linux/2.95.2/specs gcc version 2.95.2 20000220 (Debian GNU/Linux) (Also tested: gcc -v Reading specs from /usr/lib/gcc-lib/i386-linux/2.95.4/specs gcc version 2.95.4 20011006 (Debian prerelease) fixed in gcc 3.0.3. ) Systems: debian gnu/linux potato (with some updates) glibc 2.1.3 debian gnu/linux unstable glibc 2.2.4 Related bugs ? first i thought bug #2440 might be related > g++ -Wall -ansi -pedantic --save-temps bug.cpp -o bug bug.cpp: In function `int main()': bug.cpp:11: warning: unused variable `streamsize r' > ./bug Segmentation fault > g++ -Wall -ansi -pedantic --save-temps bug.cpp -o bug -lefence bug.cpp: In function `int main()': bug.cpp:11: warning: unused variable `streamsize r' > gdb ./bug [...] Starting program: /home/jens/develop/dope3/bugreport/./bug (no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)... Electric Fence 2.0.5 Copyright (C) 1987-1998 Bruce Perens. ElectricFence Aborting: free(40014000): address not from malloc(). (no debugging symbols found)...(no debugging symbols found)... Program received signal SIGILL, Illegal instruction. 0x400a4921 in kill () from /lib/libc.so.6 (gdb) i s #0 0x400a4921 in kill () from /lib/libc.so.6 #1 0x40020c56 in EF_Abort () from /usr/lib/libefence.so.0 #2 0x400205e1 in free () from /usr/lib/libefence.so.0 #3 0x400d2f31 in _IO_default_finish () from /lib/libc.so.6 #4 0x4004434e in streambuf::~streambuf () from /usr/lib/libstdc++-libc6.1-2.so.3 #5 0x4003f17a in filebuf::~filebuf () from /usr/lib/libstdc++-libc6.1-2.so.3 #6 0x400538fa in ifstream::~ifstream () from /usr/lib/libstdc++-libc6.1-2.so.3 #7 0x8048777 in main () #8 0x4009ea42 in __libc_start_main () from /lib/libc.so.6 (gdb) file bug.cpp: #include #define TOMUCH 1000 int main() { // read from any stream until eof std::ifstream i("bug.cpp"); std::streambuf &s=*i.rdbuf(); char cb[TOMUCH]; std::streamsize r=s.sgetn(cb,TOMUCH); // this is the problem // if you unget when previously get failed due to eof s.sungetc(); // this would trigger the same problem // s.sputbackc('A'); // and i think the real problem is pbackfail (_IO_default_pbackfail (genops.c)) // which they call both } >How-To-Repeat: >Fix: >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: application/gzip; name="bug.ii.gz" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="bug.ii.gz" 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