https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99274
--- Comment #1 from Alexander Lelyakin <alexander.lelyakin at googlemail dot com> --- Previously I have seen such message only in connection with <iosfwd>, but it happends also without it. Another header causing such error is <regex>: g++ -std=c++20 -fmodules-ts -x c++-system-header iterator g++ -std=c++20 -fmodules-ts -x c++-system-header regex ---- In file included from /usr/local/include/c++/11.0.1/locale:40, from /usr/local/include/c++/11.0.1/regex:44: /usr/local/include/c++/11.0.1/bits/locale_facets.h:121:31: error: wrong number of template arguments (1, should be 2) 121 | ostreambuf_iterator<_CharT> | ^ In file included from /usr/local/include/c++/11.0.1/algorithm:61, from /usr/local/include/c++/11.0.1/regex:38: /usr/local/include/c++/11.0.1/bits/stl_algobase.h:454:11: note: provided for ‘template<class _CharT, class _Traits> class std::ostreambuf_iterator’ 454 | class ostreambuf_iterator; | ^~~~~~~~~~~~~~~~~~~ In file included from /usr/local/include/c++/11.0.1/locale:40, from /usr/local/include/c++/11.0.1/regex:44: /usr/local/include/c++/11.0.1/bits/locale_facets.h:122:39: error: wrong number of template arguments (1, should be 2) 122 | __write(ostreambuf_iterator<_CharT> __s, const _CharT* __ws, int __len) | ^ In file included from /usr/local/include/c++/11.0.1/algorithm:61, from /usr/local/include/c++/11.0.1/regex:38: /usr/local/include/c++/11.0.1/bits/stl_algobase.h:454:11: note: provided for ‘template<class _CharT, class _Traits> class std::ostreambuf_iterator’ 454 | class ostreambuf_iterator; | ^~~~~~~~~~~~~~~~~~~ In file included from /usr/local/include/c++/11.0.1/locale:40, from /usr/local/include/c++/11.0.1/regex:44: /usr/local/include/c++/11.0.1/bits/locale_facets.h: In function ‘int std::__write(int, const _CharT*, int)’: /usr/local/include/c++/11.0.1/bits/locale_facets.h:124:11: error: request for member ‘_M_put’ in ‘__s’, which is of non-class type ‘int’ 124 | __s._M_put(__ws, __len); | ^~~~~~ /usr/local/include/c++/11.0.1/regex: At global scope: /usr/local/include/c++/11.0.1/regex: warning: not writing module ‘/usr/local/include/c++/11.0.1/regex’ due to errors ---- g++ (GCC) 11.0.1 20210312 (experimental) Copyright (C) 2021 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.