)]}'
{
  "commit": "2e32c6c19ceedebcccd090286a404c36c744173b",
  "tree": "193b11ca05849e31e07ccdb337a281e6d0f92717",
  "parents": [
    "68d7f7b9574c273ac97e211f28a678eb2b1cf307"
  ],
  "author": {
    "name": "Endre Fülöp",
    "email": "endre.fulop@sigmatechnology.com",
    "time": "Fri Jul 24 00:33:39 2026 +0200"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Fri Jul 24 00:33:39 2026 +0200"
  },
  "message": "[clang-tidy] Add performance-expensive-value-or check (#200166)\n\nFinds calls to `value_or` (and alternative spellings `valueOr`,\n`ValueOr`) on optional types where the return type is expensive to copy.\nObjects not trivially copyable, or larger than a configurable size threshold\nare treated as expensive.\nRationale: While `value` and `operator*` return references, `value_or` for\nthese types always returns by value.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "0c778b5a9f36b20a68d11de6119beccf66d33734",
      "old_mode": 33188,
      "old_path": "clang-tools-extra/clang-tidy/performance/CMakeLists.txt",
      "new_id": "f55a6cf2800f360e15571ac1feb6a17832752ceb",
      "new_mode": 33188,
      "new_path": "clang-tools-extra/clang-tidy/performance/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "97ac63dfbe985b3252dfe725faba87aab1d0dc90",
      "new_mode": 33188,
      "new_path": "clang-tools-extra/clang-tidy/performance/ExpensiveValueOrCheck.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "fc1afa58c096a6a109a4eac182c0eb66a03b45c5",
      "new_mode": 33188,
      "new_path": "clang-tools-extra/clang-tidy/performance/ExpensiveValueOrCheck.h"
    },
    {
      "type": "modify",
      "old_id": "a4c1cdacab49657eb4cafa2698861ec378e478f4",
      "old_mode": 33188,
      "old_path": "clang-tools-extra/clang-tidy/performance/PerformanceTidyModule.cpp",
      "new_id": "9eee02494be919ea64c82c1c0d4163c8fa0ea23c",
      "new_mode": 33188,
      "new_path": "clang-tools-extra/clang-tidy/performance/PerformanceTidyModule.cpp"
    },
    {
      "type": "modify",
      "old_id": "9759f46a5cc2de1f25209e025f8e9330e86dbc54",
      "old_mode": 33188,
      "old_path": "clang-tools-extra/docs/ReleaseNotes.rst",
      "new_id": "dd397b574b6f49538ea767b26a135708f4299f17",
      "new_mode": 33188,
      "new_path": "clang-tools-extra/docs/ReleaseNotes.rst"
    },
    {
      "type": "modify",
      "old_id": "2a44dc78fbc898cc53c9e41624315a039a8456a3",
      "old_mode": 33188,
      "old_path": "clang-tools-extra/docs/clang-tidy/checks/list.rst",
      "new_id": "8758efe14080c3fe5f607ee663930834c6670627",
      "new_mode": 33188,
      "new_path": "clang-tools-extra/docs/clang-tidy/checks/list.rst"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e404c8c248ed8d064377ef0b14c6c0f6489182f4",
      "new_mode": 33188,
      "new_path": "clang-tools-extra/docs/clang-tidy/checks/performance/expensive-value-or.md"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b0f134232c26a2ee9bcb3d3fa35b309167db328b",
      "new_mode": 33188,
      "new_path": "clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/optional"
    },
    {
      "type": "modify",
      "old_id": "dbebeaaa465148afef2e01e157279a1a082c8f0a",
      "old_mode": 33188,
      "old_path": "clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/string",
      "new_id": "766f240c655fbcbeef12b60d1566ff39e9cdf2e7",
      "new_mode": 33188,
      "new_path": "clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/string"
    },
    {
      "type": "modify",
      "old_id": "e9b6fa76cb6ff4f1a505319264a07e6398e73331",
      "old_mode": 33188,
      "old_path": "clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/type_traits",
      "new_id": "9ce80591f857d91b060daa777657b2686604c141",
      "new_mode": 33188,
      "new_path": "clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/type_traits"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f69d3dfbfecdc301f7f299a3c2e08580a7d416a7",
      "new_mode": 33188,
      "new_path": "clang-tools-extra/test/clang-tidy/checkers/performance/expensive-value-or-size-threshold.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6f9ddef3cf335a843a922122db904ab372e3971c",
      "new_mode": 33188,
      "new_path": "clang-tools-extra/test/clang-tidy/checkers/performance/expensive-value-or.cpp"
    },
    {
      "type": "modify",
      "old_id": "e0ac2c22c1dbfe0999d621b1db42cc20f3bed197",
      "old_mode": 33188,
      "old_path": "llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/performance/BUILD.gn",
      "new_id": "1c664d206dd59a3d27865a43edf36ba880121f64",
      "new_mode": 33188,
      "new_path": "llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/performance/BUILD.gn"
    }
  ]
}
