Message-Id: <3.0.6.32.19990201010339.0084c240@pop.netaddress.com> X-Sender: pderbysh AT pop DOT netaddress DOT com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.6 (32) Date: Mon, 01 Feb 1999 01:03:39 -0500 To: djgpp AT delorie DOT com From: Paul Derbyshire Subject: Questions re: signals Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Reply-To: djgpp AT delorie DOT com I have several questions regarding signals. A search of the faq, info files, website, and archive only partially answered these. 1. DJGPP 2.02 masks FPU exceptions by default but earlier DJGPPs do not. -- Is there a #define that will distinguish DJGPP 2.02 and later versions from earlier versions? Not critically important. -- In pre-2.02, FPU exceptions are masked using _control87. The info files show _control87 accepting two unsigned ints, one called a 'new control word' the other a 'mask'. It isn't made clear, however, how the _control87 combines these with the FPU state. Like, does it OR with the 'new control word' and AND with the 'mask' or what, precisely? The mailing list archives did not answer this. This IS important! -- Do other Intel arch GCC development environments (Cygnus, etc.) behave consistently about the FPU? Do all support a _control87 in float.h with the exact same syntax and semantics? -- Non-GCC DOS and Windows compilers -- How do these manage FPU exceptions? -- How are FPU exceptions managed under Linux using GCC, or using other compilers? -- How do other CPU architectures manage FPU exceptions? 2. The signal handling mechanism for setting signal handlers and the like is uniform among POSIX-compliant development environments right? 3. Is there a standard C/C++ library function to launch an external app synchronously regardless of whether the OS has multitasking support? 4. Is there a way to launch a child program and capture stderr from it, but not stdout? (I assume yes since the DJ util redir must do it.) Is there such a method that is uniform across many operating systems? 5. What happens to a DJGPP app if it launches a child that catches a fatal signal, e.g. SIGSEGV? Is there a way to ensure that the launching app stays stable and perceives it as the child returning errorlevel 255? How does this translate to Linux and other protected mode environments? -- .*. "Clouds are not spheres, mountains are not cones, coastlines are not -() < circles, and bark is not smooth, nor does lightning travel in a `*' straight line." ------------------------------------------------- -- B. Mandelbrot |http://surf.to/pgd.net _____________________ ____|________ Paul Derbyshire pderbysh AT usa DOT net Programmer & Humanist|ICQ: 10423848|