http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54432
--- Comment #1 from Karl Kirch <karlkrch at gmail dot com> 2012-08-31 02:06:50 UTC --- Another test case. Looks like I end up with lost memory for every class I define. #include <objc/Object.h> @interface Test : Object {} @end @implementation Test @end int main() { id t = [[Test alloc] init]; [t free]; return 0; } and Valgrind gives me ==28397== HEAP SUMMARY: ==28397== in use at exit: 10,136 bytes in 150 blocks ==28397== total heap usage: 169 allocs, 19 frees, 12,808 bytes allocated ==28397== ==28397== LEAK SUMMARY: ==28397== definitely lost: 32 bytes in 2 blocks ==28397== indirectly lost: 16 bytes in 1 blocks ==28397== possibly lost: 0 bytes in 0 blocks ==28397== still reachable: 10,088 bytes in 147 blocks ==28397== suppressed: 0 bytes in 0 blocks