Visual Studio: не работает авто-отступ после вызова макроса без точки с запятой

Я активировал автоматическое форматирование кода в Visual Studio 2015 для устаревшего проекта C ++.

Проблема в том, что строки кода после определенных вызовов макросов (не закрываются точкой с запятой, поскольку они внутри макроса) всегда имеют отступ. Я ищу параметр в Visual Studio 2015, чтобы предотвратить это, без необходимости устанавливать другое расширение, необходимости изменять само определение макроса или просить всех добавить дополнительную точку с запятой к вызову (что бы это исправить).

Вот минимальный пример того, как выглядит код и возникающая проблема:

#include <iostream>

#ifdef _DEBUG
# define MY_TRACE(X) do { std::cout << X << std::endl; } while (0);
#else
# define MY_TRACE(X) {}
#endif

int main()
{
MY_TRACE( "Hello World!" )
return 0;
}

Поэтому у меня есть следующие настройки, которые автоматически делают отступ, например, на <Enter> или с } :

Настройки автоформатов C ++

И следующие настройки для отступа:

Настройки отступов C ++

Я испробовал все возможные и невозможные комбинации настроек там и в других местах (включая, например, поворот «Tabs / Indenting / Smart»). Каждый раз, когда редактор Visual Studio C ++ продолжал делать отступ для строки после макроса.

Я также не мог найти что-либо на SO или в Интернете. Ближе всего я получил, но у меня не было ответа или где найти другой редактор / язык:

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector