Size: a a a

2020 June 10

AN

Alexander N in pro.cxx
Ни хрена не понял
источник

AN

Alexander N in pro.cxx
источник

AN

Alexander N in pro.cxx
источник

FS

Flower Surgeon in pro.cxx
> единиц перевода
Обожаю машинный перевод.
источник

ПК

Побитый Кирпич... in pro.cxx
Генерал
Когда юзаю recv или recvfrom для получения запроса от браузера долгая задержка иногда бывает как ето пофиксить?
Чё за запрос от браузера?
источник

Г

Генерал in pro.cxx
Побитый Кирпич
Чё за запрос от браузера?
обичный http get
источник

JP

John Preston in pro.cxx
Прошу всех неравнодушных апвоутнуть регрессию в Visual Studio 2019 16.6.*, из-за неё у меня любой статически-слинкованный Qt-проект крашится при запуске.

https://developercommunity.visualstudio.com/content/problem/1072443/static-structs-with-atomics-initialization-regress.html

Пока откатился на 16.5.5, но по нормальному можно старую версию только Professional / Enterprise установить, а Community я чёт не нашёл, надеюсь они починят шустренько :)
источник

AT

Andrew Titov in pro.cxx
John Preston
Прошу всех неравнодушных апвоутнуть регрессию в Visual Studio 2019 16.6.*, из-за неё у меня любой статически-слинкованный Qt-проект крашится при запуске.

https://developercommunity.visualstudio.com/content/problem/1072443/static-structs-with-atomics-initialization-regress.html

Пока откатился на 16.5.5, но по нормальному можно старую версию только Professional / Enterprise установить, а Community я чёт не нашёл, надеюсь они починят шустренько :)
> But this is wrong, there should be no code for this initialization.

Чем вы можете это обосновать?
источник

JP

John Preston in pro.cxx
Я не силён в букве стандарта :( Я очень надеялся, что когда мы во что-то простое (int-овое, комбинации структурок из int-ов) пишем в глобальной области всякие значения, то они гарантированно туда прямо так и лягут, без порядка инициализации нетривиальных глобальных объектов.

По крайней мере, на это опирается Qt во всей своей тяжести и оно работало так во всех версиях gcc, clang и msvc за последние 7 лет (по крайней мере) и работает так при любом небольшом изменении тестового кода — поэтому я называю это регрессией :(
источник

EP

Egor Pugin in pro.cxx
John Preston
Я не силён в букве стандарта :( Я очень надеялся, что когда мы во что-то простое (int-овое, комбинации структурок из int-ов) пишем в глобальной области всякие значения, то они гарантированно туда прямо так и лягут, без порядка инициализации нетривиальных глобальных объектов.

По крайней мере, на это опирается Qt во всей своей тяжести и оно работало так во всех версиях gcc, clang и msvc за последние 7 лет (по крайней мере) и работает так при любом небольшом изменении тестового кода — поэтому я называю это регрессией :(
вроде видел подобные баги
источник

AT

Andrew Titov in pro.cxx
John Preston
Я не силён в букве стандарта :( Я очень надеялся, что когда мы во что-то простое (int-овое, комбинации структурок из int-ов) пишем в глобальной области всякие значения, то они гарантированно туда прямо так и лягут, без порядка инициализации нетривиальных глобальных объектов.

По крайней мере, на это опирается Qt во всей своей тяжести и оно работало так во всех версиях gcc, clang и msvc за последние 7 лет (по крайней мере) и работает так при любом небольшом изменении тестового кода — поэтому я называю это регрессией :(
https://en.cppreference.com/w/cpp/language/constant_initialization
https://en.cppreference.com/w/cpp/atomic/atomic/atomic
Кажется, до C++20 желаемое вами поведение не гарантируется.
А, нет, у std::atomic конструктор всё же constexpr. Но что делать с массивом структур...
источник

IA

Igor Akhmetov in pro.cxx
John Preston
Я не силён в букве стандарта :( Я очень надеялся, что когда мы во что-то простое (int-овое, комбинации структурок из int-ов) пишем в глобальной области всякие значения, то они гарантированно туда прямо так и лягут, без порядка инициализации нетривиальных глобальных объектов.

По крайней мере, на это опирается Qt во всей своей тяжести и оно работало так во всех версиях gcc, clang и msvc за последние 7 лет (по крайней мере) и работает так при любом небольшом изменении тестового кода — поэтому я называю это регрессией :(
https://en.cppreference.com/w/cpp/language/initialization#Early_dynamic_initialization Это unspecified будет динамическая или статическая инициализация, может быть и так и так. Мне кажется к MSVC тут не придраться, он в своем праве.
источник

JP

John Preston in pro.cxx
Igor Akhmetov
https://en.cppreference.com/w/cpp/language/initialization#Early_dynamic_initialization Это unspecified будет динамическая или статическая инициализация, может быть и так и так. Мне кажется к MSVC тут не придраться, он в своем праве.
А почему dynamic, если это глобальные объекты?
источник

IA

Igor Akhmetov in pro.cxx
John Preston
А почему dynamic, если это глобальные объекты?
Глобальные объекты инициализируются в рантайме если этого требует инициализатор. В 16.7 я не могу повторить вашу проблему.
источник

JP

John Preston in pro.cxx
Igor Akhmetov
Глобальные объекты инициализируются в рантайме если этого требует инициализатор. В 16.7 я не могу повторить вашу проблему.
Так тут не требует, вроде, одни константы справа от присваивания.

То есть в 16.7 починили, но пока не выпустили из Preview? Это обнадёживает.
источник

JP

John Preston in pro.cxx
Andrew Titov
https://en.cppreference.com/w/cpp/language/constant_initialization
https://en.cppreference.com/w/cpp/atomic/atomic/atomic
Кажется, до C++20 желаемое вами поведение не гарантируется.
А, нет, у std::atomic конструктор всё же constexpr. Но что делать с массивом структур...
В Qt именно массив :/

https://github.com/qt/qtbase/blob/dev/src/corelib/tools/qarraydata.cpp#L155-L157

И оно там было читай всегда и работало читай всегда :( Надеюсь они починят даже если это не (вдруг) не гарантируется.
источник

EP

Egor Pugin in pro.cxx
John Preston
Так тут не требует, вроде, одни константы справа от присваивания.

То есть в 16.7 починили, но пока не выпустили из Preview? Это обнадёживает.
16.7 месяца через полтора примерно
источник

IA

Igor Akhmetov in pro.cxx
Egor Pugin
16.7 месяца через полтора примерно
Ничто не мешает прямо сейчас проапдейтиться, вряд ли будет сильно хуже чем с неработающим Qt :)
источник

IA

Igor Akhmetov in pro.cxx
John Preston
Так тут не требует, вроде, одни константы справа от присваивания.

То есть в 16.7 починили, но пока не выпустили из Preview? Это обнадёживает.
In practice: Constant initialization is usually performed at compile time, and pre-calculated object representations are stored as part of the program image. If the compiler doesn't do that, it still has to guarantee that this initialization happens before any dynamic initialization.
источник

EP

Egor Pugin in pro.cxx
Igor Akhmetov
Ничто не мешает прямо сейчас проапдейтиться, вряд ли будет сильно хуже чем с неработающим Qt :)
или попробовать clang-cl
источник