erichkeane wrote: > This seems to break the version of libstdc++ we use in our sysroot: (Details > on https://crbug.com/338536261) > > ``` > ../../build/linux/debian_bullseye_amd64-sysroot/usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/stl_iterator.h:1718:20: > error: use 'template' keyword to treat 'operator =' as a dependent template > name > 1718 | return this->operator=<_It, _Sent>(__x); > | ^ > 1 error generated. > ``` > > Is that expected, and if so do you have any suggestions for how to work > around it?
Ooof, that one hurts and is likely something we have to do something about. I tracked down thefix to this commit: https://github.com/gcc-mirror/gcc/commit/56c999860bbbb2fd5091ba0985e2e5eaa90c6478 It wasn't done intentionally as far as I can tell (just that it was a rewrite/refactor?). So it looks like this was broken back through 2022, so only fixed as of 2 years ago. This IS expected (in that the thing it is diagnosing is broken code AFAICT). The workaround is you can add the `template` keyword I believe. That said, as this is in the STL, that is perhaps not likely. @sdkrystian : I'd suggest seeing if we can put some level of 'hack' into the compiler to recognize this use and exclude it from diagnosis here. We can't have every libstdc++ build before 13 be broken :/ https://github.com/llvm/llvm-project/pull/90152 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits