От чего может быть сегфолт после main?
Например, в таком демонстрационном бесполезном куске кода, у меня программа падает, если дать ей на stdin больше 5 символов, если скомпилировать ее с glibc-2.22.
Если закрыть stdin, перед выходом из main, то сегфолта нет. С glibc-2.21 тоже не сегфолтится, даже если не закрывать stdin. Что-то поменялось в glibc-2.22, или это только у меня так?
#include <stdio.h>
#include <locale.h>
#include <wchar.h>
static const int N = 2;
int main(void) {
setlocale(LC_ALL, "");
wchar_t data[N];
fgetws(data, N, stdin);
printf("%ls\n", data);
/* fclose(stdin); */
return 0;
}