...similar to 068730992cf08d7d7e82e7bb147d85f429fc3ddd "libstdc++ 4.4 uses __is_signed as an identifier [...]"
Starting with https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=5329e1a8e1480d536ff96283a6556e51112ba470 "libstdc++: Make chrono::hh_mm_ss more compact", libstdc++ 13 trunk used __is_signed as
static constexpr bool __is_unsigned = __and_v<is_integral<typename _Duration::rep>, is_unsigned<typename _Duration::rep>>;
in libstdc++-v3/include/std/chrono. Even though that got reverted with https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=cb363fd9f19eb791e1ee1eb0d5c61f5fdf21af32 "libstdc++: Change names that clash with Win32 or Clang", it might make sense to treat __is_unsigned the same as __is_signed here (and to also make the workaround hit for constexpr in addition to const).