ed
Насколько я знаю posix регламентирует только запуск:spawn,exec system и проч.
Странно кстати что такие вещи действительно не стандартизируют.. Вот обоссанные контейнеры/аллокаторы - так это пожалуйста.. А как таск и фс менджмент, так юзайте буст и полу-мёртвый posix
🐙 Antony
А тут есть человек, зарегеный на stdcpp.ru как dreverser ? Очень хочется обсудить Networking TS, кажется что в личном чатике это будет быстрее
Михаил
Платформ без процессов вроде больше чем с
Имеется ввиду RTOS и тому подобные?
Aidar
Ну короче управления процессами недостаточно, придется вставлять маппинг памяти там, mpi и прочее
Михаил
Хм, про маппинг памяти я как-то не думал, хотя идея интересная.
Aidar
Это все вроде есть в бусте
Михаил
Просто есть же boost.process, boost.interprocess
Михаил
😊 опередил.
Михаил
В принципе согласен. Можно просто расширить немного, то что есть в boost
Aidar
Ахах аргумент в пользу if (a) {
Igor
Ахах аргумент в пользу if (a) {
if (a); { и нет проблем ^^
Aidar
if (a); { и нет проблем ^^
Только автоформаттер перенесет скобку
Igor
при условии наличия достаточно умного и часто срабатывающего автоформатера по идее это вообще должен быть варн компилятора
Igor
"по идее" === "в идеале" в данном случае
Igor
честно ни разу не видел варнов на это
🐙 Antony
А давайте добавим в GCC?
🐙 Antony
Или случай не частый?
Кирилл
🐙 Antony
Так есть же
И правда: <source>:2:5: warning: this 'if' clause does not guard... [-Wmisleading-indentation] if (i); { ^~ <source>:2:13: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if' if (i); { ^
Кирилл
с -Wall есть предупреждение
Кирилл
а у кланга только с -Wformat
Igor
а у кланга только с -Wformat
хммм, а тут вроде изкоробки https://godbolt.org/g/vyDeCv , причем аж вплоть до 3.0
Vitaliy
А как тебе такое, Илон Маск ? if([](){}) {}
Vitaliy
Забыл вызвать лямбду - получи пулю в ногу
Anatoly
А как тебе такое, Илон Маск ? if([](){}) {}
pvs-studio собирает такие примеры, можешь им написать
Anatoly
А они дают за это лицензии ?
попробуй с ними поторговаться
Anatoly
по-моему, здесь в чате есть ребята из PVS-studio
Aidar
в другом чатике вбросили что a-=(b<0); лучше чем if(b<0) a--; вопрос какого хрена это ни шланг ни гцц не оптимизировал без jmp?
Vitaliy
Хотелось бы конечно это пропихнуть в GCC или clang ))
Vitaliy
Надо будет заняться этим вопросом
Matwey
Господа, f(std::move(x), g(x,y)); не выстрелит же в ногу?
Aidar
Господа, f(std::move(x), g(x,y)); не выстрелит же в ногу?
не должно если g не сохранит ссылку на x
Matwey
g просто функция, принимает x по const& и делает вычисления
Igor
тогда не выстрелит
Aidar
move ничего не перемещает
Aidar
это каст
Igor
а вот f(g(x,y), h(std::move(x))) - выстрелит
Anatoly
Господа, f(std::move(x), g(x,y)); не выстрелит же в ногу?
выстрелит, поскольку порядок вычисления аргументов функции не специфицирован
Maksym
std::move(x) же ничего не вычисляет
будет перемещение и x станет "пустым", не?
Aidar
https://godbolt.org/g/v2Hqs5
можно предположить что jmp тут сильно быстрее add+mov
Igor
move doesn't move anything, it is just static_cast<T&&>(x)
Maksym
не
как так-то?(
🐙 Antony
std::move(x) же ничего не вычисляет
выстрелит если функция принимает параметр по копии или если тип x не совпадает с типом, принимаемым функцией по константной ссылке Лучше не громоздить в одну строчку, а завести доп переменную на результат вычисления g
Maksym
move doesn't move anything, it is just static_cast<T&&>(x)
это я знаю, но это может спровацировать перемещение
Aidar
а можно поподробнее про условия выстрела? не понял
когда аргумент нужно сконструировать из rvaluue reference полученого из move
Igor
это я знаю, но это может спровацировать перемещение
перемещение нельзя спровоцировать, можно только вызвать функцию (как правило конструктор), которая 1) ест T&& 2) проводит над ним изменения
Aidar
просто h неявный
Aidar
h - конструктор нужного типа
Constantine
Matwey
Я сомневаюсь и не пишу так
Вот, я тоже сомневаюсь и спрашиваю в чатике
Aidar
сейчас заведу тикет, и скину в чатик
может я ошибаюсь и всетаки jmp сильно быстрее add+mov?
Aidar
и оно по мнению компилятора гарантированно влезет в кэш
Aidar
Там условный же
я в этих двух штуках ваще не вижу разницы результата
Constantine
я в этих двух штуках ваще не вижу разницы результата
Я имею в виду что условный переход это точно хуже почти чего угодно
Aidar
я не уверен что это хуже вычислений, я почти уверен что если оно влазит в кэш то даже лучше, но точно не уверен что сильно
Aidar
ну и что
Ioann_
А если предсказатель не угадал?
Можно самому ручками отпрефетчить