stephenberry / glaze

Extremely fast, in memory, JSON and interface library for modern C++
MIT License
1.23k stars 123 forks source link

Build failure with mingw x86_64 #1443

Open star-hengxing opened 1 week ago

star-hengxing commented 1 week ago

ci: https://github.com/xmake-io/xmake-repo/actions/runs/11830125439/job/32963125500?pr=5758

include/glaze/util/atoi.hpp: In function 'constexpr glz::detail::value128 glz::detail::full_multiplication(uint64_t, uint64_t)':
include/glaze/util/atoi.hpp:167:20: error: '_umul128' was not declared in this scope
  167 |       answer.low = _umul128(a, b, &answer.high); // _umul128 not available on ARM64
      |

https://github.com/stephenberry/glaze/blob/e65db3555415219699783403c0faf1834704dcf2/include/glaze/util/atoi.hpp#L161-L174

stephenberry commented 9 hours ago

Thanks for reporting this. Support for mingw was dropped because no one was using it, we were getting much worse compile times, and compile time support was behind. But, we could probably get support working again.

If you want to submit a pull request for a workaround I would be happy to merge it in. Otherwise, we'll take a look at this when we're able.