Size: a a a

RU Rust GameDev — русскоговорящее сообщество

2020 January 07

F

Fedor in RU Rust GameDev — русскоговорящее сообщество
эта штука позволит не зависеть от си компилятора проектам с си зависимостями, что супер круто!
источник

DM

Dzmitry Malyshau in RU Rust GameDev — русскоговорящее сообщество
Звучит хорошо, ждём shaderc
источник

F

Fedor in RU Rust GameDev — русскоговорящее сообщество
ОХОХО
источник

F

Fedor in RU Rust GameDev — русскоговорящее сообщество
миниквад завёлся на этой штуке!
источник

F

Fedor in RU Rust GameDev — русскоговорящее сообщество
линукс версия работает без си компилятора!1
источник

F

Fedor in RU Rust GameDev — русскоговорящее сообщество
источник

λ

λoλdog in RU Rust GameDev — русскоговорящее сообщество
Fedor
эта штука позволит не зависеть от си компилятора проектам с си зависимостями, что супер круто!
Фантастика. Не позволит. Будешь ещё полгода переписывать после )
источник

F

Fedor in RU Rust GameDev — русскоговорящее сообщество
прямо сейчас позволило ;)
источник

F

Fedor in RU Rust GameDev — русскоговорящее сообщество
большая сишная зависимость превратилась в обычный кусок раст кода, но всё продолжило работать как и было.
По сути - поменялся вызов bindgen на вызов c2rust да и всё
источник

BD

Berkus Decker in RU Rust GameDev — русскоговорящее сообщество
Я пробовал с2раст, там было все плохо с документацией и примерами.  И код по дефолту генерит чудовищный.
источник

BD

Berkus Decker in RU Rust GameDev — русскоговорящее сообщество
Блин, раст нашел им реальную ошибку в памяти и они пофиксили c2rust чтобы он не находил. Srsly?
источник

MD

Memory Doctor in RU Rust GameDev — русскоговорящее сообщество
Berkus Decker
Блин, раст нашел им реальную ошибку в памяти и они пофиксили c2rust чтобы он не находил. Srsly?
Статью внимательно читай. В си так можно, в расте нельзя
источник

BD

Berkus Decker in RU Rust GameDev — русскоговорящее сообщество
Memory Doctor
Статью внимательно читай. В си так можно, в расте нельзя
Сам внимательно читай. Там была настоящая ошибка в сишном коде
источник

MD

Memory Doctor in RU Rust GameDev — русскоговорящее сообщество
Я из-за твоего коммента и прочитал. Ты про память после последнего элемента массива?
источник

BD

Berkus Decker in RU Rust GameDev — русскоговорящее сообщество
Memory Doctor
Я из-за твоего коммента и прочитал. Ты про память после последнего элемента массива?
The Rust compiler also flagged a similar but actually buggy example in G_TryPushingEntity where the conditional is >, not >=. The out of bounds pointer was then dereferenced after the conditional, which is an actual memory safety bug.
источник

BD

Berkus Decker in RU Rust GameDev — русскоговорящее сообщество
Очевидно что если нельзя >= &array[1024] это заменяется на эквивалентное > &array[1023] в арифметике указателей. Это лучше, чем скрывать такие ошибки.
источник

BD

Berkus Decker in RU Rust GameDev — русскоговорящее сообщество
Судя по их тексту они все пофиксили так, что ошибочный код транспилится теперь без предупреждений. С телефона тяжело читать, но ща проверю хистори кода.
источник

BD

Berkus Decker in RU Rust GameDev — русскоговорящее сообщество
Да, в хистори этот кусок кода так и остался. Теперь можно словить off-by-one memory overwrite. Круто!
источник

ДС

Дмитрий Степанов in RU Rust GameDev — русскоговорящее сообщество
hrtf
источник

BD

Berkus Decker in RU Rust GameDev — русскоговорящее сообщество
Дмитрий Степанов
hrtf
Я пока в отпуске без компа)
источник