Sergey
Федор заболел, я же говорил
Sergey
Антон вчера узнал, что он докладчик
Alexander "SonnySlave"
Федор заболел, я же говорил
А кто это смайлики не видит? 😊
Sergey
Я пишу для тех, кто не видит ;)
oles
хай, а clang только на этапе линковки может выявить неиспользуемые функции?
kitsu
А как иначе
kitsu
либо с явной аннотацией, но не уверен, что норм работает
Stanislav
Nikita
хай, а clang только на этапе линковки может выявить неиспользуемые функции?
Более того, линковщик умеет только секции целиком выкидывать. Если неиспользуемая функция попала в секцию, где есть что-то нужное, то её не выкинет
oles
каким тогда инструментом пользоваться чтобы выявить подобное в проекте?
oles
под линуксом желательно чтоб работал
Nikita
Можно каждую функцию в свою секцию писать, но тогда размер объектников раздуется (Эх, андроидоклавы)
kitsu
каким тогда инструментом пользоваться чтобы выявить подобное в проекте?
В целом всегда спасал static, с ним оптимизируется очевидно
oles
В целом всегда спасал static, с ним оптимизируется очевидно
ты имеешь в виду объявлять функции статическими или что?
kitsu
Если в глобале - обычно компиляторы выкидывают варнинги, с ними вручную что-то можно сделать
oles
да чтот муторно
kitsu
а зачем тебе, если не секрет?
oles
выкинуть ненужное
oles
всякие индексироващики в иде же умеют определять где символ был использован в коде
oles
неуежли таких инструментов нет независимых
kitsu
Не уверен, что это что-то полезное и очень нужное, не встречал
Sergey
варнинги же такие есть
Sergey
или я чего-то не понял?
Владислав
Всем привет, есть тут не сильно занятые люди, желающие помочь студенту и решить пару задач на плюсах?)
Владислав
понял, спасибо
Ender
Некоторое время назад был на хакатоне. Вейвлеты писали
Ender
Ага
Alexander
бля в уже второй день ищу где удаляется объект, который потом по указателю пытается дереференситс и все сегфолтится(. какая же боль когда смарт поинтеры используются не так как должны
Alexander
полный код всяких release ... а потом ручного удаления((
Dr. Friedrich
бля в уже второй день ищу где удаляется объект, который потом по указателю пытается дереференситс и все сегфолтится(. какая же боль когда смарт поинтеры используются не так как должны
А был бы у тебя там shared_ptr — пришлось бы искать, почему не удаляется :) Везде есть свои проблемы, поверь. Серебряной пули не существует.
Sergey
а кто-то ещё был в НН на встрече?
Arseny
бля в уже второй день ищу где удаляется объект, который потом по указателю пытается дереференситс и все сегфолтится(. какая же боль когда смарт поинтеры используются не так как должны
clang AddressSanitizer, кстати, умеет прямо выводить трейсы, где невалидный указатель был создан и удален. Но это если проблема хоть как-то воспроизводится. И если clang.
Alexander
gcc...
Alexander
и проблема плавающая
Alexander
плюс там concurrency
Arseny
Хм. Вроде gcc и thread и address санитайзеры поддерживает. Но я никогда не пробовал.
Кирилл
Хм. Вроде gcc и thread и address санитайзеры поддерживает. Но я никогда не пробовал.
Поддерживает, но не одновременно. Либо address, либо thread.
Egor
оффтоп. привет. никто не знает, есть ли чат по дискретной математике? (в общем списке чатов нет)
Sergey
+
есть фидбэк по организации, докладам, докладчикам? :) можно в личку, можно сюда
Evgenii
есть инфернал
Evgenii
wut?
https://t.me/joinchat/AAAAAEFHT_BkBsc_HgiTvg
melvin
а, мемы
melvin
в самый раз :D
Evgenii
а, мемы
ну вообще нет
Evgenii
но иногда да)
melvin
а кроме редкомемов там интересно?
Evgenii
но спросить можно
Ioann_
@berkus
Ioann_
Что это :?
Ioann_
https://github.com/procxx/tdesktop/blob/updated-cmake2/Telegram/SourceFiles/mtproto/auth_key.cpp#L27 ебаные пидарасы, они сами то как в этом разбираются
Berkus
а чо сразу я то
Berkus
у меня лапки
Berkus
это вообще не для паблика было
Ioann_
Аааа..Ыыыы
Arseny
А что не так с кодом, если по условию надо сделать такое https://core.telegram.org/mtproto/description_v1#defining-aes-key-and-initialization-vector ?
Ioann_
А что не так с кодом, если по условию надо сделать такое https://core.telegram.org/mtproto/description_v1#defining-aes-key-and-initialization-vector ?
На сколько я понял, то у Беркуса там был коммит, результатом которого стала замена Qt типов, CSTD типами. Вроде, было quint64, стало uint64_t и т.п
Square
А можно ссылку?
https://goo.gl/uYoSsz - Рефлексия в С++ https://goo.gl/XXSkP2 - Велосипедостроение для про* С видосов Антона.
Anonymous
Спасибо
Square
надеюсь @antoshkka простит за несколько вольностей по тексту. кажется.
Berkus
А что не так с кодом, если по условию надо сделать такое https://core.telegram.org/mtproto/description_v1#defining-aes-key-and-initialization-vector ?
ну хотя бы вместо индексов использовать именованные константы, нарисовать как по их мнению это должно выглядеть в комменте, вместо memcpy использовать что-то типа Copy.from(x).to(y).bytes(n); и всё такое
Berkus
в общем сделать код сопровождаемым
Arseny
Ну да, с комментариями и всякими Copy смотрелось бы приятнее. Но конкретно тут код, который пишется один раз и никогда не трогается. Единственное, что с ним можно сделать - проверить на соответствие документации.
Arseny
криптокод который никогда не проверяется, да, удобно
https://github.com/openssl/openssl/blob/master/crypto/aes/aes_x86core.c Тут тоже криптокод Я подозреваю, что почти в любой библиотеке для шифрования очень много криптокода. Основная проблема в том, что какой бы красивый код не был, смысл в нем довольно сложно найти.
Berkus
ты сейчас серьезно в качестве примера привел самую худшую крипто библиотеку в мире?