Eclipse CDT макро автоматическое форматирование - PullRequest
0 голосов
/ 20 ноября 2018

Я использую TrueSTUDIO 9.1.0, а также проверил это в свежей Eclipse IDE для разработчиков на C / C ++ версия: 2018-09 (4.9.0).

Кажется, автоматический форматер кода ставит точку с запятой послевызов макроса на новой строке.

Действия по воспроизведению:

  1. Загрузить Eclipse IDE для разработчиков на C / C ++ версия: 2018-09 (4.9.0) для Windows 32bit.

  2. Создать новый пустой проект C

  3. Создать файл .c с кодом:

    #define testmacro() do {printf("test");} while (0)

    void main(void) { testmacro(); }

  4. Отформатируйте весь файл, нажав Ctrl + Shift + F

  5. Получить:

    #define testmacro() do {printf("test");} while (0)<br> void main(void) { testmacro() ; }

Это обсуждалось и отклонялось в этом вопросе ( ссылка ) по причине того, что оно было исправлено.

Я делаю что-то не так илиошибка вернулась?

1 Ответ

0 голосов
/ 20 ноября 2018

Я не думаю, что вы делаете что-то не так, встроенный форматер CDT просто глючит и не поддерживается.Есть десятки открытых ошибок о его поведении.В этом случае это выглядит как ошибка 475349 .

Я бы порекомендовал использовать плагин, который обертывает современный поддерживаемый форматер, такой как clang-format, такой как CppStyle .

...