Voici la liste des différentes directives de compilation reconnu par le préprocesseur du langage de programmation Free Pascal :
Directive | Description | Portée |
---|---|---|
$A | Cette directive permet d'indiquer la taille de l'alignement des champs. | Local |
$ALIGN | Cette directive permet d'indiquer la taille de l'alignement des champs. | Local |
$APPID | Cette directive permet, afin d'être compatible au système d'exploitation Palm, de fixer l'identificateur de l'application. | Global |
$APPNAME | Cette directive permet, afin d'être compatible au système d'exploitation Palm, de fixer le nom de l'application. | Global |
$APPTYPE | Cette directive permet d'indiquer le type d'application : Console, Fenêtre,... | Global |
$ASMMODE | Cette directive permet de fixer le format de la syntaxe de l'assembleur. | Local |
$ASSERTIONS | Cette directive permet d'indiquer s'il faut activer les assertions dans le fichiers de code source. | Local |
$B | Cette directive permet d'indiquer le mode d'évaluation d'un opérateur booléen. | Local |
$BITPACKING | Cette directive permet d'indiquer s'il faut utiliser un paquet de bits quand on rencontre un mot clef compacté pour un type structuré. | Local |
$BOOLEVAL | Cette directive permet d'indiquer le mode d'évaluation d'un opérateur booléen. | Local |
$C | Cette directive permet d'indiquer s'il faut activer les assertions dans le fichiers de code source. | Local |
$CALLING | Cette directive permet d'indiquer qu'il faut appeler les procédures et fonctions selon la convention spécifié. | Local, Global |
$CHECKPOINTER | Cette directive permet de vérifier les pointeurs de tas. | Local |
$CODEALIGN | Cette directive permet de fixer l'alignement du code. | Local |
$CODEPAGE | Cette directive permet de fixer la page de code qu'utilise le code source. | Global |
$COPERATORS | Cette directive permet de fixer si les opérateurs du langage de programmation C sont supportés sur les variables : +=, -=, *= et /=. | Local |
$COPYRIGHT | Cette directive permet de fixer les informations de droits d'auteurs. | Global |
$D | Cette directive permet d'indiquer s'il faut activer les informations de déboguage. | Global |
$DEBUGINFO | Cette directive permet d'indiquer s'il faut activer les informations de déboguage. | Global |
$DEFINE | Cette directive permet de définir un symbole conditionnel. | Local |
$DEFINEC | Cette directive permet de définir un symbole conditionnel. | Local |
$DESCRIPTION | Cette directive permet de fixer la description contenu dans l'entête de données d'un fichier «.EXE», «.DLL» ou «.DPL». | Global |
$E | Cette directive permet d'activer l'émulation du coprocesseur mathématique. | Global |
$ELSE | Cette directive permet d'indiquer la situation contraire au $IFDEF précédemment spécifié. | Local |
$ELSEC | Cette directive permet, afin d'être compatible au compilateur Pascal du Mac OS, d'indiquer la situation contraire au $IFDEF ou $IFC précédemment spécifié. | Local |
$ELSEIF | Cette directive permet d'indiquer qu'il faut compiler le code source entre la condition spécifié et la directive $ELSE ou $ENDIF si la condition est vrai et elle doit se situé après une directive $IF. | Local |
$ENDC | Cette directive permet, afin d'être compatible au compilateur Pascal du Mac OS, d'indiquer la fin du situation de test $IFC ou $ELSEC. | Local |
$ENDIF | Cette directive permet d'indiquer la fin du situation de test $IFDEF. | Local |
$ERROR | Cette directive permet de faire générer une erreur au compilateur avec le message spécifié par cette directive. | Local |
$ERRORC | Cette directive permet de faire générer une erreur au compilateur avec le message spécifié par cette directive. | Local |
$EXTERNALSYM | Cette directive permet, par souci de compatibilité avec Delphi, d'empêcher que les symboles spécifié apparaisse dans l'entête C++. | Local |
$EXTENDEDSYNTAX | Cette directive permet d'activer la syntaxe étendue. | Global |
$F | Cette directive permet, afin d'être compatible au Turbo Pascal, d'indiquer si les appels de procédures et fonctions sont court (Near) ou long (Far). | Local |
$FATAL | Cette directive permet de faire générer une erreur fatal au compilateur avec le message spécifié par cette directive. | Local |
$FPUTYPE | Cette directive permet de sélectionner le type de coprocesseur mathématique utilisé pour les calculs de nombres réels. | Local |
$G | Cette directive permet, afin d'être compatible au Turbo Pascal, d'activer le support des instructions 80286. | Global |
$GOTO | Cette directive permet d'activer le support des mots réservés «Goto» et «Label». | Local |
$H | Cette directive permet de modifier le type de données de «string». | Local |
$HINTS | Cette directive permet d'activer le contrôle de génération de messages d'information par le compilateur. | Local |
$HPPEMIT | Cette directive permet, afin d'être compatible à Delphi, d'ajouter un symbole spécifié dans le fichier d'entête C++. | Local |
$I | Cette directive permet d'inclure un fichier de code source à l'emplacement de cette directive ou d'activer ou désactiver le code de vérification des entrées/sorties du système d'exploitation. | Local |
$I386 | Cette directive permet de fixer le format de la syntaxe de l'assembleur pour les microprocesseur Intel 80x86 seulement. Cette directive est obsolète. | Local |
$IF | Cette directive permet d'indiquer qu'il faut compiler le code source entre la condition booléenne spécifié et la directive $ELSE ou $ENDIF si la condition est vrai. | Local |
$IFC | Cette directive permet, afin d'être compatible au Mac OS Pascal, d'indiquer qu'il faut compiler le code source entre la condition booléenne spécifié et la directive $ELSE ou $ENDIF si la condition est vrai. | Local |
$IFDEF | Cette directive permet d'indiquer qu'il faut compiler le code source entre la condition spécifié et la directive $ELSE ou $ENDIF si la condition est vrai. | Local |
$IFNDEF | Cette directive permet d'indiquer qu'il faut compiler le code source entre la condition spécifié et la directive $ELSE ou $ENDIF si la condition est fausse. | Local |
$IFOPT | Cette directive permet d'indiquer qu'il faut compiler le code source entre la directive de compilation spécifié et le directive $ELSE ou $ENDIF. | Local |
$IMPLICITEXCEPTIONS | Cette directive permet de compiler implicitement les cadres «TRY ... FINALLY» autour de chaque procédure devant initialiser ou finaliser des variables et finalise les variables dans le bloc final. | Local |
$INCLUDE | Cette directive permet d'inclure un fichier de code source à l'emplacement de cette directive ou d'inclure une constante de chaîne de caractères dans le code source. | Local |
$INCLUDEPATH | Cette directive permet d'indiquer les chemins de répertoire où sont situés les code sources d'inclusion. | Global |
$INFO | Cette directive permet de faire afficher un message d'information par le compilateur lorsque cette directive est compilé. | Local |
$INLINE | Cette directive permet d'autoriser l'utilisation du mot réservé INLINE dans le code source. | Local |
$INTERFACES | Cette directive permet d'indiquer qu'elle type d'interface parent devra utiliser le compilateur. | Local, Global |
$IOCHECKS | Cette directive permet d'activer ou désactiver le code de vérification des entrées/sorties du système d'exploitation. | Local |
$J | Cette directive permet d'autoriser la modification de constante avec un type de données. | Local |
$L | Cette directive permet d'indiquer l'inclusion d'un fichier «.OBJ» de liaison ou active la génération d'informations de symboles locaux pour le déboguage. | Local, Global |
$LIBRARYPATH | Cette directive permet d'indiquer les chemins de répertoire où sont situés les bibliothèques statiques ou dynamiques. | Global |
$LINK | Cette directive permet d'indiquer l'inclusion d'un fichier «.OBJ» de liaison. | Local |
$LINKFRAMEWORK | Cette directive permet d'effectuer une liaison avec un cadre d'application spécifié. | Local |
$LINKLIB | Cette directive permet d'effectuer la liaison avec une bibliothèque spécifié. | Local |
$LOCALSYMBOLS | Cette directive permet d'activer la génération d'informations de symboles locaux pour le déboguage. | Global |
$LONGSTRINGS | Cette directive permet de modifier le type de données de «string». | Local |
$M | Cette directive permet de fixer la taille de la pile et du tas de l'application ou d'activer les informations d'exécution (RTTI). | Local, Global |
$MACRO | Cette directive permet d'activer le support des macros au style du langage de programmation C. | Local |
$MAXFPUREGISTERS | Cette directive permet d'indiquer le nombre maximum de registres de coprocesseur mathématiques pour les variables peuvent être utilisés. | Local |
$MESSAGE | Cette directive permet de faire afficher un message d'information par le compilateur lorsque cette directive est compilé. Alias de «$INFO». | Local |
$MINENUMSIZE | Cette directive permet de fixer la taille d'entreposage des types de données d'énumérations. | Local |
$MINFPCONSTPREC | Cette directive permet de fixer le nombre minimum de décimal de précision d'un nombre réel d'une constante. | Local |
$MMX | Cette directive permet d'activer le support des instructions MMX des microprocesseur de la famille Intel. | Local |
$MODE | Cette directive permet de fixer le mode de compatibilité de compilateur. | Global |
$MODESWITCH | Cette directive permet de fixer l'état d'une directive de compilation. | Global |
$N | Cette directive permet, afin d'être compatible au Turbo Pascal, d'activer l'utilisation du coprocesseur mathématique. | Global |
$NODEFINE | Cette directive permet, afin d'être compatible à Delphi, d'interdire l'inclusion du symbole spécifié dans l'entête de fichier de langage de programmation C généré. | Local |
$NOTE | Cette directive permet de faire afficher un note de message d'information par le compilateur lorsque cette directive est compilé quand la directive «$NOTES» est activé. | Local |
$NOTES | Cette directive permet d'autoriser l'affichage de note de message d'information par le compilateur. | Local |
$O | Cette directive permet d'activer l'optimisation du code. | Global |
$OBJECTCHECKS | Cette directive permet d'activer le code de test de pointeur SELF inséré dans les méthodes de classes. | Local |
$OBJECTPATH | Cette directive permet d'indiquer les chemins de répertoire où sont situés les objets. | Global |
$OPENSTRINGS | Cette directive permet d'activer les chaînes de caractères ouvertes. | Global |
$OPTIMIZATION | Cette directive permet d'activer l'optimisation du code. | Local |
$OUTPUT_FORMAT | Cette directive permet de fixer le format du fichier de sortie. | Local |
$OV | Cette directive permet, en mode MACPAS, d'activer le test de dépassement de capacité. | Local |
$OVERFLOWCHECKS | Cette directive permet d'activer le test de dépassement de capacité. | Local |
$P | Cette directive permet d'activer les chaînes de caractères ouvertes. | Local, Global |
$PACKENUM | Cette directive permet de fixer la taille d'entreposage des types de données d'énumérations. | Local |
$PACKRECORDS | Cette directive permet d'indiquer la taille de l'alignement des champs. | Local |
$PACKSET | Cette directive permet de fixer la taille des ensembles en octets. | Local |
$PASCALMAINNAME | Cette directive permet de fixer le nom d'un symbole assembleur d'un point d'entrée de programme ou d'une bibliothèque. | Global |
$PIC | Cette directive permet d'activer les codes PIC (Position Indepedent Code). | Global |
$POP | Cette directive permet de restituer tous les valeurs des directives de compilation local avec les dernières valeurs entreposé dans la pile d'ajustement. | Local |
$PROFILE | Cette directive permet d'activer la génération de code de profile. | Global |
$PUSH | Cette directive permet de sauvegarder tous les valeurs des directives de compilation local dans la pile d'ajustement. | Local |
$Q | Cette directive permet d'activer le test de dépassement de capacité. | Local |
$R | Cette directive permet d'inclure un fichier de ressource ou d'activer le test de dépassement d'intervalle. | Local |
$RANGECHECKS | Cette directive permet d'activer le test de dépassement d'intervalle. | Local |
$REFERENCEINFO | Cette directive permet d'activer la génération d'informations de références pour les symboles. | Global |
$RESOURCE | Cette directive permet d'inclure un fichier de ressource. | Local |
$S | Cette directive permet d'activer la vérification du débordement de pile. | Global |
$SATURATION | Cette directive permet d'activer la saturation avec du code généré pour support le MMX. | Local |
$SCREENNAME | Cette directive permet d'indiquer le nom de l'écran pour une destination de réseau Novell. | Global |
$SETC | Cette directive permet, en mode Mac, de définir des symboles de compilation. | Local |
$SMARTLINK | Cette directive permet d'activer les SmartLink. | Global |
$STACKFRAMES | Cette directive permet de forcer la génération de cadre de pile pour les fonctions et procédures même lorsque ce n'est pas nécessaire. | Local |
$STATIC | Cette directive permet d'autoriser l'utilisation du mot réservé STATIC. | Local |
$STOP | Cette directive permet de faire générer une erreur fatal au compilateur avec le message spécifié par cette directive et d'arrêter immédiatement la compilation. | Local |
$T | Cette directive permet d'exiger que le type de données du pointeur soit identique au type de données de la variable. | Local |
$THREADNAME | Cette directive permet de fixer le nom de processus léger lors d'une compilation en Netware. | Global |
$TYPEDADDRESS | Cette directive permet d'exiger que le type de données du pointeur soit identique au type de données de la variable. | Local |
$TYPEINFO | Cette directive permet d'activer les informations d'exécution (RTTI). | Local |
$UNDEF | Cette directive permet d'enlever la définition d'un symbole conditionnel. | Local |
$UNDEFC | Cette directive permet d'enlever la définition d'un symbole conditionnel. | Local |
$UNITPATH | Cette directive permet d'indiquer les chemins de répertoire où sont situés les unités. | Global |
$V | Cette directive permet d'exiger un contrôle stricte des types de données de chaînes de caractères sans mélange de type de données possible. | Local |
$VARSTRINGCHECKS | Cette directive permet d'exiger un contrôle stricte des types de données de chaînes de caractères sans mélange de type de données possible. | Local |
$VERSION | Cette directive permet d'indiquer le numéro de version d'une bibliothèque si compiler en DLL pour Windows. | Global |
$W | Cette directive permet de forcer la génération de cadre de pile pour les fonctions et procédures même lorsque ce n'est pas nécessaire. | Local |
$WAIT | Cette directive permet d'indiquer au compilateur d'afficher un message «Press return to continue» et d'attendre que la touche ENTER soit enfoncé avant de poursuivre la compilation. | Local |
$WARNING | Cette directive permet de faire afficher un message d'attention par le compilateur lorsque cette directive est compilé. | Local |
$WARNINGS | Cette directive permet d'activer les messages d'attentions sortie par le compilateur lors de situations douteuses. | Local |
$WEAKPACKAGEUNIT | Cette directive permet d'activer l'empaquetage faible de paquet. | Global |
$WRITEABLECONST | Cette directive permet d'autoriser la modification de constante avec un type de données. | Local |
$X | Cette directive permet d'activer la syntaxe étendue. | Global |
$Y | Cette directive permet d'activer la génération d'informations de références pour les symboles. | Global |
$Z | Cette directive permet de fixer la taille d'entreposage des types de données d'énumérations. | Local |
Remarques
- Il existe un équivalent des directives de compilations dans les langages de programmation C et C++ en général, qu'il indique dans les commentaires avec un caractère «#» plutôt que «$».
- Les pragmas existent également dans le langage de programmation Perl mais s'applique plutôt au système d'exploitation ou environnement.
Légende
Cette couleur permet d'indiquer que la directive n'est plus utilisé ou est abandonné.
Dernière mise à jour : Samedi, le 16 août 2014