#5003: test 4038 (ghci) fails on OS X 64 bit.
-------------------------------+--------------------------------------------
Reporter: gwright | Owner:
Type: bug | Status: new
Priority: normal | Component: GHCi
Version: 7.0.2 | Keywords:
Testcase: | Blockedby:
Os: MacOS X | Blocking:
Architecture: x86_64 (amd64) | Failure: Runtime crash
-------------------------------+--------------------------------------------
Test 4038 (ghci) sometimes fails on OS X 64 bit. When the failure
happens, the test crashes with a segfault or bus error:
{{{
gwright-macbook> inplace/bin/ghc-stage2 --interactive 4038.hs
GHCi, version 7.1.20110302: http://www.haskell.org/ghc/ :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Loading package ffi-1.0 ... linking ... done.
[1 of 1] Compiling Main ( 4038.hs, interpreted )
Ok, modules loaded: Main.
*Main> main
Bus error
gwright-macbook>
}}}
Under gdb, I get
{{{
gwright-macbook> gdb
GNU gdb 6.3.50-20050815 (Apple version gdb-1510) (Wed Sep 22 02:45:02 UTC
2010)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you
are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for
details.
This GDB was configured as "x86_64-apple-darwin".
(gdb) source gdbinit
(gdb) source gdb_ghc
Reading symbols for shared libraries ..... done
(gdb) run
Starting program: /Users/gwright/tmp/ghc-7-branch/ghc/inplace/lib/ghc-
stage2 +RTS -V0 -i0 -RTS -B/Users/gwright/tmp/ghc-7-branch/ghc/inplace/lib
-pgmc /usr/bin/gcc-4.2 -pgma /usr/bin/gcc-4.2 -pgml /usr/bin/gcc-4.2 -pgmP
"/usr/bin/gcc-4.2 -E -undef -traditional" --interactive 4038.hs
Reading symbols for shared libraries ++++. done
GHCi, version 7.0.1.20101221: http://www.haskell.org/ghc/ :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Loading package ffi-1.0 ... linking ... done.
[1 of 1] Compiling Main ( 4038.hs, interpreted )
Ok, modules loaded: Main.
*Main> main
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x0000000104300fd8
[Switching to process 249]
0x0000000101f3d8a9 in stg_makeStablePtrzh ()
(gdb)
}}}
The `gdb_ghc` file used to start `gdb` contained:
{{{
file /Users/gwright/tmp/ghc-7-branch/ghc/inplace/lib/ghc-stage2
set args +RTS -V0 -i0 -RTS
-B/Users/gwright/tmp/ghc-7-branch/ghc/inplace/lib -pgmc /usr/bin/gcc-4.2
-pgma /usr/bin/gcc-4.2 -pgml /usr/bin/gcc-4.2 -pgmP "/usr/bin/gcc-4.2 -E
-undef -traditional" --interactive 4038.hs
}}}
I had copied the failing `4038.hs` file to the top level directory.
The address of the failure, `0x104300fd8`, is in the block of memory
mapped by the linker for `HSghc-prim-0.2.0.0.o`.
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/5003>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs