change to be compatible with VC 2010+ (interface is a reserved keyword)
workaround for the case that ERROR is defined as preprocessor command (Visual Leak Detector does that)