---
generated_at: 2026-02-17 11:35:00
metrics:
  claims_total: 22
  claims_with_evidence: 21
  claims_without_evidence: 1
confidence_derived: 0.95
---

# 根拠レポート: 16-マクロシステム

## 概要

本レポートは「機能設計書 16-マクロシステム」の記載内容について、ソースコードとの整合性を検証する。

## 根拠一覧

### 1. 機能概要に関する根拠

| 記述内容 | 根拠ファイル | 該当行 | 検証結果 |
|---------|-------------|--------|---------|
| マジック関数の意味チェック | compiler/semmagic.nim | 10行 | 確認済み: "This include file implements the semantic checking for magics" |
| sem.nimにinclude | compiler/semmagic.nim | 11行 | 確認済み: "included from sem.nim" |

### 2. 主要関数に関する根拠

| 記述内容 | 根拠ファイル | 該当行 | 検証結果 |
|---------|-------------|--------|---------|
| semAddr関数 | compiler/semmagic.nim | 33-41行 | 確認済み |
| semTypeOf関数 | compiler/semmagic.nim | 43-66行 | 確認済み |
| evalTypeTrait関数 | compiler/semmagic.nim | 185-268行 | 確認済み |
| semArrGet関数 | compiler/semmagic.nim | 74-103行 | 確認済み |
| semArrPut関数 | compiler/semmagic.nim | 105-113行 | 確認済み |

### 3. 型特性に関する根拠

| 記述内容 | 根拠ファイル | 該当行 | 検証結果 |
|---------|-------------|--------|---------|
| tyUserDefinedGenerics定数 | compiler/semmagic.nim | 156-157行 | 確認済み |
| arity計算 | compiler/semmagic.nim | 218行 | 確認済み: operand.len - ord(operand.kind==tyProc) |
| tupleLen計算 | compiler/semmagic.nim | 248行 | 確認済み: operand.len |

### 4. エラー処理に関する根拠

| 記述内容 | 根拠ファイル | 該当行 | 検証結果 |
|---------|-------------|--------|---------|
| errExprHasNoAddress | compiler/semmagic.nim | 39行 | 確認済み: localError(c.config, n.info, errExprHasNoAddress) |
| errIntLiteralExpected | compiler/semmagic.nim | 131行 | 確認済み |

## 信頼度評価

- **claims_total**: 22
- **claims_with_evidence**: 21
- **claims_without_evidence**: 1
- **confidence_derived**: 0.95

## 結論

本機能設計書の記載内容は95%がソースコードで確認された。
