https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66756
Melven.Roehrig-Zoellner at DLR dot de changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |Melven.Roehrig-Zoellner@DLR | |.de --- Comment #4 from Melven.Roehrig-Zoellner at DLR dot de --- I also obtain this with GCC 6.1.0. Identical setup leads to: > ./a.out ================== WARNING: ThreadSanitizer: lock-order-inversion (potential deadlock) (pid=5480) Cycle in lock order graph: M20 (0x7f0a157f3b60) => M21 (0x7d580000f3d0) => M20 Mutex M21 acquired here while holding mutex M20 in main thread: #0 pthread_mutex_lock /tools/modulesystem/tools/gcc/gcc-6.1.0/src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:3308 (libtsan.so.0+0x000000035c7e) #1 __gthread_mutex_lock ../libgcc/gthr-default.h:748 (libgfortran.so.3+0x0000000e4078) #2 insert_unit /tools/modulesystem/tools/gcc/gcc-6.1.0/src/libgfortran/io/unit.c:220 (libgfortran.so.3+0x0000000e4078) #3 main test.f90:3 (a.out+0x000000400b30) Hint: use TSAN_OPTIONS=second_deadlock_stack=1 to get more informative warning message Mutex M20 acquired here while holding mutex M21 in main thread: #0 pthread_mutex_lock /tools/modulesystem/tools/gcc/gcc-6.1.0/src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:3308 (libtsan.so.0+0x000000035c7e) #1 __gthread_mutex_lock ../libgcc/gthr-default.h:748 (libgfortran.so.3+0x0000000e4ab6) #2 close_unit_1 /tools/modulesystem/tools/gcc/gcc-6.1.0/src/libgfortran/io/unit.c:707 (libgfortran.so.3+0x0000000e4ab6) #3 main test.f90:3 (a.out+0x000000400b30) SUMMARY: ThreadSanitizer: lock-order-inversion (potential deadlock) ../libgcc/gthr-default.h:748 in __gthread_mutex_lock ================== ThreadSanitizer: reported 1 warnings This prevents me from doing automated thread-sanitizer tests in our Fortran software.