Instructions relatives au préprocesseur GDL
Utilisez les instructions suivantes lorsque vous écrivez des directives de préprocesseur GDL :
Pour éviter des conséquences inattendues, les rédacteurs de fichiers GDL doivent respecter les instructions suivantes lors de la définition des symboles et préfixes de préprocesseur.
Ne définissez jamais un symbole que vous n’avez pas explicitement défini dans le fichier et, avant la fin de votre fichier, supprimez toujours tout symbole que vous avez défini dans le fichier. En d’autres termes, laissez toujours les piles de symboles et de préfixes telles que vous les avez trouvées. Si cette ligne directrice est suivie, il n’y aura jamais de collisions d’espace de noms impliquant le préprocesseur.
L’interface de l’analyseur GDL permet au client d’injecter un fragment de texte GDL de taille arbitraire qui sera traité avant le fichier GDL racine. Cette opportunité permet aux clients de définir tous les symboles de préprocesseur nécessaires afin que l’analyseur traite les sections appropriées du fichier GDL. Ce fragment peut inclure d’autres modèles standard GDL ou définir des macros standard.
Note Lorsqu’un fichier est inclus dans la ligne, tous les symboles et préfixes de préprocesseur définis dans l’hôte restent définis pendant le prétraitement du fichier inclus. Lorsqu’un fichier est traité comme précompilé, un environnement d’analyse entièrement nouveau est créé. Ainsi, tous les symboles et préfixes sont retournés à leurs valeurs par défaut. Les fichiers qui seront traités en tant que précompilés ne doivent pas avoir de dépendances sur les symboles de préprocesseur définis par un fichier externe ou hôte.
Note Les directives de préprocesseur et les macros ne sont pas affectées par les constructions de commutateur/cas, car les directives sont évaluées séparément avant toute construction de commutateur/cas.
Les opérateurs logiques ne sont pas pris en charge dans les directives de préprocesseur GDL. Pour plus d’informations sur la résolution de cette situation, consultez Problèmes avec les opérateurs logiques dans le prétraitement GDL.