Why is it not possible to build a garbage collector for C++ when pointers are used?