
Igor
15.12.2017
08:54:26
рыр(
auto it = flag ? cont.find(x) : cont.begin();
for ( ; it != cont.end(); ++it) {
do_stuff(*it);
if (flag)
return;
}
сильно хрень?
была мысль выкинуть ретурн и сделать
begin, end = flag ? (find(), find()+1) : (begin(), end())
но понял что влечу в уб, да и как-то читаемость не повышается

Anatoly
15.12.2017
08:58:37

Berkus
15.12.2017
09:03:32

Google

Azoyan
15.12.2017
09:05:59
Я хоть и не люблю тернарники, но вариант с тернарником лучше. Там один раз вызывается do_stuff, и вообще он короче. Одно не понимаю, зачем внутри цикла ещё раз проверка if(flag) return

Berkus
15.12.2017
09:06:57

Ilia
15.12.2017
09:07:19

Berkus
15.12.2017
09:07:21

Anatoly
15.12.2017
09:07:58

Azoyan
15.12.2017
09:08:07
То есть do_stuff потенциально изменяет флаг?

Alexander
15.12.2017
09:08:41
и пока что их компилятор говно

Berkus
15.12.2017
09:09:16

Ilia
15.12.2017
09:09:39

Azoyan
15.12.2017
09:10:14
В смысле, зачем тогда флаг проверять каждую итерацию

Alexander
15.12.2017
09:10:16

Google

Berkus
15.12.2017
09:10:17

Alexander
15.12.2017
09:10:25
есть два: clang/c2 и msvc

Berkus
15.12.2017
09:10:32

Ilia
15.12.2017
09:10:41
Половина на аутсорсе.

Berkus
15.12.2017
09:10:52

Anatoly
15.12.2017
09:10:54

Alexander
15.12.2017
09:11:04

Berkus
15.12.2017
09:11:20

Ilia
15.12.2017
09:11:28

Anatoly
15.12.2017
09:11:45

Ilia
15.12.2017
09:11:46

Alexander
15.12.2017
09:11:49

Berkus
15.12.2017
09:11:51

Alexander
15.12.2017
09:12:01
а первое - пруфца хоть кинь какого-нибудь

Azoyan
15.12.2017
09:12:05

Berkus
15.12.2017
09:12:29
а по этому видно что "сложнааа"

Igor
15.12.2017
09:12:45

Anatoly
15.12.2017
09:14:30

Berkus
15.12.2017
09:16:10

Google

Igor
15.12.2017
09:16:19
вообще для полноты картины, такой цикл встречается в двух функциях, и хотя condition одинаковый, do_stuff делает принципиально разные вещи, а код - чужого авторства в ревью-доске
вроде как и хочется предложить вынести какой-то for_all_or_found(bool condition, Func action) + bool do_stuff1(pair<>&); bool do_stuff2(pair<>&);, но присутствует чувство, что начинаю городить огород на пустом месте 9_6

Berkus
15.12.2017
09:16:52
лишний огород, лучше do_stuff вынеси в отдельный метод

Igor
15.12.2017
09:17:52

Berkus
15.12.2017
09:18:13
конечно, но гцц он собирается только под линукс, андроид иос и мак собираются шлангом
линукс тоже надо вжухнуть на шланг, но потом

Alexander
15.12.2017
09:19:01

Дмитрий
15.12.2017
09:20:51
а зачем?
А зачем не? Кажется, он куда более дружелюбен по части сообщений об ошибках, и на максимум оптимизирует так, что вполне может и выиграть. Выигрывает не всегда, но пробовать можно.

Igor
15.12.2017
09:21:01
хотеть переехать с 4.4 на trunk( ещё бы это не подразумевало пересборку всех тулсетов под три ARM(

Alexander
15.12.2017
09:22:58

Berkus
15.12.2017
09:23:58

Grigor
15.12.2017
09:24:06

Alexander
15.12.2017
09:24:12
в большинстве случаев выигрывает gcc
но надо смотреть под задачу именно

Berkus
15.12.2017
09:24:35

Igor
15.12.2017
09:24:37

Antony
15.12.2017
09:24:38
линукс тоже надо вжухнуть на шланг, но потом
Есть проект по переносу ядра линукс на clang https://lwn.net/Articles/734071/
Из плюсов - другие варнинги, другие санитайзеры. Из минусов - пока что clang плохо умеет некоторые фишки GCC и плохо работает с inline asm

Alexander
15.12.2017
09:24:43
потмоу что бывает, что и шланг шустрее

Google

Grigor
15.12.2017
09:24:54
Вроде не так давно они были сравнимы, где то один, гле то другой лучше

Berkus
15.12.2017
09:25:16

Кирилл
15.12.2017
09:25:40

Alexander
15.12.2017
09:25:53
@berkus ну так зачем на шланг уезжаешь?)

Berkus
15.12.2017
09:25:56

Admin
ERROR: S client not available

Grigor
15.12.2017
09:26:40
Я бы пересел на шланг ради быстрых компиляшек

Berkus
15.12.2017
09:26:58
да и сообщения об ошибках в последних гцц весьма достойные

Igor
15.12.2017
09:27:36
А ещё в 4.4 нет лямбд
малость озадачился, потом вспомнил, что там где видел у нас лямбды, они использовались под линух с 4.8 ?

Grigor
15.12.2017
09:27:47
Видеть бы последние гцц, мы скромго сидим на 4.6((

Antony
15.12.2017
09:27:51
Меня больше интресует линуксовое ядро собранное с lto. Пока вроде не собирают. Кто нибудь знает какие проблемы там всплывают (помимо нежелания Линуса)?

Berkus
15.12.2017
09:34:08
еще где-нибудь аналогичная магия с лд скриптами ломается еще

Arseny
15.12.2017
10:04:33
О, привет!

Ilia
15.12.2017
10:22:06
Ну Conan-ы и названьице придумали... Искать что-то запаришься...
Всё какие-то игры и левые картинки суёт...

Alex
15.12.2017
10:40:48

Google

Ilia
15.12.2017
10:42:02
@zamazan4ik , не знаешь, куда сам conan ставиться (на Шинде лучше бы)

Alexander
15.12.2017
10:52:09
К тому же, наверное, если через pip ставить, то поставится куда-то в пиповское

Дед Пегас
15.12.2017
10:53:53
Он ставится в пакеты в <DISK>:/Python<VER>/

Vitaliy
15.12.2017
10:54:02
@zamazan4ik ты кажется на хабре статьи по поводу использования конана писал. Можешь ещё раз сюда ссылки скинуть ?

Дед Пегас
15.12.2017
10:54:10
Т.е. туда, куда поставился Python.

Ilia
15.12.2017
10:55:27

Alexander
15.12.2017
10:59:43

Vitaliy
15.12.2017
11:00:15
Благодарю


Alexander
15.12.2017
11:09:46
The second release candidates for the 1.66.0 release are now available at:
<https://dl.bintray.com/boostorg/prerelease/>
The in progress release notes are:
<http://www.boost.org/users/history/in_progress.html>
Library documentation is available at:
<http://www.boost.org/doc/libs/1_66_0/>
The SHA256 checksums are as follows:
596389389c005814ecb2a6b64c31dccd2c3e6fbc5a802b4dfada999ae5844628
boost_1_66_0_rc2.7z
5721818253e6a0989583192f96782c4a98eb6204965316df9f5ad75819225ca9
boost_1_66_0_rc2.tar.bz2
bd0df411efd9a585e5a2212275f8762079fed8842264954675a4fddc46cfcf60
boost_1_66_0_rc2.tar.gz
e1c55ebb00886c1a96528e4024be98a38b815115f62ecfe878fcf587ba715aad
boost_1_66_0_rc2.zip
As always, the release managers would appreciate it if you download
the candidate of your choice and give building it a try. Please report
both success and failure, and anything else that is noteworthy.
___________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
https://lists.boost.org/mailman/listinfo.cgi/boost-users


Ioann V
15.12.2017
11:28:21

Alexander
15.12.2017
11:33:12

Andrei
15.12.2017
12:08:20

Alexander
15.12.2017
12:10:59
Начиная с самой последней версии - поверю, то не очень
Самая последняя - 15.5

Andrei
15.12.2017
12:13:48
Можно сколько угодно снисходительно улыбаться с видом мудрецов познавших все тонкости компиляторов, но без обширных пруфов любые утверждения, о том что кто-то кого-то хуже — голословны.