https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104395
cqwrteur <unlvsur at live dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |UNCONFIRMED Resolution|INVALID |--- --- Comment #3 from cqwrteur <unlvsur at live dot com> --- #include<ext/bitmap_allocator.h> #include<ext/new_allocator.h> int main() { __gnu_cxx::new_allocator<int> n; n.allocate(3); } clang++ -o a a.cc -faligned-allocation -fsized-deallocation -s -flto -fuse-ld=lld -std=c++98 /usr/local/bin/../lib/gcc/x86_64-pc-linux-gnu/12.0.1/../../../../include/c++/12.0.1/bits/new_allocator.h:55:21: note: de clared here template<typename _Tp> ^ /usr/local/bin/../lib/gcc/x86_64-pc-linux-gnu/12.0.1/../../../../include/c++/12.0.1/bits/new_allocator.h:132:55: error: '_Tp' does not refer to a value std::align_val_t __al = std::align_val_t(alignof(_Tp)); Sounds like a C++98 issue.