#2091: heap corruption in ghc-6.8.2?
----------------------+-----------------------------------------------------
Reporter: jeffz | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 6.8.2
Severity: normal | Resolution:
Keywords: | Difficulty: Unknown
Testcase: | Architecture: x86
Os: Windows |
----------------------+-----------------------------------------------------
Comment (by simonmar):
The valgrind error is this:
{{{
==1418== Thread 4:
==1418== Invalid read of size 4
==1418== at 0xE3E0D3: ???
==1418== by 0xE22109: ???
==1418== by 0x7BC6AAD1: call_thread_func (thread.c:398)
==1418== by 0x7BC6AD91: start_thread (thread.c:472)
==1418== by 0x491A31A: start_thread (in /lib32/libpthread-2.5.so)
==1418== by 0x4A0179D: clone (in /lib32/libc-2.5.so)
==1418== Address 0xb52299c is not stack'd, malloc'd or (recently) free'd
}}}
there are a few others similar to this. The ??? probably indicates that
the error occurred somewhere within GHC and the symbols aren't available.
This may well be a real problem, although I can't repeat it with valgrind
on Linux.
It doesn't look like Purify is reporting the same thing - the purify error
is an invalid free, which doesn't appear in the Valgrind log, AFAICS.
Also it is in `IsValidLocale`, which is something we don't call anywhere
in GHC. However, we do call `MultiByteToWideChar`, which conceivably
might call `IsValidLocale` inside Wine. I can't see anything wrong with
the way we call `MultiByteToWideChar` though - all the alloc/dealloc is
supposed to be done by the caller.
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/2091#comment:3>
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