)]}'
{
  "commit": "07e34538d5a7d5e86ab47c7ba47becb32f7d827e",
  "tree": "e78cde973d64b0d573e9ea02d7ab454767393d81",
  "parents": [
    "537581fe8f833b1b1d4b6a01e0765aa3c2e941c8"
  ],
  "author": {
    "name": "Pali Rohár",
    "email": "pali.rohar@gmail.com",
    "time": "Sun Apr 13 18:34:40 2025 +0200"
  },
  "committer": {
    "name": "Martin Storsjö",
    "email": "martin@martin.st",
    "time": "Mon May 05 23:43:59 2025 +0300"
  },
  "message": "headers: Fix declaration of POSIX stat/fstat and LFS stat64/fstat64 functions\n\nMove LFS defines of stat64/fstat64 from _mingw_stat64.h to sys/stat.h.\nMove struct stat from _mingw_stat64.h to sys/stat.h.\n\nFix definition of POSIX struct stat to follow both _FILE_OFFSET_BITS and\n_USE_32BIT_TIME_T settings.\n\nFix declaration of POSIX stat(), fstat() and mingw-w64 wstat() functions to\nfollow all combinations of _FILE_OFFSET_BITS and _USE_32BIT_TIME_T settings.\n\nDeclare fstat() as a function instead of macro. Define it as alias via\n__MINGW_ASM_CALL to one of the CRT _fstat* function based on\n_FILE_OFFSET_BITS and _USE_32BIT_TIME_T settings.\n\nIn the same way declare stat() and wstat() as functions. But as alias to\none of the mingw-w64 (w)stat* function. This is needed because msvcrt\n_(w)stat* functions have issue with trailing slash and requires mingw-w64\nwrapper for POSIX compatibility.\n\nAdditionally define struct stat64 for LFS functions stat64(), fstat64() and\nmingw-w64 function wstat64(). And again declare them as a functions instead\nof macro.\n\nKeyword stat has to be declared as a function, not as a macro because it\nwould override effect of struct stat.\n\nDo not declare these stat/fstat/wstat functions when building the mingw-w64\nruntime itself as it is not clear which of those stat[size] / fstat[size] /\nwstat[size] symbol should be used. Instead the mingw-w64 source file should\ncall the appropriate ABI compatible *stat[size] function with corresponding\nABI compatible struct _stat[size].\n\nSigned-off-by: Martin Storsjö \u003cmartin@martin.st\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f0b3b748b0eb23b01cc315dc5a4651b43a6e843c",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/misc/crtdll_fstat.c",
      "new_id": "2fe5b1e9c34202f3d4876027af4229f9c72a2c44",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/misc/crtdll_fstat.c"
    },
    {
      "type": "modify",
      "old_id": "e87ab5e2cd91abcd198b5768941a65c1dc3f5591",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/misc/ftw.c",
      "new_id": "f520ef63da782c35705e08f6f54db9eeb492c284",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/misc/ftw.c"
    },
    {
      "type": "modify",
      "old_id": "5595e76c656bcb5c4b6350c787b70b612874c1ef",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/misc/ftw64.c",
      "new_id": "72e22a214e2a2b4547b49dee21749ae761010082",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/misc/ftw64.c"
    },
    {
      "type": "modify",
      "old_id": "8df51a42aad90370db6a3ec187d601ec6e9b4eec",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/stdio/_fstat64.c",
      "new_id": "28c5d73c1f55e5968931cf34a89f1557094a620f",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/stdio/_fstat64.c"
    },
    {
      "type": "modify",
      "old_id": "0f1c73fe094617875dda26472c1178f59491b166",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/stdio/stat64.c",
      "new_id": "930696faeeb5106f33300506b7b4d71e6c8f3a1f",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/stdio/stat64.c"
    },
    {
      "type": "modify",
      "old_id": "96b0475cf4aed366fd74c7ce2fd4bc918a270a76",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/stdio/wstat64.c",
      "new_id": "a496a54eb02576cc9958532643acb7a4c7087e70",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/stdio/wstat64.c"
    },
    {
      "type": "modify",
      "old_id": "8ce097561116598de95c2762044754199641a47b",
      "old_mode": 33188,
      "old_path": "mingw-w64-headers/crt/_mingw_stat64.h",
      "new_id": "84eabba9698b1ae241cafe5b093c69548e19653c",
      "new_mode": 33188,
      "new_path": "mingw-w64-headers/crt/_mingw_stat64.h"
    },
    {
      "type": "modify",
      "old_id": "0c133cdc11fa8a261f5d3027bf9c7a1bc41614bb",
      "old_mode": 33188,
      "old_path": "mingw-w64-headers/crt/sys/stat.h",
      "new_id": "5d2e6dfaf0316f82427a9d924832a75b378afdf4",
      "new_mode": 33188,
      "new_path": "mingw-w64-headers/crt/sys/stat.h"
    }
  ]
}
