IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Fortran Discussion :

erreur fortran gfortran 4.1.2


Sujet :

Fortran

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mars 2010
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 34
    Points : 32
    Points
    32
    Par défaut erreur fortran gfortran 4.1.2
    Bonjour à tous,

    Je reviens vers vous car j'ai de nouveau un problème avec une structure (pourtant très simple) écrite en Fortran mais qui donne une erreur sur un ordinateur et pas sur un autre...

    Voici le bout de code qui pose problème :

    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
    22
    23
     
     
    MODULE test
    IMPLICIT NONE
     
      TYPE toto
        REAL, ALLOCATABLE, DIMENSION(:,:) :: array
      END TYPE toto
     
    CONTAINS
     
    FUNCTION print_test(arg_1, arg_2)
    IMPLICIT NONE
    TYPE(toto) :: print_test
    INTEGER, INTENT(IN) :: arg_1, arg_2
     
    ALLOCATE(print_test%array(arg_1, arg_2))
     
    PRINT*, 'ARRAY(1,1) = ', print_test%array(1,1)
     
    END FUNCTION print_test
     
    END MODULE test
    Je n'ai mis ici que les lignes qui posent problème...Ce code compile très bien puis s'exécute très bien sur un ordinateur ubuntu muni de gfortran (version 4.6.1).

    Cependant, j'obtiens une erreur de compilation sur un autre ordinateur muni de gfortran (version 4.1.2). Voici l'erreur obtenue :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
     
    ......
     
    In file type.f90:6
     
    REAL, ALLOCATABLE, DIMENSION(:,:) :: array
     
    Error: Attribute at (1) is not allowed in a type in a TYPE definition
     In file type.f90:7
     
    END TYPE toto 
     
    .....
    J'ignore ce qui cloche dans mon code ! d'autant plus qu'il fonctionne très bien ailleurs !!!

    Pourquoi ne marche t-il pas sous fortran 4.1.2 ? pourquoi cette erreur ?

    Je vous remercie pour votre aide

    Antoine

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Août 2006
    Messages
    974
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Août 2006
    Messages : 974
    Points : 1 346
    Points
    1 346
    Par défaut
    Un allocatable dans un type, c'est permis seulement à compter du TR-15581, qui est un complément « standard » à Fortran 95 (lors de la publication du TR-15581, le normalisateur s'engageait à l'inclure dans la version suivante de la norme, soit Fortran 2003).

    Alors, de ton expérience, on peut conclure que gfortran 4.1.2 ne supportait pas TR-15581.

    Ceci dit, tu peux contourner en utilisant un pointeur plutôt qu'un allocatable. Il est toutefois suggéré de plutôt mettre à jour la version périmée de gfortran. La raison est que du code utilisant des allocatables est plus robuste et peut être plus rapide qu'un code utilisant des pointeurs.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Mars 2010
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 34
    Points : 32
    Points
    32
    Par défaut Resolu
    Excellent !

    Je te remercie pour ta réponse ! Je vais tester mon code avec une version mise à jour de gfortran et je te tiens au courant !

    Merci !

    Antoine

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Erreur FORTRAN avec CODE::BLOCKS
    Par manaiilhem dans le forum Fortran
    Réponses: 1
    Dernier message: 25/10/2013, 22h03
  2. Passage de Compaq visual Fortran à Gfortran
    Par Mandarine dans le forum Fortran
    Réponses: 4
    Dernier message: 29/01/2011, 08h16
  3. erreur fortran : bad integer
    Par nad3301 dans le forum Langages de programmation
    Réponses: 0
    Dernier message: 28/10/2009, 14h23
  4. [Fortran 95] g95 ou gfortran ?
    Par rud-x dans le forum Fortran
    Réponses: 1
    Dernier message: 24/08/2005, 10h33
  5. [Visual Fortran] Erreur de compilation
    Par Julito dans le forum Fortran
    Réponses: 1
    Dernier message: 04/03/2005, 21h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo