2009-08-15 12 views

Respuesta

7

Sólo depende de cómo se invoca gcc:

 
/tmp/c$ gcc -Wall bad.c 
bad.c:1: warning: return type defaults to ‘int’ 
bad.c: In function ‘main’: 
bad.c:1: warning: control reaches end of non-void function 

vs

 
/tmp/c$ gcc -Wall /tmp/c/bad.c 
/tmp/c/bad.c:1: warning: return type defaults to ‘int’ 
/tmp/c/bad.c: In function ‘main’: 
/tmp/c/bad.c:1: warning: control reaches end of non-void function 

vs

 
/tmp/c$ gcc -Wall ../../tmp/c/bad.c 
../../tmp/c/bad.c:1: warning: return type defaults to ‘int’ 
../../tmp/c/bad.c: In function ‘main’: 
../../tmp/c/bad.c:1: warning: control reaches end of non-void function 

donde el contenido de bad.c son sólo

main() { } 

si a alguien le importa.

+2

Es cierto que funciona, pero ¿y si ya hay un sistema de construcción complicada establecido? Sería bueno si pudiera agregar algo a CFLAGS para aclarar la salida. –

2

A veces uso un script sed para eso (es decir, cuando uso cmake, que siempre usa pathes completos). Esto también puede ser útil para desinfectar otras partes del registro, por ej. nombres de plantilla en C++.

-6

gcc 2>/dev/null :-) En un SO real.

Cuestiones relacionadas