DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Erreurs / Erreurs WLangage
  • Cause
  • Conseil
  • Exemples
  • Utilisation de l'instruction BOUCLE sans instruction SORTIR
  • Utilisation de l'instruction TANTQUE sans condition et sans instruction SORTIR
  • Boucle utilisée pour récupérer des informations sur un port série
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Warning 36 : Aucun SORTIR, RETOUR ou RENVOYER n'a été détecté dans le code de la boucle
Cause
Vous utilisez dans le code en cours une instruction répétitive de type BOUCLE ou TANTQUE. Dans ce code, aucune instruction n'est utilisée pour forcer la sortie de la boucle : il y a risque de bouclage infini.
Conseil
Vérifiez que votre boucle n'est pas infinie, et qu'il est possible de forcer la sortie du bloc d'instructions (utilisation des instructions SORTIR, RETOUR ou RENVOYER par exemple).
Exemples

Utilisation de l'instruction BOUCLE sans instruction SORTIR

Code provoquant le "Warning"
BOUCLE
// Lecture d'une ligne du fichier texte
UneLigne = fLitLigne(NumFic)
TraiteLigne(UneLigne)
FIN


Correction proposée

Ajoutez une ligne permettant de traiter la sortie de la boucle (dans cet exemple, code permettant de savoir si la fin du fichier est atteinte).
BOUCLE
// Lecture d'une ligne du fichier texte
UneLigne = fLitLigne(NumFic)
SI UneLigne = EOT ALORS SORTIR
TraiteLigne(UneLigne)
FIN

Utilisation de l'instruction TANTQUE sans condition et sans instruction SORTIR

Code provoquant l'erreur
TANTQUE UneLigne<>EOT
// Lecture d'une ligne du fichier texte
UneLigne = fLitLigne(NumFic)
TraiteLigne(UneLigne)
FIN
Correction proposée
Ajoutez une ligne permettant de traiter la sortie de la boucle (dans cet exemple, code permettant de savoir si la fin du fichier est atteinte).
TANTQUE UneLigne<>EOT
// Lecture d'une ligne du fichier texte
UneLigne = fLitLigne(NumFic)
SI UneLigne = EOT ALORS SORTIR
TraiteLigne(UneLigne)
FIN

Boucle utilisée pour récupérer des informations sur un port série

Code provoquant l'erreur
// Événement appelant une procédure (utilisation de la fonction FinProgramme)
BOUCLE
// Traitement en boucle pour récupérer les informations
Multitâche
FIN
Correction proposée
Aucune correction n'est nécessaire. La fonction FinProgramme permet de terminer le traitement.
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale