Size: a a a

2021 May 25

Тᅠ

Туночка ᅠᅠ... in dlang.ru
так, а в чем проблем запустить gdb?
источник

Тᅠ

Туночка ᅠᅠ... in dlang.ru
источник

KF

Konstantin Firsov in dlang.ru
ммм... как я понимаю, сам opDispatch, определенный в классе, не перехватывает обращение к null-проперти с делегатом, поскольку все равно сегфолтит. Таким макаром все вырождается в повсеместную проверку всего и вся на null. Как вариант, к ним можно обращаться через приватное поле, которое проверяется на null и снаружи недоступно или использовать для целей проверки контракты, но опять-таки, масса таких проверок выглядит как бодание с языком. Я надеялся, что есть что-то вроде глобального хандлера, через который можно узнать строку с проблемой.
источник

KF

Konstantin Firsov in dlang.ru
когда прога увеличивается в размере, это становится, мягко говоря, проблемой.
источник

KF

Konstantin Firsov in dlang.ru
наверное, это наиболее серьезное ограничение, которое я уловил при работе над петом.
источник

OB

Oleg B in dlang.ru
никогда не было с этим проблем
источник

OB

Oleg B in dlang.ru
хотя было бы приятно из коробки иметь возможность проверять на null по дефолту
источник

OB

Oleg B in dlang.ru
хотя не, наверное вру, когда-то давно может и были, но как раз они выработали нужные привычки (unittest'ы, проверки на null в нужных точках, использование gdb в случае чего-то неординарного)
источник

OB

Oleg B in dlang.ru
в последнее время не наблюдаю проблем с этим
источник

OB

Oleg B in dlang.ru
если что-то может быть null в процессе работы программы, то лучше проверять при каждом обращении, а если это что-то не должно быть никогда в процессе работы null'ом, то проверять при выставлении
источник

KF

Konstantin Firsov in dlang.ru
Тут люди пишут, что получаемый из дампа бэктрейс может различаться в зависимости от ldc\dmd и разных систем, кгм... В примерах для dmd передается флаг -g, но прога же, по логике вещей, в продакшене должна работать без какой-либо отладочной инфы...
источник

KF

Konstantin Firsov in dlang.ru
По дефолту, конечно, не слишком информативненько
источник

KF

Konstantin Firsov in dlang.ru
источник

KF

Konstantin Firsov in dlang.ru
так, допустим, что прога все таки наворачивается по каким-либо причинам. Стектрейс там должен же сразу при запуске gdb выводится на сохраненном дампе ?
источник

KF

Konstantin Firsov in dlang.ru
или же все таки она должна быть собрана именно с отладочной инфой? Но это же какой-то сюр тогда выходит.
источник

DH

Dark Hole in dlang.ru
Непон
источник

KF

Konstantin Firsov in dlang.ru
я пытаюсь по-разному смоделировать отказ проги.
источник

DH

Dark Hole in dlang.ru
Если ты о том, как отлаживать без символов — то можно их отдельно подгрузить в gdb
источник

KF

Konstantin Firsov in dlang.ru
ну хорошо, допустим. Прога собирается в release и наворачивается где-то на рандомном компе. Мне возвращают её с матами и дампом. Есть вероятность, что инфа об ошибке будет утеряна или нет... вот что меня интересует. Поскольку это явно требует поправок на архитектуру самой проги.
источник

KF

Konstantin Firsov in dlang.ru
на самом деле мне тупо лень возиться с gdb, последний раз я его использовал несколько лет назад, да и то это был очень узкий кейс. Но тем не менее...
источник