Partager via


Directives du préprocesseur GDL

Utilisez les instructions suivantes lorsque vous écrivez des directives de préprocesseur GDL :

Pour éviter les conséquences involontaires, les enregistreurs de fichiers GDL doivent observer les instructions suivantes lors de la définition des symboles et préfixes de préprocesseur.

Ne jamais supprimer la définition d’un symbole que vous n’avez pas explicitement défini dans le fichier, et avant la fin de votre fichier, supprimez toujours toute définition de symbole que vous avez définie dans le fichier. En d’autres termes, laissez toujours les piles de symboles et de préfixes comme vous les avez trouvées. Si cette directive est suivie, il n’y aura jamais de collisions d’espaces de noms impliquant le préprocesseur.

L’interface de l’analyseur GDL permet au client d’injecter un fragment arbitraire de texte GDL qui sera traité avant le fichier GDL racine. Cette opportunité permettra 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 en 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 comme précompilés ne doivent pas avoir de dépendances sur les symboles de préprocesseur définis par le fichier externe ou hôte.

Note Les directives et macros de préprocesseur ne sont pas affectées par les constructions switch/case, car les directives sont évaluées séparément avant les constructions switch/case.

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 liés aux opérateurs logiques dans le prétraitement GDL.