This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
I am attempting to build libstdc++ 2.90.6
with the following configuration:
- Windows NT4 sp3
- cygwin full b20.1
- Mumit's gcc 2.95.2 installed according to
instructions
The symptom is that when mknumeric_limits
runs, it hangs in a loop (CPU is chewed-up and nothing useful happens). When I
dig into things, I find that gen-num-limits.exe is where the loop is happening,
and, when I dig in farther, I find that the loop is in exception handling code.
gen-num-limits is trying to generate divide-by-zero and overflow errors for
various intrinsic types; this is where the problem is occurring.
If I run gen-num-limits interactively (so
it spews to the terminal), I see that the behavior is not consistent; sometimes
it chokes on divide-by-zero for one type and sometimes for
another.
Here is a small program with which I can
reproduce the problem simply (built with no special options):
------------------------------ cut here
----------------------------
#include <signal.h>
#include <setjmp.h> #include <stdio.h> jmp_buf env; void signal_handler(int sig)
{ fprintf(stderr, "caught a signal\n"); longjmp(env, sig); } typedef char
tested_type;
int main(int argc, char
**argv)
{ signal(SIGFPE, signal_handler); if (setjmp(env) == 0) { fprintf(stderr, "set the jump return location\n");
tested_type zero =
tested_type();
tested_type one = tested_type(1); tested_type junk = one / zero; } fprintf(stderr,
"Done!\n");
return 0; } ------------------------------ cut here
----------------------------
This is essentially the flow of processing that occurrs in gen-num-limits.
With tested_type set to an integral type (including bool), sometimes it works,
sometimes it loops. Sometimes it just exits.
Does anyone know of an issue here?
Vadim Egorov posted a message about this a few months ago, but there are no
replies on this list.
Thanks for any help.
-- Matthew Brown |
BEGIN:VCARD VERSION:2.1 N:Brown;Matthew FN:Matthew Brown ORG:Concord Software, Inc. TITLE:Senior Programmer TEL;WORK;VOICE:(603) 880-8151 TEL;WORK;FAX:(603) 886-1780 ADR;WORK:;;4 John Tyler Street;Merrimack;New Hampshire;03054;USA LABEL;WORK;ENCODING=QUOTED-PRINTABLE:4 John Tyler Street=0D=0AMerrimack, New Hampshire 03054=0D=0AUSA X-WAB-GENDER:2 URL: URL:http://www.concordsw.com EMAIL;PREF;INTERNET:mbrown@mediadb.net REV:19991221T225006Z END:VCARD
-- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe@sourceware.cygnus.com
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |