Manuel de suivi dynamique Solaris

Utilisation du préprocesseur C

Le langage de programmation C utilisé pour définir des interfaces de système Solaris comprend un préprocesseur qui exécute un ensemble d'étapes initiales dans la compilation de programme C. Le préprocesseur C est fréquemment utilisé pour définir des substitutions de macro dans lesquelles un jeton de programme C est remplacé par un autre jeu de jetons prédéfini ou pour inclure des copies de fichiers d'en-tête système. Vous pouvez utiliser le préprocesseur C avec vos programmes D en spécifiant l'option dtrace -C. Cette option amène dtrace à exécuter tout d'abord le préprocesseur cpp(1) sur votre fichier source de programme, puis à transmettre les résultats au compilateur D. Le préprocesseur C est décrit plus en détails dans The C Programming Language.

Le compilateur D charge automatiquement l'ensemble de descriptions du type C associé à la mise en œuvre du système d'exploitation, mais vous pouvez utiliser le préprocesseur pour inclure d'autres définitions de types comme ceux utilisés dans vos programmes C. Vous pouvez également utiliser le préprocesseur pour exécuter d'autres tâches comme la création de macros devenant des éléments de code D et d'autres éléments de programme. Si vous utilisez le préprocesseur avec votre programme D, vous ne pouvez inclure que des fichiers contenant des déclarations D valides. Les fichiers d'en-tête C classiques n'incluent que des déclarations externes de types et de symboles, qui seront interprétées correctement par le compilateur D. Le compilateur D ne peut pas analyser les fichiers d'en-tête C comprenant d'autres éléments de programme comme du code source de fonction C et renverra un message d'erreur.