Forum: Compiler & IDEs avr-gcc: -Werror-implicit-function-declaration funktioniert nicht mit -std=gnu99


von Peter K. (kloetpatra)


Lesenswert?

Hi, ich will dass der avr-gcc folgende Warning als Error ausspuckt:
1
warning: implicit declaration of function 'xxx'

Normalerweise geht das mit:
1
-Werror-implicit-function-declaration
allerdings mag mein avr-gcc das wohl nicht wenn
1
-std=gnu99
 zugleich definiert ist.

Hat jemand eine Idee wie ich mit "-std=gnu99" implizite Deklarationen 
verbieten kann? Und wieso das so ist?

Mit dem normalen gcc geht es jedenfalls...

von Yalu X. (yalu) (Moderator)


Lesenswert?

Peter Krause schrieb:
> allerdings mag mein avr-gcc das wohl nicht wenn
> -std=gnu99
> zugleich definiert ist.

Wie äußert sich das? Welche Compiler-Version hast du?

Bei mir treten keinerlei Probleme auf.

von Peter K. (kloetpatra)


Lesenswert?

Yalu X. schrieb:
> Peter Krause schrieb:
>> allerdings mag mein avr-gcc das wohl nicht wenn
>> -std=gnu99
>> zugleich definiert ist.
>
> Wie äußert sich das? Welche Compiler-Version hast du?
>
> Bei mir treten keinerlei Probleme auf.
1
avr-gcc -g2 -gstabs -O3 -fpack-struct -fshort-enums -std=gnu99 -funsigned-char -funsigned-bitfields -Werror-implicit-function-declaration -mmcu=atmega8 -DF_CPU=8000000UL -MMD -MP -MF"tlc5941.d" -MT"tlc5941.d" -c -o"tlc5941.o" "../tlc5941.c"
2
../tlc5941.c: In function 'tlc_gs_set_all':
3
../tlc5941.c:94: warning: implicit declaration of function 'tlc_gs_set_all_rgb'

Version:
avr-gcc (WinAVR 20100110) 4.3.3
Copyright (C) 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is 
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR 
PURPOSE.

von holger (Gast)


Lesenswert?


von Peter K. (kloetpatra)


Lesenswert?


von Yalu X. (yalu) (Moderator)


Lesenswert?

Komisch. In den Versionen 4.2.x, 4.4.x, 4.5.x und 4.6.x funktioniert
-Werror-implicit-function-declaration in Verbindung mit -std=gnu99 auch
ohne -pedantic-errors u.ä. Nur 4.3.x (ich habe 4.3.6 getestet) scheint
da eine Ausnahme zu machen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.