Section courante

A propos

Section administrative du site

 Langage  Installation  Elément  Tutoriel  Programmation  Bibliothèque  Cadre d'application  API  GUI  Projet  Composante  IDE  Outils  Annexe  Aide 
ABAP/4
Ada
Assembleur
Assembly & bytecode
ASP (Active Server Pages)
Basic
C
C++
C# (C Sharp)
Cobol
ColdFusion
Fortran
HTML
Java
JavaScript
LISP
Logo
LotusScript
Oberon
Pascal
Perl
PHP
PL/1
Prolog
Python
Rebol
REXX
Ruby
SAS
NoSQL
SQL
Swift
X++ (Axapta)
GNAT
SMALLAda
VHDL
Assembleur 370
Assembleur 1802
Assembleur 4004
Assembleur 6502
Assembleur 6800
Assembleur 68000
Assembleur 8080 et 8085
Assembleur 8089
Assembleur 80x86
Assembleur AGC4
Assembleur ARM
Assembleur DPS 8000
Assembleur i860
Assembleur Itanium
Assembleur MIPS
Assembleur PDP-11
Assembleur PowerPC
Assembleur RISC-V
Assembleur SPARC
Assembleur SuperH
Assembleur UNIVAC I
Assembleur VAX
Assembleur Z80
Assembleur Z8000
Assembleur z/Architecture
ASSEMBLER/MONITOR 64
Micol Assembler
GFA Assembler
A86
MASM (Macro Assembler)
TASM (Turbo Assembler)
CIL
Jasmin
LLVM
MSIL
Parrot
P-Code (PCode)
SWEET16
G-Pascal
ASP 1.0
ASP 2.0
ASP 3.0
ASP.NET
ASP.NET Core
ABasiC (Amiga)
Adam SmartBASIC
Altair BASIC
AmigaBASIC (Amiga)
AMOS Basic (Amiga)
Atari Basic (Atari 400, 600 XL, 800, 800XL)
Basic Apple II (Integer BASIC/APPLESOFT)
Basic Commodore 64 (CBM-BASIC)
Basic Commodore 128 (BASIC 7.0)
Basic Commodore VIC-20 (CBM-BASIC 2.0)
Basic Coco 1 (Color Basic)
Basic Coco 2 (Extended Color Basic)
Basic Coco 3 (Extended Color Basic 2.0)
BASICA (PC DOS)
Basic Pro
BBC BASIC
Blitz BASIC (Amiga)
DarkBASIC
Dartmouth BASIC
GFA-Basic (Atari ST/Amiga)
GWBASIC (MS-DOS)
Liberty BASIC
Locomotive BASIC (Amstrad CPC)
MSX-Basic
Omikron Basic (Atari ST)
Oric Extended Basic
Power Basic
Quick Basic/QBasic (MS-DOS)
Sinclair BASIC (ZX80, ZX81, ZX Spectrum)
ST BASIC (Atari ST)
Turbo Basic
Vintage BASIC
VBScript
Visual Basic (VB)
Visual Basic .NET (VB .NET)
Visual Basic pour DOS
Yabasic
BeckerBASIC
SIMONS' BASIC
Basic09 d'OS-9
Disk Extended Color Basic
Basic09 d'OS-9
Disk Extended Color Basic
Access
Excel
Visual Basic pour Windows
Visual Basic .NET pour Windows
C Shell Unix (csh)
C pour Amiga
C pour Atari ST
C pour DOS
C pour Falcon030
C pour GEMDOS (Atari ST)
C pour Linux
C pour PowerTV OS
C pour OS/2
C pour Unix
C pour Windows
Aztec C
CoCo-C
GNU C
HiSoft C
IBM C/2
Introl-C
Lattice C
Microsoft C
MinGW C
MSX-C
Open Watcom C
OS-9 C Compiler
Pure C
Quick C
Turbo C
HiSoft C for Atari ST
HiSoft C for CP/M (Amstrad CPC)
C++ pour OS/2
C++ pour Windows
Borland C++
C++Builder
IBM VisualAge C++
Intel C++
MinGW C++
Open Watcom C++
Symantec C++
Turbo C++
Visual C++
Visual C++ .NET
Watcom C++
Zortech C++
C# (C Sharp) pour Windows
Apple III Cobol
Microsoft Cobol
BlueDragon
Lucee
OpenBD
Railo
Smith Project
Microsoft Fortran
WATFOR-77
CSS
FBML
Open Graph
SVG
XML
XSL/XSLT
LESS
SASS
GCJ (GNU)
JSP
Jython
Visual J++
Node.js
TypeScript
AutoLISP
ACSLogo
LotusScript pour Windows
Amiga Oberon
Oberon .NET
Apple Pascal
Delphi/Kylix/Lazarus
Free Pascal
GNU Pascal
HighSpeed Pascal
IBM Personal Computer Pascal
Lisa Pascal
Maxon Pascal
MPW Pascal
OS-9 Pascal
OSS Personal Pascal
Pascal-86
Pascal du Cray Research
Pascal/VS
Pascal-XT
PURE Pascal
QuickPascal
RemObjets Chrome
Sun Pascal
THINK Pascal
Tiny Pascal (TRS-80)
Turbo Pascal
UCSD Pascal
VAX Pascal
Virtual Pascal
Turbo Pascal for CP/M-80
Turbo Pascal for DOS
Turbo Pascal for Macintosh
Turbo Pascal for Windows
CodeIgniter (Cadre d'application)
Drupal (Projet)
Joomla! (Projet)
Phalanger (PHP .NET)
phpBB (Projet)
Smarty (balise)
Twig (balise)
Symfony (Cadre d'application)
WordPress (Projet)
Zend (Cadre d'application)
PL360
PL/M-80
PL/M-86
Turbo Prolog
CPython
IronPython
Jython
PyPy
AREXX
Regina REXX
JMP
Btrieve
Cassandra
Clipper
CouchDB
dBASE
Hbase
Hypertable
MongoDB
Redis
Access
BigQuery
DB2
H2
Interbase
MySQL
Oracle
PostgreSQL
SAP HANA
SQL Server
Sybase
U-SQL
Installation de Free Pascal
Installation de CodeTyphon Studio
Installation de Lazarus
Installation de Pascal XE
Introduction
Les remarques
Les opérateurs
Les instructions conditionnelles
Les instructions de boucles
Les instructions d'exceptions
Type de données élémentaires
Référence des unités
Référence de mots réservés (mots clefs)
Référence de procédures et fonctions
Référence des directives de compilation
Référence de classes
BASEUNIX
CLASSES
CMEM
CRT
CTHREADS
CWSTRING
GRAPH
MATH
SYSTEM
Référence de procédures et fonctions avec prototype
Les jetons
Les constantes
Directives du compilateur
Utiliser des conditions, des messages et des macros
Utilisation du langage de programmation assembleur
Code généré
Prise en charge d'Intel MMX
Problèmes de code
Problèmes de liaison
Problèmes de mémoire
Chaînes de caractères de ressources
Programmation de processus léger
Optimisations
Programmation de bibliothèques partagées
Utiliser les ressources Windows
Bonjour
Affichage
Astronomie
Biochimie
Électricité
Fichiers
Finance
Géographie
Géométrie
Histoire
Jeux & stratégies
Mathématique
Médicale
Météorologie
Océanographie
Sport
Temps
Tri
Trigonométrie
Validation
«DRAW» du BASIC
Phase lunaire
Calcul du calcium corrigé
Calcul le taux d'alcoolémie
Comparaison de séquence de polypeptides
Tarif d'une piscine pour 1 mois
Texte séquentiel
Liste des fichiers
IPaymt/Interet
NPer
PPaymt/Principal
Distance en Km entre deux longitudes et latitudes
Aire d'un cercle
Aire d'une surface de prisme rectangulaire
Aire d'un triangle
Distance entre deux points
Treillis
Chiffre romain
Pac-Man
Tetris
Tours d'Hanois
Ackermann
Exp
Factoriel
Fibonacci
Log
Nombre premier
Odd
Random
Sqrt
Triangle Pascal
Hauteur utérine
Unité de mesure
Fréquence des vagues
Hockey
Année bissextile
Calendrier
Date de la Pâque
Heure courante
Horloge à aiguille
FirstDayOfMonth
Tri à bulle (Bubble Sort)
Tri Shell Sort
ArcCos
ArcSin
Atn/ATan/ArcTan
Cos
Sin
Courriel
Extension de nom de domaine
Ararat Synapse
CryptoLib4Pascal
FBLib (Firebird Pascal Library)
FCL (Free Component Library)
GraphiX
HashLib4Pascal
INDY (Internet Direct)
LCL (Lazarus Component Library)
QuickLib
QuickLogger
WinGraph
ZeosLib
Daraja (cadre d'application pour Web)
Fano Framework
Free Spider
Horse
Synopse mORMot
tiOPF
CAI NEURAL API
tensorflowforpascal
fpGUI
MOS
Corail
Double Commander
LDAP Admin for Linux
MSDOS-0
Transmission Remote GUI
UNIX-0
Python for Delphi (P4D)
CodeTyphon Studio
Free Pascal IDE
Lazarus
Pascal XE
GNU Debugger (GDB)
Delp
FPCMake
H2Pas
PPDep
PPUDump
PPUMove
PtoP
Références des codes d'erreur
Anatomie d'un fichier unité
Structure de l'arborescence des sources du compilateur et RTL
Limites du compilateur
Modes du compilateur
Utiliser fpcmake
Compilation du compilateur
Compilateur définit lors de la compilation
Préface
Notes légal
Dictionnaire
Recherche

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

Légende

    Cette couleur permet d'indiquer que la directive n'est plus utilisé ou est abandonné.

PARTAGER CETTE PAGE SUR
Dernière mise à jour : Samedi, le 16 août 2014