La floating point exception, c'est normalement quand ton processeur est amene a faire une division par 0. Je l'ai deja eu dans un de mes progs ou j'avais fait une bourde, le programme a l'execution envoie ca sur std::cerr et termine proprement.
 
Dans ton cas, je pencherais plutot pour ton optimisation -O3 (c assez agressif), il arrive que gcc optimise trop avec O3 et que les instructions donnees au processeur change legerement en substance.
 
Essaye en O2 et recommence pour voir ...
 
edit : regarde aussi tes CFLAGS par defaut avec ton gcc genre -ffast-math, ... etc.
 
Message édité par alligator421 le 15-07-2003 à 16:57:11