)]}'
{
  "commit": "ab72a48505d8dfe01330a3f97e55751029496d9c",
  "tree": "143541563f86ca537404419290627570639b4df2",
  "parents": [
    "4d90c3b593a79727a5bb19b8cb4d58643b057551"
  ],
  "author": {
    "name": "Martin Storsjö",
    "email": "martin@martin.st",
    "time": "Wed Dec 14 15:57:20 2022 +0200"
  },
  "committer": {
    "name": "Martin Storsjö",
    "email": "martin@martin.st",
    "time": "Wed Dec 21 19:05:01 2022 +0200"
  },
  "message": "widl: Avoid conflicting definitions of __fastfail from Wine\u0027s winnt.h\n\nWidl uses a subset of Wine headers, on top of the host\u0027s platform\nheaders (either Unix or Windows ones). When building widl for a\nWindows target, the included Wine headers end up being preferred\nover the toolchain\u0027s own platform headers.\n\nWine defines the __fastfail function in the winnt.h header (as\na static inline function), while mingw-w64 headers define it in\n_mingw.h as a extern gnu_inline function.\n\nWhen built with Clang, this combintion of an extern declaration\nand static inline, ends up producing extern definitions of the\nfunction in every compilation unit that ends up including both\nheaders - which ends up as linker errors due to duplicate definitions.\n(GCC doesn\u0027t seem to produce any extern definitions in these cases.)\n\nPatch the imported winnt.h from Wine, to skip the definition of\n__fastfail if __MINGW_FASTFAIL_IMPL is defined (which is set by\n_mingw.h).\n\nSigned-off-by: Martin Storsjö \u003cmartin@martin.st\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "14cfe64af743a558e249a387554ea041b13aa140",
      "old_mode": 33188,
      "old_path": "mingw-w64-tools/widl/include/winnt.h",
      "new_id": "e2971ba2b3f5d0c6f6eaa8da7715d4b16d19e590",
      "new_mode": 33188,
      "new_path": "mingw-w64-tools/widl/include/winnt.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1075d39089bb81b12fb8fd4f28a81598c057ba06",
      "new_mode": 33188,
      "new_path": "mingw-w64-tools/widl/patches/0002-fastfail.patch"
    }
  ]
}
