Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Mes tests avec le compilateur. Mer 30 Aoû 2017 - 14:39 | |
| Bonjour. Voici le résultat de mes tests réalisés avec le compilateur: Une variable ne peut pas être déclarée avec 2 types différents (Ex: b% et b$).
Une variable ne peut pas être déclarée plusieurs fois avec 'dim', même si la déclaration est faite dans des subs différentes.
Un label ne peut pas porter le même nom qu'une sub.
Deux sub ne peuvent pas commencer par la même définition: Ex: sub creation_objets() et sub creation_objets_suite().Toutes ces erreurs provoquent le message ' Duplicate definition'. Toutefois, la dernière erreur n'apparaît pas dans un code indépendant, mais bien dans mon programme principal. En effet, si j'écris ceci, aucune erreur n'est signalée. Bizarre !! - Code:
-
sub creation_objets() end_sub
sub creation_objets_suite() end_sub Merci Jack de confirmer ou non tout cela. | |
|
Jack Admin
Nombre de messages : 2394 Date d'inscription : 28/05/2007
| Sujet: Re: Mes tests avec le compilateur. Mer 30 Aoû 2017 - 21:13 | |
| - Citation :
- Une variable ne peut pas être déclarée avec 2 types différents (Ex: b% et b$).
Oui, c'était indiqué ici (voir B5): https://panoramic.1fr1.net/t5369-compilateur-v-0-9-beta-10-du-29-aout-2017B.5 - Définir des variables de même nom mais de type différent n'est pas accepté. dim a%,a$,a n'est pas accepté - Citation :
- Une variable ne peut pas être déclarée plusieurs fois avec 'dim', même si la déclaration est faite dans des subs différentes.
C'est du à l'analyse du source par le compilateur: les déclarations de variable sont obtenues en balayant tout le source à la recherche de DIM. Analyser si des déclarations de variables sont dans des SUB différentes ou dans des IF serait très difficile, car l'analyseur syntaxique devrait alors "comprendre" le source. Je ne change rien pour le moment et par exemple ce cas de figure déclenchera une erreur "Duplicated definition": - Code:
-
dim a a=1 if a=1 then dim b,c,d if a=2 then dim b - Citation :
- Un label ne peut pas porter le même nom qu'une sub.
Je ne rencontre aucun problème avec ce source: - Code:
-
label toto toto() toto: end sub toto() end_sub - Citation :
- Deux sub ne peuvent pas commencer par la même définition:
Ex: sub creation_objets() et sub creation_objets_suite(). Je n'ai aucun problème avec ce source: - Code:
-
creation_objets() creation_objets_suite() end sub creation_objets() end_sub sub creation_objets_suite() end_sub _________________ username : panoramic@jack-panoramic password : panoramic123 | |
|
Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Mes tests avec le compilateur. Jeu 31 Aoû 2017 - 8:26 | |
| Bonjour. @Jack. Cela confirme mon dernier post. Les deux dernières erreurs ne sont pas signalées dans un code indépendant, mais apparaissent bien lors de la compilation de mon programme principal. En renommant la sub, le problème disparaît. Il y a bien un souci !! Exemple:J'ai une sub traiter_verbe() et une autre sub traiter_verbe_francais() - Code:
-
langues.bas(2243) error 4: Duplicated definition Declare Sub TRAITER_VERBE() ^ langues.bas(2244) error 4: Duplicated definition Declare Sub TRAITER_VERBE() ^ langues.bas(2245) error 4: Duplicated definition Declare Sub TRAITER_VERBE() ^ langues.bas(2257) error 4: Duplicated definition Declare Sub ENREGISTRER_FORME(V_PARAM1 as string) ^ langues.bas(2258) error 4: Duplicated definition Declare Sub ENREGISTRER_FORME(V_PARAM1 as string) ^ langues.bas(2297) error 4: Duplicated definition Declare Sub DETERMINER_NEUTRE(V_PARAM1 as string) ^ langues.bas(2298) error 4: Duplicated definition Declare Sub DETERMINER_NEUTRE(V_PARAM1 as string) ^ langues.bas(2352) error 4: Duplicated definition Declare Sub LIRE_SENS() ^ langues.bas(2352) error 123: Too many errors, exiting Et, de plus, j'obtiens ces messages d'erreurs maintenant: langues.bas(3146) error 33: Expected 'END IF', found 'End' End Sub langues.bas(3147) error 58: Illegal inside functions, found 'Sub' Sub SELECTION_OBJET()
Que dois-je faire pour y remédier ? | |
|
Contenu sponsorisé
| Sujet: Re: Mes tests avec le compilateur. | |
| |
|