История изменений
Исправление beastie, (текущая версия) :
И в тоже время OpenBSD это ловит, а Linux вот нет.
UPD: обновил для портабельности:
#include <assert.h>
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
int
main(void)
{
char *s;
size_t sz = sysconf(_SC_PAGESIZE);
s = malloc(sz);
assert(s);
printf("%x\n", s[sz]);
free(s);
return 0;
}
$ uname -a && make m && ./m
OpenBSD dim13.org 5.4 GENERIC.MP#41 amd64
cc -O2 -pipe -o m m.c
Segmentation fault (core dumped)
$ uname -a && make m && ./m
Linux otto 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux
cc m.c -o m
0
Вот так то.
Исходная версия beastie, :
И в тоже время OpenBSD это ловит, а Linux вот нет.