Hello, I have two reports. A brief description of the system: $ uname -a | sed "s/${HOSTNAME}/\${HOSTNAME}/g" CYGWIN_NT-10.0 ${HOSTNAME} 3.1.7(0.340/5/3) 2020-08-22 17:48 x86_64 Cygwin
The first report: $ cpp /usr/include/threads.h # 1 "/usr/include/threads.h" # 1 "<built-in>" # 1 "<command-line>" # 1 "/usr/include/threads.h" /usr/include/threads.h:30:10: fatal error: machine/_threads.h: No such file or directory 30 | #include <machine/_threads.h> | ^~~~~~~~~~~~~~~~~~~~ compilation terminated. $ cygcheck -p machine/_threads.h Found 0 matches for machine/_threads.h $ cygcheck -f /usr/include/threads.h cygwin-devel-3.1.7-1 $ cygcheck -c cygwin-devel Cygwin Package Information Package Version Status cygwin-devel 3.1.7-1 OK I'm not sure what to do from here. I don't remember where I ran into this, but this feels like something that shouldn't happen The second report: $ cat test.c #include <math.h> #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { long double a, b, c; char *num_end = NULL; a = b = c = 0.0L; if (argc != 2) { fprintf(stderr, "Usage: %s NUMBER\n", argv[0]); exit(1); } a = strtold(argv[1], &num_end); b = modfl(a, &c); printf("%Lf %Lf %Lf\n", a, b, c); return 0; } $ gcc -Og -ggdb -g3 -Wall -Wextra -std=c99 -pedantic test.c -o test.exe $ ./test.exe 123.456 Segmentation fault (core dumped) $ gdb --args ./test.exe 123.456 GNU gdb (GDB) (Cygwin 8.3.1-1) 8.3.1 ... Reading symbols from ./test.exe... (gdb) break modfl (gdb) run Starting program: /home/Daniel/test.exe 123.456 [New Thread 13960.0x3cf4] [New Thread 13960.0xbdc] [New Thread 13960.0x4028] [New Thread 13960.0x3224] [New Thread 13960.0x3810] [New Thread 13960.0x1ae4] [New Thread 13960.0x3714] [Thread 13960.0x4028 exited with code 3697672192] [Thread 13960.0x3714 exited with code 0] Thread 1 "test" hit Breakpoint 1, modfl (value=<optimized out>, iptr=iptr@entry=0xffffcbd0) at /usr/src/debug/cygwin-3.1.7-1/winsup/cygwin/math/modfl.c:16 16 asm ("subq $8, %%rsp\n" (gdb) step 38 if (iptr) (gdb) step 39 *iptr = int_part; (gdb) step 40 return (isinf (value) ? 0.0L : value - int_part); (gdb) step 0 [main] test 28439 cygwin_exception::open_stackdumpfile: Dumping stack trace to test.exe.stackdump [Thread 13960.0x3b5c exited with code 35584] [Thread 13960.0x1ae4 exited with code 35584] [Thread 13960.0x3810 exited with code 35584] [Thread 13960.0xbdc exited with code 35584] [Thread 13960.0x3cf4 exited with code 35584] [Inferior 1 (process 13960) exited with code 0105400] (gdb) isinf and isinfl both work just fine, so I'm not sure what's going on there. Please let me know if you need more information. -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple