Bonjour à tous,
l'un de mes étudiants a rencontré un plantage bizarre, avec gfortran (celui livré avec Code::Blocks) sous windows.
Le code suivant:
fonctionne parfaitement. Sauf si on décommente le WRITE dans la fonction.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 program hello implicit none integer,parameter::nL=2,nC=1 REAL(8)::tab(nL,nC),ChercheMin tab(1,1)=1.d0 tab(2,1)=2.d0 write(*,*)"min=",ChercheMin(nL,nC,tab) end program function ChercheMin(nl,nc,tab) implicit none integer::nl,nc REAL(8)::tab(nl,nc),ChercheMin ! SI on décommente la ligne suivante, ça buggue... !write(*,*) "Coucou" ChercheMin=tab(1,1)+tab(2,1) end function
Or, il ne me semble pas qu'il soit interdit de mettre des E/S dans les fonctions... L'étudiant a eu la bonne idée d'essayer un compilo en ligne, qui, lui, fonctionne...
D'après vous, serait-ce un bug de gfortran, ou un respect strict d'une partie de la norme que j'avoue ignorer?
Vos avis éclairés sont les bienvenus
Partager