<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">Le 6 octobre 2016 Ã  22:37, Pierre Biava <span dir="ltr"><<a href="mailto:pierre.biava@orange.fr" target="_blank">pierre.biava@orange.fr</a>></span> a Ã©crit :<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Ludovic Rousseau a Ã©crit le 06/10/2016 Ã  20:44 :<br>
<br>
Bonsoir Ludovic,<span class="gmail-"><br>
<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Je commence Ã  corriger les warnings. Juste avec clang et le niveau de warnings de base j'ai déjà plusieurs warnings inquiétants.<br>
<br>
Par exemple j'en ai corrigé 1 qui est aussi un bug :<br>
<a href="https://github.com/grisbi/grisbi/commit/f28fd44812a9112c670568849ae491a73f5e7d4e" rel="noreferrer" target="_blank">https://github.com/grisbi/gris<wbr>bi/commit/f28fd44812a9112c6705<wbr>68849ae491a73f5e7d4e</a><br>
<br>
</blockquote></span>
Des comme Ã§a il doit y en avoir d'autres. Si on peut systématiquement les trouver c'est bien. Jusqu'à présent seul le hasard ou si Ã§a conduisait Ã  un bug effectif nous les faisait corriger. Après est-ce inquiétant peut-être pas. Ã‡a doit plutôt nous faire réfléchir sur la pertinence du code ou la<br>
nécessité de la fonction.<span class="gmail-"><br></span></blockquote><div><br></div><div>Les compilateurs C sont de mieux en mieux pour repérer ce genre de choses.<br></div><div>Ensuite il y a des outils d'analyse statique qui vont encore plus loin. Par exemple llvm/clang [1] a une option pour faire Ã§a.<br><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="gmail-">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Mon idée est de corriger tous les warnings et ensuite de configurer Travis-CI avec -Werror pour qu'un nouveau warning fasse Ã©chouer la compilation automatique.<br>
</blockquote>
<br></span>
Ce serait bien. d'y arriver. Toutefois faire attention au type de warning. Il est difficile de ne plus en avoir.<br></blockquote><div><br></div><div>Oui.<br>Je ne vais pas corriger tous les warnings remontés en activant toutes les options.<br><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
En parlant de warning j'ai une question par rapport Ã  gcc. Ã‡a fait longtemps que gcc ne m'alerte plus sur les variables inutilisées. J'ai testé plusieurs options mais aucune ne me rend cette erreur. Si tu avais une idée pour réparer Ã§a ce serait bien de modifier le <a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a> pour que Ã§a refonctionne.<br></blockquote><div><br></div><div>Je ne pense pas que modifier <a href="http://configure.ac">configure.ac</a> soit une bonne idée. Par contre tu peux te définir CFLAGS avec les bonnes options pour avoir les warnings dans tes propres compilations.<br></div><br></div><div class="gmail_quote">Pour les variables inutilisées c'est -Wunused-variable qu'il faut utiliser (avec gcc). L'option est incluse dans -Wall<br></div><div class="gmail_quote"><br>$ cat unused.c<br>#include <stdio.h><br><br>int main(void)<br>{<br>    int pouet;<br>    return 0;<br>}<br><br>$ CFLAGS="-Wunused-variable" make unused<br>cc -Wunused-variable    unused.c   -o unused<br>unused.c: In function â€˜main’:<br>unused.c:5:6: warning: unused variable â€˜pouet’ [-Wunused-variable]<br>  int pouet;<br>      ^<br><br><br></div><div class="gmail_quote">Personnellement j'utilise CFLAGS="-Wall -g -O2 -Wextra -pipe -funsigned-char -fstrict-aliasing -Wchar-subscripts -Wundef -Wshadow -Wcast-align -Wwrite-strings -Wunused -Wuninitialized -Wpointer-arith -Wredundant-decls -Winline -Wformat -Wformat-security -Wswitch-enum -Winit-self -Wmissing-include-dirs -Wempty-body -fdiagnostics-color=auto -Wmissing-prototypes -Wstrict-prototypes -Wold-style-definition -Wbad-function-cast -Wnested-externs -Wmissing-declarations"<br></div><div class="gmail_quote">Et Ã§a génère un très gros paquet de warnigngs en compilant grisbi.<br></div><div class="gmail_quote"><br></div><div class="gmail_quote">Pour l'instant j'ai corrigé les warnings signalés par gcc en ne passant _aucune_ option. Donc les warnings qui signalent de vrais problèmes.<br><br></div><div class="gmail_quote">à+<br></div><div class="gmail_quote"><br></div>[1] <a href="http://clang-analyzer.llvm.org/">http://clang-analyzer.llvm.org/</a><br><br>-- <br><div class="gmail_signature"> Dr. Ludovic Rousseau</div>
</div></div>