)]}'
{
  "commit": "0599909bfebc7d3440cc1fda3144e437e6ade056",
  "tree": "4e5efda59ae4eef7d0fab33022e5ebb047b6ebb8",
  "parents": [
    "856a3485ca5b704fc7614e89540670cb553e6e4f"
  ],
  "author": {
    "name": "Henry Schreiner",
    "email": "HenrySchreinerIII@gmail.com",
    "time": "Fri Aug 14 16:33:49 2026 -0400"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Fri Aug 14 16:33:49 2026 -0400"
  },
  "message": "fix: returning a copyable type with a deleted move constructor (#6143)\n\n* fix: returning a copyable type with a deleted move constructor (#6142)\n\ndetail::function_ref\u0027s constructor SFINAE required\nis_convertible\u003cRet, Ret\u003e, which is false for a copyable type whose move\nconstructor is explicitly deleted (the trait tests conversion from an\nxvalue). In C++17, such a prvalue return is legal via guaranteed copy\nelision, so also accept an exact type match. Regression introduced in\n3.1.0 by the call_impl outlining (#5887).\n\nFixes #6142\n\nAssisted-by: ClaudeCode:claude-fable-5\n\n* refactor: guard with __cpp_guaranteed_copy_elision\n\nPer review: the feature-test macro expresses the intent more precisely\nthan PYBIND11_CPP17.\n\nAssisted-by: ClaudeCode:claude-opus-5",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a81bdfe13f78b0512ecf5c63c0030c9203f7af37",
      "old_mode": 33188,
      "old_path": "include/pybind11/detail/function_ref.h",
      "new_id": "f5f9d7aeadd9d7f1b546b4be7f5d42effd62d027",
      "new_mode": 33188,
      "new_path": "include/pybind11/detail/function_ref.h"
    },
    {
      "type": "modify",
      "old_id": "b163406a57ccce8910ab81cc9ab52b28b019407e",
      "old_mode": 33188,
      "old_path": "tests/test_copy_move.cpp",
      "new_id": "ed1bf61e95b13da9f58223bd30eda43c9935589f",
      "new_mode": 33188,
      "new_path": "tests/test_copy_move.cpp"
    },
    {
      "type": "modify",
      "old_id": "d843793350deac1fc6c9ec3a9d3a256e81accb0c",
      "old_mode": 33188,
      "old_path": "tests/test_copy_move.py",
      "new_id": "1c3094f417317aa346b4e3a1505e8c92ff792f5b",
      "new_mode": 33188,
      "new_path": "tests/test_copy_move.py"
    }
  ]
}
