Этот код действителен по любому стандарту C?

Соответствует ли этот код стандартам C (например, C89, C99, C10x)?

void 
main(int a,int b, int c, int d,char *msg){
    if(d==1){
        printf("%s\n",msg);
    }else{
        main(1,2,3,1,&"Hello Stackoverflow");
    }
}

Если нет, то почему?

Ответы на вопрос(3)

Ваш ответ на вопрос