Question: I know that in C++11 we can now use using to write type alias, like typedefs: Is, from what I understand, equivalent to: And that new syntax emerged from the effort to have a way to express “template typedef”: ...

Question: The following code Is compiled fine by GCC 8.2 (calls the size_t, string constructor). However, clang up to 14 rejects it with as if V had no constructors: https://godbolt.org/z/M91zb6Pjr Replacing using typename Impl::vector; with using Impl::Impl; makes clang accept ...