Bonjour à tous,
Dans une proc iml j'utilise plusieurs GOTO pour diriger la résolution du programme vers des parties de celui-ci sans oublier à chaque fin de ces parties de rediriger par un nouveau goto vers l'endroit souhaité.
La sortie montre que le programme s'exécute sans prendre en compte les GOTO puisque qu'il affiche les valeurs de st successives comme suit : 4 puis 5 puis 3.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 proc iml; st=2; goto st2; st2 : st=4; print st;goto st4; st3 : st=5; print st;goto exit; st4 : st=3; print st;goto st3; exit : quit;
Le message d'erreur est le suivant :
Pourquoi ces GOTO ne sont pas pris en compte ?
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
24
25
26 1071 proc iml; NOTE: IML Ready 1072 st=2; 1073 goto st2; ERROR: Unresolved label: ST2 1074 st2 : 1074! st=4; 1074! print st; 1074! goto st4; ERROR: Unresolved label: ST4 1075 st3 : 1075! st=5; 1075! print st; 1075! goto exit; ERROR: Unresolved label: EXIT 1076 st4 : 1076! st=3; 1076! print st; 1076! goto st3; ERROR: Unresolved label: ST3 1077 exit : quit; NOTE: Exiting IML. NOTE: PROCEDURE IML used (Total process time): real time 0.01 seconds cpu time 0.01 seconds
Quel est le problème ?
Merci
Partager