Ребят, не знаю, что за хрень творится. Возможно valgrind сам грешит, возможно реально где-то в системе бага.
На входе пустой main:
int main()
{
return 0;
}
На выходе:
==12277== Memcheck, a memory error detector
==12277== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
==12277== Using Valgrind-3.10.0 and LibVEX; rerun with -h for copyright info
==12277== Command: ./Test-4.9
==12277==
==12277==
==12277== HEAP SUMMARY:
==12277== in use at exit: 72,704 bytes in 1 blocks
==12277== total heap usage: 1 allocs, 0 frees, 72,704 bytes allocated
==12277==
==12277== LEAK SUMMARY:
==12277== definitely lost: 0 bytes in 0 blocks
==12277== indirectly lost: 0 bytes in 0 blocks
==12277== possibly lost: 0 bytes in 0 blocks
==12277== still reachable: 72,704 bytes in 1 blocks
==12277== suppressed: 0 bytes in 0 blocks
==12277== Rerun with --leak-check=full to see details of leaked memory
==12277==
==12277== For counts of detected and suppressed errors, rerun with: -v
==12277== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
Компилирую, естественно, безо всяких ключей оптимизации и тому подобных приблуд.
Попробовал с другими версиями g++ (брал от 4.7 до 5.1 включительно), все повторяется. Забавно то, что в том же Wheezy таких проблем не возникает.
Не знаю, что с этим делать кроме того, что с этим придется смириться и как-то игнорировать.