)]}'
{
  "commit": "9b17c3374aa9eb809938bbcf7cf37093e842a4a7",
  "tree": "ca6ab9a0763a8571760861e729e6a63282679d59",
  "parents": [
    "0721caf05e950008d049034483a068e2a7cd53e7"
  ],
  "author": {
    "name": "LIU Hao",
    "email": "lh_mouse@126.com",
    "time": "Tue Apr 16 22:13:07 2024 +0800"
  },
  "committer": {
    "name": "LIU Hao",
    "email": "lh_mouse@126.com",
    "time": "Wed Apr 17 10:32:39 2024 +0800"
  },
  "message": "crt: Fix some symbols with duplicate stdcall suffixes\n\nSome of these functions, such as `ConvertAtJobsToTasks`, are exported with both\nundecorated and decorated names, respectively, `ConvertAtJobsToTasks` and\n`_ConvertAtJobsToTasks@0`. The decorated names are almost useless for C code\nanyway and are removed.\n\nSome other stdcall functions, such as `__fls_getvalue`, are only exported with\ndecorated names. A new macro `DECORATED_EXPORT()` is introduced for them.\n\nThis fixes errors like\n\n   #include \u003cstdio.h\u003e\n   #include \u003cwindows.h\u003e\n\n   /* This was `__stdcall` in X3DAUDIO1_2.DLL, and changed to `__cdecl` later.  */\n   __declspec(dllimport) void __stdcall X3DAudioCalculate(void*, void*, void*, UINT, void*);\n\n   int main(void)\n     {\n       printf(\"X3DAudioCalculate \u003d %p\\n\", (void*)(INT_PTR) X3DAudioCalculate);\n     }\n\nwhich used to result in\n\n   test.c:(.text+0xf): undefined reference to `_imp__X3DAudioCalculate@20\u0027\n\nSigned-off-by: LIU Hao \u003clh_mouse@126.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9728b5ab86ea4f894913e177711f5c5e1af9a945",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/def-include/msvcrt-common.def.in",
      "new_id": "975df5da9960b8e58bda472debb6200ba5f96a6e",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/def-include/msvcrt-common.def.in"
    },
    {
      "type": "modify",
      "old_id": "2cc5298e78e107f43bf50f5e314d8c51073b641a",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/lib32/mstask.def",
      "new_id": "ba8f873a00c8b38646a30e81ef7f6a9a43bad9c1",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/lib32/mstask.def"
    },
    {
      "type": "modify",
      "old_id": "e2e0e18c770f3fa9c01a3ff345d1122a728e7600",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/lib32/msvcr100.def.in",
      "new_id": "00d99124b1a5e0e4a871b5e062e3795e3e230de0",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/lib32/msvcr100.def.in"
    },
    {
      "type": "modify",
      "old_id": "4424adfe5b27837fd2bc6e027bdb83065e4e9ad5",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/lib32/msvcr90.def.in",
      "new_id": "c5a70d3e9ce923d9c70101cd937971d5e6539de0",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/lib32/msvcr90.def.in"
    },
    {
      "type": "modify",
      "old_id": "2835301f01adacecc0d0c13fb85e1bc47e74c179",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/lib32/msvcr90d.def.in",
      "new_id": "ba7dffa1cdad56557982883f6f964557d6eedd5e",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/lib32/msvcr90d.def.in"
    },
    {
      "type": "modify",
      "old_id": "d2702db906ad9c629133435095ac649fb3d15eb9",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/lib32/msvcrt20.def.in",
      "new_id": "1ac4d4701ffd232f60453cd53a3b45fa9a599fc3",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/lib32/msvcrt20.def.in"
    },
    {
      "type": "modify",
      "old_id": "f186061eea8b0d7d8e53b27fe658e64ac2ee9780",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/lib32/t2embed.def",
      "new_id": "77930644ada3e0883c68f8f4e15237fd5bedccb8",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/lib32/t2embed.def"
    },
    {
      "type": "modify",
      "old_id": "1b52c7c992ea43a79ac344fe497385e21717a6fb",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/lib32/usbd.def",
      "new_id": "b14a76662381333a4beeb469f5600e7c78a1b62c",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/lib32/usbd.def"
    },
    {
      "type": "modify",
      "old_id": "fb34ad0d0d3185542a3c2add4b0ad064cf6ebf28",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/lib32/x3daudio1_2.def",
      "new_id": "b07bf1723489cddf6b215763f2b19a05e9b5f4b5",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/lib32/x3daudio1_2.def"
    }
  ]
}
