De acuerdo con gcc de online documentation, -Wall
convierte en:
-Waddress
-Warray-bounds (only with -O2)
-Wc++0x-compat
-Wchar-subscripts
-Wenum-compare (in C/Objc; this is on by default in C++)
-Wimplicit-int (C and Objective-C only)
-Wimplicit-function-declaration (C and Objective-C only)
-Wcomment
-Wformat
-Wmain (only for C/ObjC and unless -ffreestanding)
-Wmissing-braces
-Wnonnull
-Wparentheses
-Wpointer-sign
-Wreorder
-Wreturn-type
-Wsequence-point
-Wsign-compare (only in C++)
-Wstrict-aliasing
-Wstrict-overflow=1
-Wswitch
-Wtrigraphs
-Wuninitialized
-Wunknown-pragmas
-Wunused-function
-Wunused-label
-Wunused-value
-Wunused-variable
-Wvolatile-register-var
De ellos, -Wreturn-type
parece que sería hacer el truco:
Advertir cada vez que una función se define con un tipo de retorno que por defecto es int. También advierte sobre cualquier declaración de devolución sin valor de retorno en una función cuyo tipo de devolución no es nulo (se considera que regresar al final del cuerpo de la función regresa sin un valor), y sobre una declaración de devolución con una expresión en un función cuyo tipo de retorno es nulo.
Sin embargo, si encender -Wall
hace que su código tenga demasiadas advertencias, ¡le recomiendo que arregle su código!
¿Usted intentó -Wextra/-ansi/-pedantic? – halfdan
'-Wall' ¿permite demasiadas otras advertencias? Esa es una primera. – GManNickG
Si tiene -Wall encendido demasiados, una alternativa sería cambiar los particulares que no se ajustan a su estilo de codificación. Aunque me gustaría saber cuáles tienes que no te dan comentarios valiosos sobre los problemas en tu código. –