)]}'
{
  "commit": "5489c585eb664cb2dba93323973c3301b050bbfe",
  "tree": "112fa7259303d899e966a639d33d2daf75f05174",
  "parents": [
    "7cd96a68e0de805e2e381207264ecdd465987a8b"
  ],
  "author": {
    "name": "David Chisnall",
    "email": "github@theravensnest.org",
    "time": "Mon Sep 16 15:09:56 2024 +0100"
  },
  "committer": {
    "name": "David Chisnall",
    "email": "davidchisnall@users.noreply.github.com",
    "time": "Tue Sep 17 15:22:28 2024 +0100"
  },
  "message": "Add setjmp and setjmp-based error handling.\n\nThis is modelled on the OpenStep approach, which built Objective-C\nexceptions atop setjmp.  This maintains a linked list of on-stack jump\nbuffers.  You can unwind out of an error handler and so these can be\nused for cleanup in case of a trap.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6b17baf56615363e99dbb8fd20f1d8b37128f802",
      "old_mode": 33261,
      "old_path": "scripts/run_clang_tidy_format.sh",
      "new_id": "aecda51add30cf963b0cb6404be5a3aeab0e7549",
      "new_mode": 33261,
      "new_path": "scripts/run_clang_tidy_format.sh"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d8d3cdfb26fe0740ca0d1ae73f96bc38148c04eb",
      "new_mode": 33188,
      "new_path": "sdk/include/setjmp.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "9049828d734036e5cdaf1814e97fa427456d4606",
      "new_mode": 33188,
      "new_path": "sdk/include/unwind.h"
    },
    {
      "type": "modify",
      "old_id": "dfc1d1079c1258c3ea96c9f9153af25c1555ca5f",
      "old_mode": 33188,
      "old_path": "tests/test-runner.cc",
      "new_id": "824de18cff2a56659a059c2896d585ceb3e5fed1",
      "new_mode": 33188,
      "new_path": "tests/test-runner.cc"
    },
    {
      "type": "modify",
      "old_id": "4193ed33439e9ec81742cb29f84fe9811b1604f2",
      "old_mode": 33188,
      "old_path": "tests/tests.hh",
      "new_id": "c805bde502980646db21996d70af3fa2d0941e76",
      "new_mode": 33188,
      "new_path": "tests/tests.hh"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "42158d2e37d3668770a70f477022f2cfc16f0236",
      "new_mode": 33188,
      "new_path": "tests/unwind_cleanup-test.cc"
    },
    {
      "type": "modify",
      "old_id": "bbc1d78479cb402f21d267ae2c5ebdc132292397",
      "old_mode": 33188,
      "old_path": "tests/xmake.lua",
      "new_id": "e40c5ab6c1f58487bb29f046b2c23a7a7d10f94e",
      "new_mode": 33188,
      "new_path": "tests/xmake.lua"
    }
  ]
}
