Option OPT (Delphi)

De RAD Studio
Aller à : navigation, rechercher

Remonter à Liste des directives de compilation Delphi - Index


Type

Commutateur

Syntaxe

{$PUSHOPT} ou {$POPOPT}

Portée

Locale


Remarques

Ces nouvelles directives du compilateur Delphi enregistrent et restaurent l'ensemble actuel de configurations d'avertissement et d'options.

{$PUSHOPT}

{$PUSHOPT} vous permet de sauvegarder l'ensemble ou un sous-ensemble d'options de compilation avant d'inclure tout fichier susceptible de modifier les paramètres du compilateur ou les configurations d'avertissement.

{$POPOPT}

{$POPOPT} restaure les options et les avertissements du compilateur en supprimant les plus récents de la pile.

Avertissements de directives non équilibrées

S'il y a un problème de concordance dans l'utilisation des directives, l'avertissement suivant est émis :

W1078 {$POPOPT} sans {$PUSHOPT} correspondant dans  %s

Si pour un $POPOPT, il y a plus de $POPOPT que de $PUSHPOPT dans un fichier, cet avertissement s'affiche :

W1079 L'instruction {$PUSHOPT} précédente à la ligne %ld n’a pas été restaurée

Le même avertissement sera émis à la fin du fichier source (et du fichier d'inclusion) si le nombre de $PUSHOPT dépasse le nombre de $POPOPT dans un fichier.

Liste des options éligibles

Toutes les options et tous les paramètres ne sont pas éligibles à l'utilisation de ces nouvelles directives. Voici la liste des options concernées :

Directives Formes courtes
{$ALIGN ON/OFF/1/2/4/8/16} {$A+} {$A-} {$A1} {$A2} {$A4} {$A8} {$A16}
{$BOOLEVAL ON/OFF} {$B+} {$B-}
{$ASSERTIONS ON/OFF} {$C+} {$C-}
{$ASSERTIONS ON/OFF} {$C+} {$C-}
{$DEBUGINFO ON/OFF/0/1/2} {$D0} {$D1} {$D2}
{$OLDOBJWARN} {$E+} {$E-}
{$IMPOTEDDATA ON/OFF} {$G+} {$G-}
{$LONGSTRINGS ON/OFF} {$H+} {$H-}
{$IOCHECKS ON/OFF} {$I+} {$I-}
{$WRITEABLECONST ON/OFF} {$J+} {$J-}
{$LOCALSYMBOLS ON/OFF} {$L+} {$L-}
{$TYPEINFO ON/OFF} {$M+} {$M-}
{$OPTIMIZATION ON/OFF} {$O+} {$O-}
{$OPENSTRINGS ON/OFF} {$P+} {$P-}
{$OVERFLOWCHECKS ON/OFF} {$Q+} {$Q-}
{$RANGECHECKS ON/OFF} {$R+} {$R-}
{$STACKCHECKS ON/OFF} {$S+} {$S-}
{$TYPEDADDRESS ON/OFF} {$T+} {$T-}
{$SAFEDIVIDE ON/OFF} {$U+} {$U-}
{$VARSTRINGCHECKS ON/OFF} {$V+} {$V-}
{$STACKFRAMES ON/OFF} {$W+} {$W-}
{$EXTENDEDSYNTAX ON/OFF} {$X+} {$X-}
{$REFERENCEINFO ON/OFF} {$Y+} {$Y-}
{$DEFINITIONINFO ON/OFF} {$YD}
{$MINENUMSIZE 1/2/4} {$Z+} {$Z-} {$Z1} {$Z2} {$Z4}
{$AUTOBOX ON/OFF}
{$FINITEFLOATT ON/OFF}
{$HINTS ON/OFF}
{$IMPLICITBUILD ON/OFF}
{$REALCOMPATIBILITY ON/OFF}
{$UNSAFECODE ON/OFF}
{$METHODINFO ON/OFF}
{$NATIVE_CPP_INTERFACES ON/OFF}
{$SCOPEDENUMS ON/OFF}
{$POINTERMATH ON/OFF}
{$COMPATIBLELITERALS ON/OFF}
{$HIGHCHARUNICODE ON/OFF}
{$OLDTYPELAYOUT ON/OFF}
{$WEAKLINKRTTI ON/OFF}
{$STRONGLINKTYPES ON/OFF}
{$EXCESSPRECISION ON/OFF}
{$EXTENDEDCOMPATIBILITY ON/OFF}
{$ZEROBASEDSTRINGS ON/OFF}
{$LEGACYIFEND ON/OFF}
{$WARN (<ident>|ALL) ON/OFF/DEFAULT/ERROR}
{$CODEALIGN 0/1/2/4/8/16}
{$MAXPAGESIZE <intconst>}
{$DESIGNONLY [ON/OFF]}
{$RUNONLY [ON/OFF]}
{$VARPROPSETTER [ON/OFF]}
{$DUPLICATEENABLE [ON/OFF]}
{$RTTI (EXPLICIT|INHERIT) {(METHOD|FIELD|PROPERTY)(<set const expr: TRttiVisibility>)}
{$INLINE ON/OFF/AUTO}
{$WARNINGS ON/OFF/ERROR}
{$TEXTBLOCK ( NATIVE/CR/LF/CRLF ) [ LANGUAGE ]}