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