Pollux
:
En plus, si quand j'enlève l'optimisation ça marche, il y a de quoi se demander...
A priori ça peut tout aussi bien être une instabilité de ton prog, sauf si toi (ou Kevin) arrive à créer un testcase réduit.
En effet, voilà pourquoi je dis que c'est à lui de prouver que c'est un bogue du compilateur...
Ensuite, si c'est un bogue de l'optimisation, c'est
normal que ça marche en
-O0, c'est
toujours le cas pour les bogues d'optimisateur (mais la réciproque est fausse, pas mal d'erreurs de programmes utilisateurs ne se manifestent également qu'en optimisant, surtout si elles sont dans la catégorie "aléatoire")! Il n'y a pas de quoi s'étonner!
Et enfin, compiler un programme en
-O0 n'est
jamais une solution raisonnable.
-O0 est de la
merde. Il n'est là que pour déboguer le compilateur, ou à la limite pour déboguer ton programme. Ou si vraiment tu n'acceptes pas d'attendre 3 secondes pour une compilation. Mais ce n'est clairement pas fait pour compiler les releases avec, le code généré est totalement pourri! Si le programme ne marche pas avec autre chose que
-O0 (et encore, je parie qu'il aurait suffi de mettre le bon
-fno-foo-optimization), il faut me mailer le programme et surtout pas le compiler en
-O0.