// { dg-do assemble } template struct __vector_alloc_base { typedef int allocator_type; }; template struct vector : __vector_alloc_base { typedef short allocator_type; explicit vector(const allocator_type& a = allocator_type()) {} };