Path: utzoo!utgpu!attcan!uunet!husc6!purdue!iuvax!bobmon From: bobmon@iuvax.cs.indiana.edu (RAMontante) Newsgroups: comp.lang.c Subject: Re: TurboC 1.5 Stack check Message-ID: <11336@iuvax.cs.indiana.edu> Date: 4 Aug 88 23:55:35 GMT References: <207600001@s.cs.uiuc.edu> Reply-To: bobmon@iuvax.UUCP (RAMontante) Organization: malkaryotic Lines: 15 The following is a W-AG. Kind corrections appreciated... cprintf, being a "console" printf, is going directly to the hardware. All the code is TC-generated, so when the stack finally overflows your program knows about it and the error-handling code succeeds. printf uses operating-system (BIOS) calls. Either by coincidence or for some fundamental reason, your stack finally dies while BIOS code is executing. There's no way TC code could know about or cleanup after this, and the BIOS doesn't have very sophisticated stack-error handling. So it dies. You couldn't get to a reliable DOS prompt; DOS has died. -- -- bob,mon (bobmon@iuvax.cs.indiana.edu) -- "half-witted: it's better than no wits at all."