variável de membro estático embutido

struct sa
{
  struct sb { int a = 123;};
  inline static sb b;
};

O código acima gera um erro:

main.cpp:25:20: error: default member initializer for ‘sa::sb::a’ required before the end of its enclosing class
   inline static sb b;
                    ^
main.cpp:24:21: note: defined here
   struct sb { int a = 123;};
                     ^~~~~~

Removendo oinline palavra-chave ou o inicializador de membro padrão funciona. Mas apenas a partir da saída, não entendo por que esse uso está errado.

questionAnswers(1)

yourAnswerToTheQuestion