node.h is a public header.  C_CTOR is likely to conflict with a user definition somewhere.  I'd rename it to NODE_C_CTOR.