В соответствии с этим article:
Если вы попытаетесь заблокировать нерекурсивный мьютекс дважды из одного и того же потока без разблокировки между ними, вы получите поведение undefined.
Мой самый наивный ум говорит мне, почему они просто не возвращают ошибку? Есть ли причина, по которой это должно быть UB?