¿Podemos tener una estructura anónima como argumento de plantilla?

El título se explica por sí mismo, pero aquí hay un ejemplo simplificado:

#include <cstdio>

template <typename T>
struct MyTemplate {

    T member;

    void printMemberSize() {
        printf("%i\n", sizeof(T));
    }

};

int main() {

    MyTemplate<struct { int a; int b; }> t; // <-- compiler doesn't like this

    t.printMemberSize();

    return 0;

}

El compilador se queja cuando intento usar una estructura anónima como argumento de plantilla. ¿Cuál es la mejor manera de lograr algo como esto sin tener que tener una definición de estructura con nombre separada?

Respuestas a la pregunta(2)

Su respuesta a la pregunta