Директива #undef M:

  • показывает, что M появляется в программе
  • после объявления отменяет директиву M
  • создаёт директиву с именем М

К сожалению, у нас пока нет статистики ответов на данный вопрос, но мы работаем над этим.