> I have run into something in GHC that looks > like a bug (GHC 6.0.1 under Win2k). A DLL with several exported > FFI functions reports (and then terminates): > > ghcDll: internal error: schedule: invalid what_next field > Please report this as a bug to [EMAIL PROTECTED], > or http://www.sourceforge.net/projects/ghc/ > > What is really strange: I get this error ONLY when I run my > application (C++ code which loads the DLL dynamically) under MS > Visual Studio 6 in Debug Mode. When I run the same executable > from shell/command prompt, then everything works. Also, when I > compile the DLL with GHC version 5.x, I can run the application > from Visual Studio 6 without problems. So this seems to be > GHC 6.x specific. > > Not 100% sure, but looks like I get this error on a first call to > any FFI function. Unfortunately the application is rather large but > I could try to simplify it. I had this problem also with GHC 6.0.0. > Any ideas?
Just wondering: are you using the DLL wrapper code that comes with H/Direct? (it looks like it from the error message - ghcDll is what that wrapper uses as the dummy binary name). If you're using H/Direct, then there are one or two bugs in the DLL support that I believe have been fixed recently. In particular, DllCanUnloadNow() was bogusly returning S_OK all the time, which could lead to the crash you mention above. Change DllCanUnloadNow to consistently return E_FAIL to work around it, or grab new H/Direct sources from CVS. Cheers, Simon _______________________________________________ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs