difference macro cause structure field missing binding