представь твой код исполняется на юзерспейс потоке (стекфул корутине, файбере) и в нем ты запустил какую-то функцию, а она выкинула исключение.
тут могут быть проблемы потому что ты исполняешься на стеке который ты выделил malloc-ом. поэтому перед тем как запустить функцию в файбере надо ее окружить try-catch, поймать исключение и потом когда ты вернешься в главный поток уже выкинуть. в общем есть и другие примеры когда не хочется в текущий момент выкидывать исключение