This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libstdc++/26123] New: Segmentation fault in constructor of std::ostream::sentry::sentry


When compiled with:
  g++-4.0 -g -Wall   -c -o try.o try.cc
  g++-4.0 -g -Wall   -c -o foo.o foo.cc
  g++-4.0 -g -Wall -o try try.o foo.o
the program below creates a segmentation fault.

UNIX> gdb ./try
(gdb) r
Starting program: /data/home/osb/temp/clcpp/try 

Program received signal SIGSEGV, Segmentation fault.
0xb7f83de5 in std::ostream::sentry::sentry () from /usr/lib/libstdc++.so.6

try.h
=====
#ifndef TRY_H
#define TRY_H

int mkCint();
const int cInt = mkCint();

#endif

try.cc
======
#include "try.h"
#include <iostream>

int main()
{
    std::cout << cInt << std::endl;
}

int mkCint()
{
    std::cout << "mkCint()" << std::endl;
    return 2;
}

foo.cc
======
#include "try.h"

Notes
If stdout instead of std::cout is used OR
if compiled with g++-3.3 the program runs as expected:
UNIX> ./try
mkCint()
mkCint()
2
UNIX>


-- 
           Summary: Segmentation fault in constructor of
                    std::ostream::sentry::sentry
           Product: gcc
           Version: 4.0.3
            Status: UNCONFIRMED
          Severity: major
          Priority: P3
         Component: libstdc++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: broeni at osb-systems dot com
 GCC build triplet: i486-pc-linux-gnu
  GCC host triplet: i486-pc-linux-gnu
GCC target triplet: i486-pc-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26123


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]