他のブログ記事で紹介されている数多くの機能や改善点に加えて、RAD Studio…
C++Builder 12.3で安全性を確保: サニタイザーの導入
2025年03月25日
強化されたClangコンパイラの使用を開始して以来、エンバカデロへ一貫して寄せられている要望があります。それは「実行時チェック機能を追加してほしい」というものです。
この要望は、2つのユーザー層から出ています。
1つは、従来の「クラシック」コンパイラを使っていたユーザーです。この旧コンパイラには「CodeGuard」という、エラーを検出する機能があり、多くのユーザーがそれを頼りにしていました。新しいツールチェーンに移行する際に、それと同等の機能がほしいというのはごく自然な願いです。
もう1つは、Clangに精通しているユーザーです。Clangには「サニタイザー(sanitizer)」と呼ばれる、さまざまな種類の実行時チェック機能が標準で備わっており、それが非常に役立つため、これらの導入を求める声が多くありました。
これまでのClangベースのツールチェーンでは、技術的な制約によりサニタイザーは利用できませんでした。しかし、バージョン12.2で導入され、12.3で品質とパフォーマンスがさらに改善された「C++モダンツールチェーン」では、これまで実現できなかった多くの機能が可能になっています。エンバカデロでは、これを「未来への基盤」と位置付けてきました。「これがあれば、今までできなかったことができる」「ユーザーに真の価値を届けられる」と。
そして今、それが実現されつつあります。
前回のリリースでは、CMakeのサポートとコンパイラ性能の大幅向上(今回はさらに最大20%のパフォーマンス改善)が注目されました。今回のリリースでは、それに加えて、これまで提供できなかった新機能が複数追加されています。
そのひとつが「サニタイザーによる実行時チェック」です。C++BuilderおよびRAD…
RAD Studio 12.3 の新機能: 64-bit IDE の初期リリース!
2025年03月21日
Delphi、C++Builder、RAD Studio 12.3 に、IDE の 64-bit ビルドの初期リリースという非常にエキサイティングな新機能が追加されました。
基本情報
オプションのインストールです
64-bit IDE の初期リリースは、まだ…
RAD Studioの新しいスタートガイドを公開
2025年02月17日
GetIt からRAD Studioの新しいスタートガイドが入手可能
RAD Studioをこれから始める方向けに特別な情報がございます。現在、有効なアップデートサブスクリプションのライセンスをお持ちのお客様を対象に、新しいスタートガイド「Getting Started with RAD Studio – A Guide for Developers New to Delphi and…
2024年エンバカデロ製品リリースのまとめ/業界動向
2025年01月09日
昨年末に、Sarina DuPontより、2024年にリリースされたエンバカデロ製品と業界動向について振り返るブログ記事が投稿されました。この記事は、その抄訳です。…
C++Builder 12.2: bcc64xに関するワンポイントアドバイス
2024年12月19日
今回のブログでは、bcc64xに関するちょっとしたお役立ち情報やヒントについてご紹介させていただきます。bcc64x.exeは、新しいWin64…
C++Builder12.2: 自動リンクによってライブラリを処理する
2024年12月13日
プロジェクトにライブラリ(.libまたは.aファイル)を追加するには、下図のようにプロジェクトビューに追加するのが一般的な方法です。…
C++Builder 12.2でC++のEHとSEHの例外処理を分割する
2024年12月12日
例外処理には、複数の種類があり、それらを混在させることは正しくありません。例えば、C++ 例外処理と SEH…
コンパイラによる安全性と正確性のメリットを活用
新しいコンパイラは、主に以下の2つのことを行います。
最適化が大幅に改善され、可能な限り最適化を行う(パフォーマンスに最適)
予期せぬことが起こった場合、ユーザーへ通知する
特に2.の項目が重要です。…
C++Builder 12.2で 4GB以上のファイルを iostreamsで処理する
2024年12月05日
古いWin64C++ ツールチェーン(bcc64)のSTLでは、64ビットとしてコンパイルした場合でも、ファイルの最大サイズは4GBでした。 つまり、大きなサイズのファイルを処理するためにfstreamやiostreamなどの入出力ライブラリを使用すると、メモリ不足などが原因で正しく動作しませんでした。
C++Builder…