http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49214
Summary: [4.7 Regression] Broken pipe in backtrace for x86_64-apple-darwin10 Product: gcc Version: 4.7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libfortran AssignedTo: unassig...@gcc.gnu.org ReportedBy: domi...@lps.ens.fr CC: fxcoud...@gcc.gnu.org, j...@gcc.gnu.org Since some time -fbacktrace is enabled by default in gfortran, leading to outputs such as [macbook] f90/bug% a.out ú! @wxyzMú! @wxyzM 5.2054160474760624E-145 @wx 31353 3.1415901184082031 wxyz 77 Backtrace for this error: + 0 libgfortran.3.dylib 0x0000000100004840 _gfortrani_show_backtrace + 32 + 1 a.out 0x0000000100000d7f MAIN__ + 9 + 2 a.out 0x0000000100000db7 main + 54 + 3 a.out 0x0000000100000838 start + 52 + 4 ??? 0x0000000000000001 0x0 + 1 Abort Since revision 174030, on x86_64-apple-darwin10 they have been replaced with [macbook] f90/bug% a.out ú! @wxyzMú! @wxyzM 5.2054160474760624E-145 @wx 31353 3.1415901184082031 wxyz 77 Backtrace for this error: #0 /Users/dominiq/Documents/Fortran/g95bench/win/f90/bug/a.out[0x100003B77] in at Broken pipe AFAIU the changes in libgfortran/runtime/backtrace.c, this has to be expected since the pipe support seems to have been removed. I would not have bothered too much if I dis not have a nasty side effect when the run time error is of the kind a.out(22437) malloc: *** error for object 0x414c000000000000: pointer being freed was not allocated *** set a breakpoint in malloc_error_break to debug or Assertion failed: (GFC_DESCRIPTOR_RANK (a) == 2 || GFC_DESCRIPTOR_RANK (b) == 2), function matmul_r8, file ../../../work/libgfortran/generated/matmul_r8.c, line 91. In which case the OSX the executable enter in a weird state after having triggered the OSX crash reporter: the executable eats half of the CPU time on each core in the system state and a duplicate between parentheses appears. So far the only solution I have found is to 'kill -9' the executable. Not suitable for automatic testing. Note that compiling with -fno-stacktrace does not help.