Bonjour à tous,

Je cherche un bug dans un code de calcul. J'espère pouvoir le trouver en forçant l'initialisation de tableaux allocatable à des NaN via

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
  x = ieee_value(x, ieee_signaling_nan)
et en compilant le reste du code avec les options permettant un crash du programme lors de l'utilisation d'une telle valeur.

J'ai juste deux soucis lors de mes compilations :
- Avec ifort j'utilise le flag "-fpe0" pour tous mes fichiers sauf celui contenant ma routine d'initialisation à NaN. Je peux lancer mon programme, mais celui-ci plante "seulement" si j'effectue une opération avec ma variable et non lorsque
j'effectue une assignation simple.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
  b = x     ! pas d'erreur
  b = x*1  ! plantage du programme
Savez vous comment faire planter mon programme pour le premier cas sauf dans le cas de la routine d'initialisation.

- Avec gfortran j'utilise "-ffpe-trap=invalid,zero,overflow,underflow,inexact,denormal" sauf sur la routine d'initialisation. Le programme plante cette fois ci dans la routine d'initialisation, ce que je veux éviter. Savez s'il est possible et si oui comment faire pour que le programme ne plante pas à l'initialisation.



Bonne rentrée à tous