https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55992
--- Comment #4 from Paolo Carlini <paolo.carlini at oracle dot com> --- An alias declaration seems necessary to trigger the bug, eg doesn't affect: template<unsigned P> struct my_array : A<pole(P)> { };