Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!think!husc6!wjh12!lotto From: lotto@wjh12.UUCP (Jerry Lotto) Newsgroups: comp.sys.ibm.pc,comp.sources.d,comp.sys.intel Subject: Re: 80287 FLD ST(0) - causes my AT to hang! Message-ID: <36@wjh12.UUCP> Date: Fri, 21-Nov-86 21:37:18 EST Article-I.D.: wjh12.36 Posted: Fri Nov 21 21:37:18 1986 Date-Received: Sat, 22-Nov-86 00:02:15 EST References: <35@wjh12.UUCP> Reply-To: lotto@wjh12.UUCP (Jerry Lotto) Distribution: net Organization: Harvard Univ. Chem. Dept. Lines: 9 Xref: mnetor comp.sys.ibm.pc:189 comp.sources.d:36 comp.sys.intel:49 I found the problem. For ref, the stack was full. The behavior was less than graceful, but when another value was pushed - ZAP! The garbage on the stack accumulated from assorted divide by zero exceptions that were not being cleaned up after. Debugging this was not fun. There were lots of twisty passages, all alike. At any rate, the solution is a call to _fpreset in the floating point exception code (fpe() in parse.c). I put mine inside an #ifdef MSC.