digitalmars.D.bugs - std.stream Access Violation
- Vathix (17/17) Jan 22 2005 DMD 0.111 on Windows,
- Ben Hinkle (10/27) Jan 22 2005 It looks like the phobos.lib that is in dmd.zip isn't quite right. When ...
DMD 0.111 on Windows, import std.stream; int main() { File f; EndianStream stm; f = new File("foo.txt", FileMode.OutNew); stm = new EndianStream(f); stm.writeBOM(BOM.UTF8); // Here. stm.close(); f.close(); return 0; } Causes an Access Violation when using phobos.lib, but if I compile stream.d and link it in myself it works OK. Took too long to track this down :| Debugger gave me an irrelevant line number and said the AV was from MemoryStream's vtbl.
Jan 22 2005
It looks like the phobos.lib that is in dmd.zip isn't quite right. When I recompile phobos without changing anything I get a slightly larger phobos.lib (579K instead of 574K) and, more importantly, the lib works. I think Walter should do a clean build on phobos - my guess is an old stream.obj was floating around and when he dropped in my updated stream.d the time-stamp on my file was probably older than the obj (I'm stretching, perhaps) and that fooled the dependency checker so it didn't rebuild stream.obj. I can't explain the behavior otherwise. "Vathix" <vathix dprogramming.com> wrote in message news:opskz9g9h7kcck4r tc3-ppp223.dialup.wzrd.com...DMD 0.111 on Windows, import std.stream; int main() { File f; EndianStream stm; f = new File("foo.txt", FileMode.OutNew); stm = new EndianStream(f); stm.writeBOM(BOM.UTF8); // Here. stm.close(); f.close(); return 0; } Causes an Access Violation when using phobos.lib, but if I compile stream.d and link it in myself it works OK. Took too long to track this down :| Debugger gave me an irrelevant line number and said the AV was from MemoryStream's vtbl.
Jan 22 2005