---
generated_at: 2026-02-19 10:30:00
metrics:
  claims_total: 88
  claims_with_evidence: 85
  claims_without_evidence: 3
confidence_derived: 0.97
---

# 根拠レポート：modules-lang-cc 単体テストケース一覧

## 本レポートについて

### 目的
本レポートは、生成された単体テストケース一覧の信頼性を検証し、人間レビュアーが効率的にレビューできるようにすることを目的としています。

### チェック方法
以下の観点でドキュメントの内容（Claim：主張）を検証しています：

1. **根拠の有無確認**：各主張に対して、ソースコード・既存設計書・要件定義書などの根拠（Evidence）が存在するか
2. **根拠との整合性**：主張の内容が根拠と矛盾していないか
3. **網羅性**：参照すべき情報源を適切にカバーしているか

### 信頼度スコアの算出
- **confidence_derived** = 根拠あり件数 / 総主張件数
- 状態「○」：根拠あり、「△」：根拠不足または要確認

### 本レポートの使い方
1. まず「サマリー」で全体の信頼度と優先レビュー項目を確認
2. 「Claims と根拠の対応」で △ の項目を重点的にレビュー
3. 「不足情報」で補完が必要な情報源を確認

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**0.97**
  - 根拠あり：85 / 88、根拠なし：3
- 優先レビュー（高）
  1. **C-65（+cc--suppress-silly-errors-a）**：adviceの動作確認はソースコードから推測
  2. **C-72（clangdスレッド制限）**：doom-system-cpus関数の挙動は外部依存
  3. **C-74（macOS CCLS設定）**：プラットフォーム固有の設定検証が必要

## 2) 参照した情報（Evidence一覧）
> ここに「実在するもの」だけ列挙。抽出フェーズで付けたIDをそのまま出す。

- E-01: `modules/lang/cc/autoload.el` - 関数定義および実装詳細
- E-02: `modules/lang/cc/config.el` - パッケージ設定およびuse-package定義
- E-03: `modules/lang/cc/doctor.el` - モジュール診断ロジック
- E-04: `modules/lang/cc/packages.el` - パッケージ依存定義
- E-05: `+cc-default-include-paths` 変数定義（config.el:3-10）
- E-06: `+cc-default-header-file-mode` 変数定義（config.el:12-14）
- E-07: `+cc-c++-lineup-inclass` 関数定義（autoload.el:16-25）
- E-08: `+cc-lineup-arglist-close` 関数定義（autoload.el:28-35）
- E-09: `+cc--re-search-for` 関数定義（autoload.el:37-43）
- E-10: `+cc-c-c++-objc-mode` 関数定義（autoload.el:46-84）
- E-11: `+cc-resolve-include-paths` 関数定義（autoload.el:86-92）
- E-12: `+cc/eglot-ccls-show-inheritance-hierarchy` 関数定義（autoload.el:100-125）
- E-13: `+cc-cmake-lookup-documentation-fn` 関数定義（autoload.el:128-136）
- E-14: `+cc-init-ffap-integration-h` 関数定義（autoload.el:144-159）
- E-15: `+cc/ccls-show-callee` 関数定義（autoload.el:179-182）
- E-16: `+cc/ccls-show-caller` 関数定義（autoload.el:185-188）
- E-17: `+cc/ccls-show-vars` 関数定義（autoload.el:191-197）
- E-18: `+cc/ccls-show-base` 関数定義（autoload.el:200-202）
- E-19: `+cc/ccls-show-derived` 関数定義（autoload.el:205-207）
- E-20: `+cc/ccls-show-member` 関数定義（autoload.el:210-215）
- E-21: `+cc/ccls-show-references-address` 関数定義（autoload.el:219-223）
- E-22: `+cc/ccls-show-references-macro` 関数定義（autoload.el:226-230）
- E-23: `+cc/ccls-show-references-not-call` 関数定義（autoload.el:233-237）
- E-24: `+cc/ccls-show-references-read` 関数定義（autoload.el:240-244）
- E-25: `+cc/ccls-show-references-write` 関数定義（autoload.el:247-251）
- E-26: cc-mode use-package設定（config.el:20-121）
- E-27: cmake-mode use-package設定（config.el:127-143）
- E-28: glsl-mode use-package設定（config.el:146-157）
- E-29: cuda-mode use-package設定（config.el:160-165）
- E-30: cuda-ts-mode use-package設定（config.el:168-177）
- E-31: LSP設定（config.el:187-215）
- E-32: ccls use-package設定（config.el:217-269）
- E-33: doctor.el アサーション定義（doctor.el:4-10）
- E-34: doctor.el 外部ツール検証（doctor.el:12-19）
- E-35: packages.el パッケージ定義（packages.el全体）

## 3) Claims と根拠の対応（レビューの主戦場）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | +cc-c++-lineup-inclass 正常系：c++-modeでのインデント計算 | E-07 | ○ |
| C-02 | +cc-c++-lineup-inclass 正常系：アクセス修飾子後のインデント | E-07 | ○ |
| C-03 | +cc-c++-lineup-inclass 異常系：c++-mode以外でnil | E-07 | ○ |
| C-04 | +cc-c++-lineup-inclass 異常系：アクセス修飾子なしでnil | E-07 | ○ |
| C-05 | +cc-lineup-arglist-close 正常系：開き括弧直後 | E-08 | ○ |
| C-06 | +cc-lineup-arglist-close 正常系：カンマ直後 | E-08 | ○ |
| C-07 | +cc-lineup-arglist-close 正常系：セミコロン直後 | E-08 | ○ |
| C-08 | +cc-lineup-arglist-close 異常系：条件不一致 | E-08 | ○ |
| C-09 | +cc--re-search-for 正常系：マッチ時t返却 | E-09 | ○ |
| C-10 | +cc--re-search-for 異常系：マッチなしでnil | E-09 | ○ |
| C-11 | +cc--re-search-for 境界値：空バッファ | E-09 | ○ |
| C-12 | +cc-c-c++-objc-mode 正常系：.cpp存在時c++-mode | E-10 | ○ |
| C-13 | +cc-c-c++-objc-mode 正常系：.cc存在時c++-mode | E-10 | ○ |
| C-14 | +cc-c-c++-objc-mode 正常系：.m存在時objc-mode | E-10 | ○ |
| C-15 | +cc-c-c++-objc-mode 正常系：.mm存在時objc-mode | E-10 | ○ |
| C-16 | +cc-c-c++-objc-mode 正常系：@interface検出 | E-10 | ○ |
| C-17 | +cc-c-c++-objc-mode 正常系：@class検出 | E-10 | ○ |
| C-18 | +cc-c-c++-objc-mode 正常系：Foundation.hインポート検出 | E-10 | ○ |
| C-19 | +cc-c-c++-objc-mode 正常系：using namespace std検出 | E-10 | ○ |
| C-20 | +cc-c-c++-objc-mode 正常系：namespace定義検出 | E-10 | ○ |
| C-21 | +cc-c-c++-objc-mode 正常系：class定義検出 | E-10 | ○ |
| C-22 | +cc-c-c++-objc-mode 正常系：template検出 | E-10 | ○ |
| C-23 | +cc-c-c++-objc-mode 正常系：#include <string>検出 | E-10 | ○ |
| C-24 | +cc-c-c++-objc-mode 正常系：#include <iostream>検出 | E-10 | ○ |
| C-25 | +cc-c-c++-objc-mode 正常系：#include <map>検出 | E-10 | ○ |
| C-26 | +cc-c-c++-objc-mode 正常系：フォールバック関数 | E-10 | ○ |
| C-27 | +cc-c-c++-objc-mode 正常系：デフォルトc-mode | E-10 | ○ |
| C-28 | +cc-resolve-include-paths 正常系：絶対パス処理 | E-11 | ○ |
| C-29 | +cc-resolve-include-paths 正常系：相対パス解決 | E-11 | ○ |
| C-30 | +cc-resolve-include-paths 異常系：存在しないパス除外 | E-11 | ○ |
| C-31 | +cc/eglot-ccls-show-inheritance-hierarchy 正常系：継承階層表示 | E-12 | ○ |
| C-32 | +cc/eglot-ccls-show-inheritance-hierarchy 正常系：派生クラス表示 | E-12 | ○ |
| C-33 | +cc/eglot-ccls-show-inheritance-hierarchy 異常系：エラー処理 | E-12 | ○ |
| C-34 | +cc-cmake-lookup-documentation-fn 正常系：ドキュメント表示 | E-13 | ○ |
| C-35 | +cc-cmake-lookup-documentation-fn 異常系：エラー時nil | E-13 | ○ |
| C-36 | +cc-init-ffap-integration-h 正常系：c-mode ffap設定 | E-14 | ○ |
| C-37 | +cc-init-ffap-integration-h 正常系：c++-mode ffap設定 | E-14 | ○ |
| C-38 | +cc-init-ffap-integration-h 正常系：c-ts-mode ffap設定 | E-14 | ○ |
| C-39 | +cc-init-ffap-integration-h 正常系：c++-ts-mode ffap設定 | E-14 | ○ |
| C-40 | +cc-init-ffap-integration-h 異常系：プロジェクト外 | E-14 | ○ |
| C-41 | +cc/ccls-show-callee 正常系 | E-15 | ○ |
| C-42 | +cc/ccls-show-caller 正常系 | E-16 | ○ |
| C-43 | +cc/ccls-show-vars 正常系：kind=1 | E-17 | ○ |
| C-44 | +cc/ccls-show-vars 正常系：kind=2 | E-17 | ○ |
| C-45 | +cc/ccls-show-vars 正常系：kind=4 | E-17 | ○ |
| C-46 | +cc/ccls-show-base 正常系：levels=1 | E-18 | ○ |
| C-47 | +cc/ccls-show-base 境界値：多階層 | E-18 | ○ |
| C-48 | +cc/ccls-show-derived 正常系 | E-19 | ○ |
| C-49 | +cc/ccls-show-member 正常系：kind=0 | E-20 | ○ |
| C-50 | +cc/ccls-show-member 正常系：kind=2 | E-20 | ○ |
| C-51 | +cc/ccls-show-member 正常系：kind=3 | E-20 | ○ |
| C-52 | +cc/ccls-show-references-address 正常系 | E-21 | ○ |
| C-53 | +cc/ccls-show-references-macro 正常系 | E-22 | ○ |
| C-54 | +cc/ccls-show-references-not-call 正常系 | E-23 | ○ |
| C-55 | +cc/ccls-show-references-read 正常系 | E-24 | ○ |
| C-56 | +cc/ccls-show-references-write 正常系 | E-25 | ○ |
| C-57 | +cc-default-include-paths デフォルト値 | E-05 | ○ |
| C-58 | +cc-default-header-file-mode デフォルト値 | E-06 | ○ |
| C-59 | cc-mode .mm auto-mode-alist | E-26 | ○ |
| C-60 | cc-mode .h auto-mode-alist | E-26 | ○ |
| C-61 | doom c-style定義 | E-26 | ○ |
| C-62 | find-sibling-rules .c->.h | E-26 | ○ |
| C-63 | find-sibling-rules .cpp->.hpp | E-26 | ○ |
| C-64 | find-sibling-rules .h->.c | E-26 | ○ |
| C-65 | +cc--suppress-silly-errors-a advice動作 | **根拠不足** | △ |
| C-66 | cmake-mode ルックアップ設定 | E-27 | ○ |
| C-67 | cmake-mode ポップアップ設定 | E-27 | ○ |
| C-68 | glsl-mode company-glsl設定 | E-28 | ○ |
| C-69 | cuda-mode eglotクライアント設定 | E-29 | ○ |
| C-70 | c-mode LSP自動起動 | E-31 | ○ |
| C-71 | c++-mode LSP自動起動 | E-31 | ○ |
| C-72 | clangdスレッド数制限 | **根拠不足** | △ |
| C-73 | ccls優先度設定 | E-32 | ○ |
| C-74 | macOS ccls設定 | **根拠不足** | △ |
| C-75 | ccls C-h ナビゲーション | E-32 | ○ |
| C-76 | ccls C-j ナビゲーション | E-32 | ○ |
| C-77 | ccls C-k ナビゲーション | E-32 | ○ |
| C-78 | ccls C-l ナビゲーション | E-32 | ○ |
| C-79 | doctor.el +lsp アサーション | E-33 | ○ |
| C-80 | doctor.el +tree-sitter アサーション | E-33 | ○ |
| C-81 | doctor.el glslangValidator検証 | E-34 | ○ |
| C-82 | doctor.el clang-format検証 | E-34 | ○ |
| C-83 | cmake-mode パッケージ定義 | E-35 | ○ |
| C-84 | cuda-mode パッケージ定義 | E-35 | ○ |
| C-85 | cuda-ts-mode パッケージ定義 | E-35 | ○ |
| C-86 | glsl-mode パッケージ定義 | E-35 | ○ |
| C-87 | company-glsl パッケージ定義 | E-35 | ○ |
| C-88 | ccls パッケージ定義 | E-35 | ○ |

## 4) 不足情報（Unknown / Missing）
- **C-65（+cc--suppress-silly-errors-a）**: undefadvice!マクロの動作はDoom Emacsコア機能に依存。ignore-errorsでラップされた処理の実際の挙動確認が必要
  - 候補：Doom Emacsコアドキュメント / cc-modeソースコード / iedit/multiple-cursorsとの結合テスト
- **C-72（clangdスレッド制限）**: doom-system-cpus関数の戻り値はシステム依存。実環境でのCPUコア数取得と計算結果の確認が必要
  - 候補：doom-system-cpus関数定義 / 各プラットフォームでの動作検証
- **C-74（macOS ccls設定）**: macOS固有のパス（CommandLineTools、SDK）の存在確認およびclang -print-resource-dirの出力確認が必要
  - 候補：macOS実機テスト / Xcodeインストール状態による差異確認

## 5) リスクフラグ（レビュー観点）
- **リスク0（低）**: パッケージ定義、変数デフォルト値（C-57, C-58, C-83-88）
- **リスク1（中）**: LSP関連設定、プラットフォーム固有コード（C-65, C-72, C-74）
- **リスク0（低）**: 関数の基本動作テスト（C-01-C-56）- ソースコードから直接確認可能

## 6) レビュアーチェックリスト（最小）
- [ ] C-65: +cc--suppress-silly-errors-aのadvice動作をiedit/multiple-cursors環境で実際に確認
- [ ] C-72: 異なるCPUコア数の環境でclangdスレッド数制限を確認
- [ ] C-74: macOS環境でccls初期化オプションが正しく設定されることを確認
- [ ] 全体: Emacs 29+のTree-sitterモード（c-ts-mode, c++-ts-mode）でのテストケース網羅性を確認
- [ ] 全体: LSPサーバー（clangd, ccls）が未インストールの環境での挙動を確認
