Tu veux dire que le compilo ne vérifie pas le type d'une fonction si la notation K&R est utilisé ?
Oui, car la fonction n'a pas de prototype. C'est comme déclarer
intfoo();// Ne pas confondre avec int foo(void);
Et ni clang ni gcc me donnent un warning. (Il me mettent juste un warning car j'utilise printf sans <stdio.h>)
je n'ai jamais eu besoin d'utiliser un "void *",
Tu ne fait jamais appel à malloc ou memcpy ? Tu n'as jamais de callback qui prennent un void *userdata ? Jamais de macro pour implémenter des liste ou table avec des void* un peu partout ?
Quel genre de code fait tu?
m'étonnerait beaucoup qu'il ne génère pas de warning avec un code pareil
Essaye et sois étonné. :-) Pas de warning pour moi avec -Wall (mis a part le fait d'utiliser printf sans inclure stdio, et que j'ai oublié les return)
[^] # Re: ==
Posté par Gof (site web personnel) . En réponse au journal OSv : l'OS pour les nuages. Évalué à 4. Dernière modification le 19 novembre 2013 à 15:35.
Oui, car la fonction n'a pas de prototype. C'est comme déclarer
Et ni clang ni gcc me donnent un warning. (Il me mettent juste un warning car j'utilise printf sans
<stdio.h>)Tu ne fait jamais appel à malloc ou memcpy ? Tu n'as jamais de callback qui prennent un
void *userdata? Jamais de macro pour implémenter des liste ou table avec des void* un peu partout ?Quel genre de code fait tu?
Essaye et sois étonné. :-) Pas de warning pour moi avec
-Wall(mis a part le fait d'utiliser printf sans inclure stdio, et que j'ai oublié les return)