#pragma GCC diagnostic push
#pragma GCC diagnostic ignore ???
int fstat(int handle, struct stat *statbuf); /* to get struct stat, #include <asm/stat.h> */
#pragma GCC diagnostic pop
Já cheguei à maior parte do caminho; mas para preencher o campo ignorar preciso saber o que colocar lá em vez de ???.
Este arquivo apenas declara os stubs asm. A maioria dos usuários deste arquivo de cabeçalho não se importará, struct stat
mas um se importará. Ficarei desapontado se tiver que fazer outro arquivo de cabeçalho para uma linha de declaração.
Sem uma declaração prévia de
struct stat
, a declaração de função fornecida declara esse tipo de estrutura dentro da lista de parâmetros, e essa declaração não é visível fora da declaração, daí o erro.Em vez de adicionar sinalizadores específicos do compilador para ignorar o erro, declare a struct fora da declaração.