このリポジトリには、Checked C をサポートするように変更されたバージョンの LLVM/Clang ツールチェーンが含まれています。Checked C は、境界チェックと改善された型安全性によって C を拡張します。 Checked C 仕様は、Checked C リポジトリのリリース ページで入手できます。
Checked C コンパイラと 3C ツールは、Checked C LLVM プロジェクトのリリース ページからインストールできます。 Ubuntu 22.04、Windows 10/11、MacOS で利用可能なバージョンがあります。コンパイラのユーザーマニュアルはここにあります。 Checked C の詳細とコード例へのポインタについては、Checked C wiki を参照してください。コンパイラの独自のコピーを構築したい場合は、Checked C LLVM Project wiki の手順を参照してください。
このリポジトリから構築されたclangd
使用すると、アップストリームのclangd
Cコードに提供するのと同様の、チェックされたCコードを編集するためのIDEサポートを取得できます。たとえば、定義/参照にジャンプして、エラーや警告などをリアルタイムに表示できます。ここでは、Checked C のclangd
について詳しく説明します。
このリポジトリには、C コードから Checked C への変換を部分的に自動化する 3C と呼ばれるツールが含まれています。クイック ドキュメントのリンク:
開発状況や貢献方法などの一般的な情報
組み立て説明書
3c
コマンドライン ツールの使用手順
Checked C Clang コンパイラの詳細については、Checked C LLVM プロジェクト wiki を参照してください。
Checked C プロジェクトへの貢献を歓迎します。プロジェクトに参加するには、「Checked C への貢献」を参照してください。
コードの寄稿については、標準の Github ワークフローに従います。詳細については、「Checked C への貢献」を参照してください。
このプロジェクトでは行動規範を採用しています。