How can sizeof(T) ever be 0?

That aside, there is a STATIC_ASSERT macro in node_internals.h that gcc 4.8 doesn't complain about it (it doesn't like unused typedefs).