https://gcc.gnu.org/g:618871ff09c07817f7ce9b2bd7338cd3299ad8f5
commit r15-3819-g618871ff09c07817f7ce9b2bd7338cd3299ad8f5 Author: Nathaniel Shead <nathanielosh...@gmail.com> Date: Tue Sep 10 22:05:40 2024 +1000 libstdc++: Remove unnecessary 'static' from __is_specialization_of This makes the declarations internal linkage, which is an ODR issue, and causes a future modules patch to fail regtest as it now detects attempted uses of TU-local entities in module CMIs. libstdc++-v3/ChangeLog: * include/std/format: Remove unnecessary 'static'. Signed-off-by: Nathaniel Shead <nathanielosh...@gmail.com> Diff: --- libstdc++-v3/include/std/format | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/libstdc++-v3/include/std/format b/libstdc++-v3/include/std/format index 100a53dfd76f..1e9a8374012d 100644 --- a/libstdc++-v3/include/std/format +++ b/libstdc++-v3/include/std/format @@ -365,10 +365,9 @@ namespace __format /// @cond undocumented template<typename _Tp, template<typename...> class _Class> - static constexpr bool __is_specialization_of = false; + constexpr bool __is_specialization_of = false; template<template<typename...> class _Class, typename... _Args> - static constexpr bool __is_specialization_of<_Class<_Args...>, _Class> - = true; + constexpr bool __is_specialization_of<_Class<_Args...>, _Class> = true; namespace __format {