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

Free Pascal Discussion :

Différences entre FPC 2.6.4 et FPC 3.0.0 [Free Pascal]


Sujet :

Free Pascal

  1. #1
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 073
    Points : 15 467
    Points
    15 467
    Billets dans le blog
    9
    Par défaut Différences entre FPC 2.6.4 et FPC 3.0.0
    Bonjour ! Je viens d'essayer de compiler mon jeu d'échecs (Eschecs 2.2) avec Lazarus 1.6. Le programme se compile mais ne fonctionne pas ! Tous les coups sont déclarés illégaux.

    Cela m'a un peu surpris car jusqu'à présent je n'avais remarqué aucun problème de ce genre, depuis que j'ai commencé à utiliser Lazarus 1.6 à la place de Lazarus 1.4.4.

    Auriez-vous remarqué de votre côté des différences entre les deux versions du compilateur qui pourraient être à l'origine du problème ?
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

  2. #2
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 073
    Points : 15 467
    Points
    15 467
    Billets dans le blog
    9
    Par défaut
    J'ai réuni dans une archive l'unité concernée (chessgame.pas) avec trois petits programmes de test. Si vous voulez y jeter un œil...

    Les programmes produisent des fichiers .log dans lesquels chaque ligne correspond à une vérification. Lorsque tout se passe bien, toutes les lignes se terminent par "TRUE".

    J'ai tenté un remplacement systématique de "string" par "ansistring" et de "char" par "ansichar" : ça n'a pas changé le résultat. Pourtant je pense bien que c'est des chaînes que vient le problème. Autrement je ne vois pas d'où cela pourrait venir.
    Fichiers attachés Fichiers attachés
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

  3. #3
    Membre confirmé

    Homme Profil pro
    Autre
    Inscrit en
    Novembre 2015
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Novembre 2015
    Messages : 145
    Points : 625
    Points
    625
    Par défaut
    Je pense que ce lien devrait vous intéresser:
    http://forum.lazarus.freepascal.org/...c,31709.0.html

    A priori, en remplaçant le code suivant dans function TGame.IsLegal (chessgame.pas):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    //  list.Sort;
      list.Sorted := True;
    cela a alors bien l'air de fonctionner correctement (test fait avec test2.pas). Mais je n'ai fait qu'un essai très rapide.


    *** Edit *** Bien entendu, ce n'est pas la peine de modifier cette propriété à chaque appel: juste après la création de la liste est suffisant (NB. il y a plusieurs instructions list := TStringList.Create dans votre code).

  4. #4
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 073
    Points : 15 467
    Points
    15 467
    Billets dans le blog
    9
    Par défaut
    Oui, ça fonctionne. Mille mercis !
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

  5. #5
    Membre averti
    Avatar de joreveur
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2010
    Messages
    293
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2010
    Messages : 293
    Points : 365
    Points
    365
    Par défaut
    Bonjour
    il n'y a pas 100% de compatibilité ascendante ?
    étonnant non ?

  6. #6
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 073
    Points : 15 467
    Points
    15 467
    Billets dans le blog
    9
    Par défaut
    Citation Envoyé par joreveur Voir le message
    il n'y a pas 100% de compatibilité ascendante ?
    En l'occurrence je dirais plutôt que mon code initial n'était pas bon et que c'était une faiblesse de la part de FPC 2.6.4. de l'accepter.

    Autrement, comme je l'ai dit plus haut, depuis que j'utilise FPC 3.0.0, je n'ai remarqué aucun problème de compatibilité, sauf dans certains programmes utilisant l'API Windows, où j'ai rencontré le même genre de problème qu'on peut rencontrer en passant de Delphi 7 (par exemple) à Delphi XE et suivants.
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

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

Discussions similaires

  1. Différence entre un "bidouilleur" et un Pro ?
    Par christ_mallet dans le forum Débats sur le développement - Le Best Of
    Réponses: 290
    Dernier message: 28/11/2011, 10h53
  2. [Free Pascal] Différences entre Delphi et FPC
    Par Paul TOTH dans le forum Free Pascal
    Réponses: 3
    Dernier message: 01/09/2007, 00h57
  3. Différence entre TCP, UDP, ICMP
    Par GliGli dans le forum Développement
    Réponses: 1
    Dernier message: 13/09/2002, 08h25
  4. Différences entre jmp, jz, jnz, etc
    Par christbilale dans le forum Assembleur
    Réponses: 3
    Dernier message: 05/07/2002, 15h09
  5. Réponses: 3
    Dernier message: 07/05/2002, 16h06

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