Доступен (https://gcc.gnu.org/ml/gcc-announce/2019/msg00000.html) корректирующий релиз набора компиляторов GCC 8.3 (https://gcc.gnu.org/gcc-8/), в котором проведена работа по исправлению ошибок, регрессивных изменений и проблем с совместимостью. По сравнению с версией 8.2 в GCC 8.3 внесено 153 исправления (https://gcc.gnu.org/bugzilla/buglist.cgi?bug_status=RESOLVED...), в основном связанных с устранением регрессивных изменений. В конце апреля или начале мая ожидается новый значительный выпуск GCC 9 (https://gcc.gnu.org/gcc-9/criteria.html).URL: https://gcc.gnu.org/ml/gcc-announce/2019/msg00000.html
Новость: https://www.opennet.ru/opennews/art.shtml?num=50194
MinGW-w64 всё ещё протухшая - 8.1 . Хостится на сорсфордже вместо гитхаба, CI отсутствует вообще.
Ну так напиши им - так, мол, и так, хочу взять на себя перенос Вашего проекта с SF на github, привязать к нему любую из доступных CI, какую скажете, а то у вас GCC протухшая, отстаёт на две минорные версии.
Ходили слухи, что разработчики GCC общаются только на С/C++. И, чтобы им написать, надо уже уметь писать.
#include <stdio.h>
int main()
{
printf("так, мол, и так, хочу взять на себя перенос Вашего проекта с SF на github, привязать к нему любую из доступных CI, какую скажете, а то у вас GCC протухшая, отстаёт на две минорные версии.");
return 0;
}
запустил, не совсем понял, карякозябры получились.
да потому что на твоем оффтопике и в 2050 юникода не будет.
> да потому что на твоем оффтопике и в 2050 юникода не будетЧто сказать-то хотел? Вся ветка про оффтопик, если что.
То и хотел сказать, что желаю приятного аппетита в поедании кактуса. А зачем вам гнутый компилятор? Оптимизаций у msvc мало? Ошибки на инопланетном языке?
Ну это все мелочи же.
> приятного аппетита в поедании кактусаЭто уже другой вопрос :)
> А зачем вам гнутый компилятор?
Тему не я завёл, но предполагаю, чтобы не использовать проект как хранилище различных вариантов систем сборки - Makefile для gcc, свои проекты для msvs, отдельные файлы для xCode. А тут делаем всё одинаково и радуемся.
cmake?
> cmake?1. cmake не исправит переносимость сишного кода между gcc и msvc (с другой стороны, это приведёт к большей переносимости),
2. если cmake соберёт такой проект под win, не факт, что оно сможет собрать его под linux (в случае с gcc шанс существенно выше),
3. возможно, человеку проще работать со знакомым linux-подобным окружением, чем изучать под каждую платформу индивидуальный инструментарий (компилятор).Но у меня никогда не было такой задачи, я просто предположил. Cmake в голову не пришёл даже.
Затем что
1 да, у gcc лучше оптимизации, хотя некоторые проекты утверждают обратное
2 студия - платная
3 студия - с телеметрией
Студия, начиная с 2013 года, емнип, бесплатная (платишь своими данными). А есть еще совсем бесплатный набор компиляторов от мелкософт, там даже зонд вставлять не нужно. Никто не мешает поставить 2010 экспресс-студию (последняя честно бесплатная) и свежие компиляторы. Ну а вообще да, GCC рулит и педалит.
> Студия, начиная с 2013 года, емнип, бесплатнаядля частных лиц для некоммерческого использования.
>(платишь своими данными).
Не плачу. Не использую. Мне коровьи блины с лопаты не нужны.
>А есть еще совсем бесплатный набор компиляторов от мелкософт, там даже зонд вставлять не нужно.
Этот "бесплатный набор" с той же телеметрией.
>Никто не мешает поставить 2010 экспресс-студию (последняя честно бесплатная) и свежие компиляторы.
Я лучше Qt Creator поставлю.
> А зачем вам гнутый компилятор?Чтобы скомпилировать под оффтопик тулзу/библиотеку, которая вся на autotools и не умеет в msvc. То есть можно конечно написать скрипт-обёртку над компилятором msvc, чтобы транслировать опции gcc в опции msvc, можно ещё сорцы поправить, чтобы убрать оттуда gcc-специфичности. Но если gcc умеет компилировать под оффтопик, то зачем все эти сложности?
SetConsoleOutputCP
SetCurrentConsoleFontExконсоль там поганая, но конкретно эту штуку завезли
правда есть проблема с консольными шрифтами
например китайские символы у меня не получилось вывести
отстальное вроде как без проблем
Ты так говоришь, как будто gcc поддерживает юникод...> 🦄$ cat 🦄.cpp
#include <iostream>
int main void()
{
int 🦄=2;
std::cout << 🦄 << std::endl;
return 0;
}🦄.cpp:5:6: error: stray ‘\360’ in program
int ����=2;
Gcc ни при чем, список символов, которые допустимы в идентификаторах C/C++, достаточно ограничен и не включает юникод. И слава богу.
clang могёт это
> карякозябры получилисьwcout или wcerr попробуй, в зависимости от того, что больше предпочитают разработчики, которым пишешь
>запустил, не совсем понял, карякозябры получились.Откомпилировал в MinGW, запустил в терминале Windows? Ну чё, ожидаемо.
а они ему такие - "это что за гитхап - ааа, это тот, который полтора браузера поддерживает, хромога, и хромого? знаете, мы как-то под винду все больше, и то предпочитаем седьмую десятой - а там штатный все еще msie. А ct, конечно, можете настроить - мы не против, если не будет сильно спамить - даже будем читать ее предупреждения, ci же нам даром не сдалась."
> это что за гитхап - ааа, это тот, который полтора браузера поддерживаетЖизненно. Только что столкнулся, что оно теперь в md-файлах даже по якорным ссылкам не переходит на 59 файрфоксе (win 10, amd64, если что).
>> это что за гитхап - ааа, это тот, который полтора браузера поддерживает
> Жизненно. Только что столкнулся, что оно теперь в md-файлах даже по якорным ссылкам не переходит на 59 файрфоксе (win 10, amd64, если что).Как пользователь маргинальщины (вебкитгтк браузеры) могу многое поведать -- года 2 назад убрали возможность использования без JS (т.е. самой базовой информации -- время последнего изменения, получения ссылки для git clone и прочее).
С годик-полтора назад перестала работать менюшка выбора бранча, диффы, разнообразная статистика (insights-что-то-там), стал подглючивать поиск (фильтры результата), появилась громадная черная шапка на 3 экрана (похоже на глючной "адаптив/респонсив").
Причем, не так давно то же самое началось и для palemoon (27 ветки).
Что интересно -- новых возможностей как-то не заметил, смысла заменять работающее (когда-то даже без JS) тоже. Смахивает то ли на "прогресс ради прогресса", то ли на "Нужно показать активность и нужность, а то вдруг новый хозяин решит сократить!" соотв. отдела.
> перестала работать менюшка выбора бранчаКстати да, тоже матерился по этому поводу.
Ещё как вариант, просто решили отрефакторить код. А проверять результат в непоследних браузерах, конечно, не будем, кто же сейчас ими пользуется.
>Жизненно. Только что столкнулся, что оно теперь в md-файлах даже по якорным ссылкам не переходит на 59 файрфоксе (win 10, amd64, если что).Ничего не понял. В markdown свой синтаксис для ссылок, используйте его.
> Ничего не понял.Объясняю.
При открытии ссылки https://github.com/google/gson/blob/master/UserGuide.md#TOC-... в распоследнем гуглохроме происходит сразу скроллинг до раздела "Custom Serialization and Deserialization". При открытии в 59 файрфоксе страница не скроллится, то есть в окне отображается самый верх страницы.
На нормальных сайтах навигация через якоря работает в любых браузерах минимум с 2000 года (может, и раньше работало, но я впервые в интернет вышел в 2000).
В распоследнем гуглохроме у тебя скроллинг на github'е происходит потому, что у тебя там uMatrix/NoScript не установлены. Включи js в firefox и у тебя заработает скроллинг.
Двачую. Это баг в гитхабе.
> полтора браузера поддерживаетТеперь ясно, почему MS переходит на Chrome и кто кого на самом деле съел. =)
>отстаёт на две минорные версии.Эти 2 минорные версии - это полгода. Не говоря ещё о нерабочей стандартной библиотеке.
> CI отсутствует вообще.Это не оно? https://gcc.gnu.org/ml/gcc-testresults/2019-02/
Ааа!!! Недочитал коммент, подумал, что речь про gcc, а вы про mingw. Прошу простить минусами.
8.2.1 в пакетах msys2. Через несколько дней может появиться 8.3.
И кстати, оно на гитхабе, хоть сам собери:
https://github.com/msys2/MINGW-packages/tree/72d6c379b5eddc3...
То, что на SF протухло и вообще без msys2 не надо даже пробовать, ИМХО...
Мало того, они сломали fesetenv и не хотят править. При вызове этой функции не загружается состояние fpu и мы получаем некорректный режим работы того же округления. Я так словил баг и долго не мог понять почему под онтопиком всё ОК, а под win начинает колбасить значения. Оказалось что OpenAl использует данный функционал, который сами сломали.
> MinGW-w64 всё ещё протухшая - 8.1 . Хостится на сорсфордже вместо гитхаба, CI отсутствует вообще.Хм? Это проблема чисто вашего дистрибутива. В федоре в updates-testing пакеты mingw64 уже 8.3, например, пруф: https://koji.fedoraproject.org/koji/buildinfo?buildID=1215082
Вот здесь всегда свежий набор MinGWx64: https://gcc-mcf.lhmouse.com/
Какие там нынче модные альтернативы? У gcc даже с -Os выхлоп жирнючий, clang почему-то генерит чуть более медленный код, VC++ скатился в какую-то парашу рядом с Borland (или чьё оно теперь), интеловский компилятор слишком самоуверенный и не стесняется портить код так, что результат под всем кроме последнего интела тоже немного тормозит.
Ржавого не предлагать.
> У gcc даже с -Os выхлоп жирнючий`-Os -s`, разумеется, тоже пробовали?
Assembler, очевидно же!