LINUX.ORG.RU

rustc спасает gcc

 , ,


0

1

https://developers.redhat.com/blog/2019/03/08/usability-improvements-in-gcc-9/

В GCC 9 добавят форматирование ошибок как в rustc. В том числе и с json выхлопом, что облегчит жизнь IDE (и не только).

До уровня rustc, или хотя бы clang, ещё далеко, но прогресс радует.

★★★★★

В том числе и с json выхлопом, что облегчит жизнь IDE (и не только).

А как же вопли штальмана о том, что это будет использоваться в проприетарных IDE, которые несут смерть и погибель? Или на него болт положили?

hateyoufeel ★★★★★
()

clang жрёт неимоверное количество памяти и проца.

Если хочешь быстро и без сжирания гигабайтов памяти, тогда есть gcc.

Volas
()

Плохо, теперь будет развесистая лапша на 200 экранов на свистопердульках, но что поделать надеюсь будет можно выбирать в ином случае тупо привыкать. А вот json хорошо, ну в плане того что как то отдельно выхлоп фильтровать.

Deleted
()

По ссылке нет ни слова про rust/clang/llvm. Или что, json изобрели в rustс?

Короче, жырный наброс.

Crocodoom ★★★★★
()
Ответ на: комментарий от Deleted

Плохо, теперь будет развесистая лапша на 200 экранов на свистопердульках, но что поделать надеюсь будет можно выбирать в ином случае тупо привыкать.

Конечно можно будет оставить старый вариант

Crocodoom ★★★★★
()

лол, такое форматирование ошибок было с MSVC 2013 если не раньше(/diagnostics:caret), причём тут rustc?

Вот то что json выдаёт это что-то новое, но это именно для писателей ide всяких, а не для программистов С++

fsb4000 ★★★★★
()
Последнее исправление: fsb4000 (всего исправлений: 2)
Ответ на: комментарий от Volas

clang жрёт неимоверное количество памяти и проца.

Если хочешь быстро и без сжирания гигабайтов памяти, тогда есть gcc.

Я обычно сталкиваюсь с другой ситуацией:

CMake сжирает всю память и процессор (комментарий)

Из-за багов в GCC он съедает всю память на билд-сервере и убивается по OOM. Тогда как с clang всё проходит гладко.

EXL ★★★★★
()
Ответ на: комментарий от hateyoufeel

А как же вопли штальмана о том, что это будет использоваться в проприетарных IDE, которые несут смерть и погибель?

А есть хоть 1 нормальная проприетарная DE которая просто работает?
А то я вот до сих пор geany пользуюсь, а Clion то еще забагованное говнище.

Язык: C

reprimand ★★★★★
()
Ответ на: комментарий от reprimand

А есть хоть 1 нормальная проприетарная DE которая просто работает?

Не знаю. У меня emacs. Слышал, что MSVS весьма крута.

А то я вот до сих пор geany пользуюсь

Мои соболезнования.

Clion то еще забагованное говнище.

Несколько знакомых пользуются. Говорят, всё ок.

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 1)
Ответ на: комментарий от hateyoufeel

Не знаю. У меня emacs. Слышал, что MSVS весьма крута.

Под онтопиком не работает

Мои соболезнования.

Альтернативы?

vim с конфигом не предлагать

Несколько знакомых пользуются. Говорят, всё ок.

Они никак не смогу пофиксить определение unused statement и unused structure fields, и прочие вещи которые касаются анализа кода. Да и настройки auto identation нифига не гибкие, и иногда не применяются без перезапуска.

В общем, на любой проекте, который чуть толще hello world вылазят косяки.

Я раньше использовал Clion. Потом дропнул.

reprimand ★★★★★
()
Ответ на: комментарий от hateyoufeel

А есть что-то для любителей классического интерфейса?
Без вот этих вот «буферов» и странных комбинаций клавиш?

Такое чтобы с главным меню, кнопочками на панели инструментов, вот чтобы как для людей? Чтобы скачал и начал пользоваться?

reprimand ★★★★★
()
Ответ на: комментарий от reprimand

А есть что-то для любителей классического интерфейса?
Без вот этих вот «буферов» и странных комбинаций клавиш?

Тогда водку.

hateyoufeel ★★★★★
()

Я уж думал, gcc переписывают на rust. Наконец-то.

anonymous
()
Ответ на: комментарий от RazrFalcon

sublime?

Установил через официальную иструкцию на офсайте.
При каждом запуске оно проверяет обновления и выдаёт popup о наличии новой версии. Не нашел в настройках как отключить такое неадекватное поведение, зато нашел опцию для конфига. Которая не работает.

Удалил.

reprimand ★★★★★
()

В том числе и с json выхлопом

компиль упал в segfault, парсер json сломался на незаконченном выхлопе

anonymous
()
Ответ на: комментарий от Volas

clang жрёт неимоверное количество памяти и проца.

Всегда ж наоборот было - clang собирает быстрее, а lld требует куда меньше памяти.

devl547 ★★★★★
()
Ответ на: комментарий от RazrFalcon

Она бесполезна, т. к. vim уже был. Тяжелый велосипед с 1 колесом, пусть и с дизайном — бесполезный велосипед, если сравнивать.

Volas
()
Ответ на: комментарий от anonymous

Ты, это, как посмотришь расскажи как оно.

Расскажу. Только озвучь какой у тебя список требования к DE.

У меня лично такой:

1) Auto identation, обязательно настраиваемый
2) Auto completion, желательно с полями структур (в geany есть поддержка auto completion имён функций, да и то только стандартной библиотеки, символы с текущего файла оно неподтягивает)
3) Переход к объявлению и телу процедуры, переменной, макроса, типа и назад
4) Подсветка имён и типов аргументов во время заполнения аргументов функции (в geany она есть как только открываешь круглую скобку, дальше пропадает)

Опционально и необязательно:

1) Статический анализ, можно примитивный
2) Проверка типов до компиляции (например когда я присваиваю по ошибке не тот тип, или например когда я работаю с полями структуры и уже не помню как я получаю к ней доступ - напряму или через указатель, крч удобная штука которая даёт возможность отлавливать глупые ошибки не разбирая их уже от компилятора)
3) Удобная работа с терминалом (в geany F4 - переключился в терминал, F2 - назад в редактор)
4) Отображение документации по комбинации клавиш либо всплывающей подсказкой

reprimand ★★★★★
()
Ответ на: комментарий от reprimand

какой у тебя список требования к DE.

DE это Desktop Environment. Устоявшееся выражение для среды разработки это IDE – Integrated Development Environment.

EXL ★★★★★
()
Ответ на: комментарий от reprimand

Из твоего списка обязательного 2 и 4. Считаю этот необходимым минимумом для IDE.

anonymous
()
Ответ на: комментарий от anonymous

Для gtk вроде как Builder пилят, а для wx вполне.

RazrFalcon ★★★★★
() автор топика
Ответ на: комментарий от RazrFalcon

Да, проблема. Встроенная подсветка кода не умеет в C++17, а с clang-format-ом пробелы при выравнивании заменяются на табы.

При прогоне через clang-format вне QtC такого не наблюдается, так что проблема не в конфиге, а в плагине QtC.

anonymous
()
Ответ на: комментарий от anonymous

Встроенная подсветка кода

Не подсветка кода, а встроенный айдентер.

anonymous
()
Ответ на: комментарий от reprimand

в geany есть поддержка auto completion имён функций, да и то только стандартной библиотеки, символы с текущего файла оно неподтягивает

У тебя что то не так работает, у меня все подтягивает, автодополняет поля структур, функции, еще и аргументы, возвращаемый тип показывает.

vladimir_vist
()
Ответ на: комментарий от anonymous

Там вроде для автокомплита есть только «неофициальный» geany-clang из плагинов. У меня по дефолту так работает.

vladimir_vist
()
Ответ на: комментарий от reprimand

А есть хоть 1 нормальная проприетарная DE которая просто работает?

У меня Sublime Text 3. Не IDE, но проприетарщина. Причём сразу и GCC-based и LLVM-based плагины стоят, оба сразу.

kostyarin_ ★★
()
Ответ на: комментарий от reprimand

sublime?

Установил через официальную иструкцию на офсайте. При каждом запуске оно проверяет обновления и выдаёт popup о наличии новой версии. Не нашел в настройках как отключить такое неадекватное поведение, зато нашел опцию для конфига. Которая не работает.

Удалил.

Хм, с проблемой не сталкивался, но подтверждаю, что с проприетарщиной линуксоид порой чувствует себя импотентом - око видит, да зуб неймёт.

Вроде бы Atom (по прозвищу «прощай оперативка») и Lime Text, написанный на Go (тоже кушает больше оригинала) представляют собой открытую альтернативу Sublime-у.

kostyarin_ ★★
()
Ответ на: комментарий от anonymous

Недостаточно хипсторски. Нужен yaml-выхлоп.

JSON - валидный YAML. Готово.

kostyarin_ ★★
()
Ответ на: комментарий от kostyarin_

Atom, говорят, умир. Сейчас VSCode. Я его недавно начал применять для небольшого объёма кода на цепепе. Вроде сносно.

anonymous
()
Ответ на: комментарий от anonymous

И часто у тебя компиляторы падают с сегфолтами?

Crocodoom ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.