GCC не предупреждает, хотя это должно - PullRequest
0 голосов
/ 10 октября 2018

У меня есть очень простая программа Hello World, которая не имеет возврата в конце своей функции main ().Если я правильно понимаю, это должно выдать предупреждение типа Wreturn, но когда я его скомпилирую, никакого вывода вообще не будет.Он просто компилируется и выполняется.

программа:

#include <stdio.h>
int main() {
  printf("Hello World!\n");
}

команда компиляции:

gcc -Wall -Wextra -o hello.o hello.c

Я также пытался специально с опцией Wreturn-type.

На Manjaro 18.0.0 с GCC 8.2.1

1 Ответ

0 голосов
/ 10 октября 2018

Используйте

gcc -std=c89 -pedantic ...

, поскольку в C99 1 main() не требуется return 0;.Как будто был один прямо перед закрывающей скобкой.

...