Как стать автором
Обновить

Комментарии 17

Иногда бывает, что IDE-отладчик не справляется с кодом, генерируемым в режиме оптимизации. Оптимизатор же в Delphi может делать очень интересные вещи — может например, перевернуть цикл вверх ногами (i заменить на n-i). Не удивлюсь, если он и с булевскими значениями может что-нибудь сделать. Рекомендую при отладке снимать галочку оптимизация в компиляторе. (Хотя может в данном посте — не этот случай, но то, что глюк исчез при пересборке проекта очень напоминает ситуацию с оптимизацией)
и, судя по всему, не лениться делать полный Build
а еще значение Boolean(2) может вызывать еще более волшебные баги. Вроде как я помню, оно не будет являться ни True, ни False, но boolean.
а еще значение Boolean(2) может вызывать еще более волшебные баги

а уж какие волшебные баги может вызвать код PInteger(Random())^ := Random();
Встречал подобное в XCode, раза два или три. Тоже Clean помогает.
Если бы это был open source, уже было бы описание бага: где, почему, когда возникает. И фикс.
Вы OpenSSL видели?
Пора уже прекращать эти суеверия, что OpenSource это панацея.

Во что переварится сам продукт, так и говорить не хочется.
Кстати, один из самых ужасных открытых проектов.
Ну да, я не я, лошадь не моя, и вообще они сами виноваты…
OpenSSL не видел. Видел Perl и Ruby (это всё же языки программирования, с ними лучше сравнивать), наблюдал за багами, если что-то такое серьёзное нашлось бы, за пару дней обязательно был бы анализ бага и фикс, если он тривиален.
Ну-ну.
Минимум раз в месяц слышу плач питонистов по юникоду в коде.
Это не баг а фича, совсем не то. Не такая серьёзная проблема как описывается в статье.
Непофикшенных багов и не сделанных фичей полно везде (тем более если их не делают из соображений обратной совместимости итд)
Очередные ужасы Дельфийского городка.
На самом деле сам наступал на пару багов, пояснить которые оказалось невозможно, при этом в XE4 все прекрасно работает, а в XE5 через раз на пустом месте выскакивают ошибки. Пока как и остальные невезунчики остаюсь на младших версиях продукта.
Жаль, но последнее время после большого затишья с момента Delphi 7, с дикой силой погнались за скоростью релизов RAD студии, учитывая стоимость обновления не каждый готов приобрести новую версию, не изобилующую особыми преимуществами (о мобильных разработках под Android и iOS я политкорректно умолчу), а значит количество найденных пользователями и починенных глюков будет меньше, нежели если бы был более долгий цикл жизни. Опять же, при использовании сторонних библиотек в разработке те не успевают обновляться под новые причуды рефакторинга кода в Delphi, когда уже трудно понять, в каком юните следует искать ту или иную функцию. Половина кода при переходе на новую версию при сборке начинает кричать про deprecated, и не дай бог придется использовать сразу две среды разработки, ад компиляторных директив обеспечен, как и жуткое состояние читаемости кода после этого.
Учитывая «расторопность» разработчиков Delphi в починке багов, висящих годами, стоимость продукта, я вижу хотя-бы 3-х летний цикл как мало приемлемый вариант.
А пока только увы и ах.
Хм… Действительно «баг в компиляторе». Мемы выбираются в реальность!
Скорее всего, просто в переменную запихивают число.
Воспроизводимого тест-кейса-то нет.
В какой-то прошлой XE не работал string.trim(). Когда увидел — долго ржал, как такое могло выйти из beta.
Плюс во всех последних версиях возможно AV на пустом месте из-за подсчета refCnt у строк. В общем весело там.
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.