Deklaration deklariert nichts: Warnung?

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

int main()
{
    struct emp
    {
        struct address
        {
              int a;
        };
        struct address a1;
    };
}

Dieser Code zeigt eine Warnung: -

Warnung: Deklaration deklariert nichts (standardmäßig aktiviert)

Wobei der folgende Code keine Warnung anzeigt

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

int main()
{
    struct emp
    {
        struct address
        {
             int a;
        }a1;
    };
}   

Warum wird "Warnung" nur im ersten Code angezeigt?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage