I've now ran the core dumps through gdb to get backtraces for them all in case somebody else has any insight into the causes:
**cyclecollector.core** > gdb ./tests/gc/cyclecollector cyclecollector.core Reading symbols from ./tests/gc/cyclecollector... (No debugging symbols found in ./tests/gc/cyclecollector) [New process 1] Core was generated by `cyclecollector'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x000074b6c8e0acad in pthread_attr_get_np () from /usr/lib/libpthread.so.1 (gdb) bt #0 0x000074b6c8e0acad in pthread_attr_get_np () from /usr/lib/libpthread.so.1 #1 0x000074b6c8e0b107 in pthread_getattr_np () from /usr/lib/libpthread.so.1 #2 0x000074b6c920e4c2 in GC_get_main_stack_base () from /usr/pkg/lib/libgc.so.1 #3 0x000074b6c92178b5 in GC_init () from /usr/pkg/lib/libgc.so.1 #4 0x0000000000402a6a in systemInit000 () #5 0x0000000000403266 in NimMain () #6 0x0000000000403567 in main () Run **cycleleak.core** > gdb ./tests/gc/cycleleak cycleleak.core Reading symbols from ./tests/gc/cycleleak... (No debugging symbols found in ./tests/gc/cycleleak) [New process 1] Core was generated by `cycleleak'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x00007f231f00acad in pthread_attr_get_np () from /usr/lib/libpthread.so.1 (gdb) bt #0 0x00007f231f00acad in pthread_attr_get_np () from /usr/lib/libpthread.so.1 #1 0x00007f231f00b107 in pthread_getattr_np () from /usr/lib/libpthread.so.1 #2 0x00007f231f40e4c2 in GC_get_main_stack_base () from /usr/pkg/lib/libgc.so.1 #3 0x00007f231f4178b5 in GC_init () from /usr/pkg/lib/libgc.so.1 #4 0x0000000000402d50 in systemInit000 () #5 0x0000000000403966 in NimMain () #6 0x0000000000403e7b in main () Run **gcbench.core** > gdb ./tests/gc/gcbench gcbench.core Reading symbols from ./tests/gc/gcbench... (No debugging symbols found in ./tests/gc/gcbench) [New process 1] Core was generated by `gcbench'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x00007218cb40acad in pthread_attr_get_np () from /usr/lib/libpthread.so.1 (gdb) bt #0 0x00007218cb40acad in pthread_attr_get_np () from /usr/lib/libpthread.so.1 #1 0x00007218cb40b107 in pthread_getattr_np () from /usr/lib/libpthread.so.1 #2 0x00007218cb80e4c2 in GC_get_main_stack_base () from /usr/pkg/lib/libgc.so.1 #3 0x00007218cb8178b5 in GC_init () from /usr/pkg/lib/libgc.so.1 #4 0x0000000000405935 in systemInit000 () #5 0x0000000000408c13 in NimMain () #6 0x0000000000408f8f in main () Run * * * It seems the failure is always in pthread_attr_get_np. I'm going to try and reduce this in some C code to see if I can replicate it...