Como retornar uma estrutura anônima em C?
Tentando algum código, percebi que o seguinte código compila:
struct { int x, y; } foo(void) {
}
Parece que estamos definindo uma função chamadafoo
que retorna um anônimostruct
.
Agora, minha pergunta é: Isso acontece apenas com o meu compilador ou é C (99) legal? Em caso afirmativo, qual é a sintaxe correta para uma declaração de retorno e como posso atribuir corretamente o valor retornado a uma variável?