Difference between revisions of "local compiler directives"

From Free Pascal wiki
Jump to navigationJump to search
(First scaffold (German text still to be translated).)
(Local compiler directives translated.)
Line 5: Line 5:
 
The following text is still to be translated to English:
 
The following text is still to be translated to English:
  
==Lokale Compiler Direktiven==
+
==Local compiler direvtives==
*[[sAlign/de|$A und $ALIGN]] bestimmt die Datenausrichtung von Records
+
*[[sAlign/de|$A and $ALIGN]] determines the of alignment of data in records.
*[[sA/de|$A1, $A2,$A4 und $A8]] bestimmt die Datenausrichtung von Records und hat die selbe Wirkung wie die Direktive $PACKRECORDS
+
*[[sA/de|$A1, $A2,$A4 and $A8]] determines the of alignment of data in records. Has the same effect as the directive $PACKRECORDS.
*[[sBooleval/de|$B oder $BOOLEVAL]] im Standardmodus wird dem eigenen Programm die Kurzschlussauswertung von Wahrheitswerten ermöglicht
+
*[[sBooleval/de|$B or $BOOLEVAL]] enables short-cut evaluation of boolean values.
*[[sAssertions/de|$C oder $ASSERTIONS]] dient der Fehlersuche
+
*[[sAssertions/de|$C or $ASSERTIONS]] supports debugging.
*[[sBitpacking/de|$BITPACKING]] ermöglicht das Bitweise packen von Records
+
*[[sBitpacking/de|$BITPACKING]] enables bit-wise packing of records.
*[[sCalling/de|$CALLING]] legt die Aufrufkonvention für Unterprogramme fest
+
*[[sCalling/de|$CALLING]] determines calling-convention of routines.
*[[sCheckpointer/de|$CHECKPOINTER]] prüft, ob ein Pointer einen gültigen Wert hat
+
*[[sCheckpointer/de|$CHECKPOINTER]] checks validity of pointers.
*[[sCodealign/de|$CODEALIGN]] bestimmt die Ausrichtung des Codes im Speicher
+
*[[sCodealign/de|$CODEALIGN]] determines the code-aligning in memory.
*[[sCoperators/de|$COPERATORS]] erlaubt die Verwendung von Operatoren ähnlich der wie in der Programmiersprache C
+
*[[sCoperators/de|$COPERATORS]] enables usage of operatores similar to conventions in the C language.
*[[sDefine/de|$DEFINE oder $DEFINEC]] erlaubt die Definition eigener Symbole
+
*[[sDefine/de|$DEFINE or $DEFINEC]] enables definition of own symbols.
*[[sExtendedsym/de|$EXTENDEDSYM]] wird vom Compiler ignoriert
+
*[[sExtendedsym/de|$EXTENDEDSYM]] ignored by compiler.
*[[sFar/de|$F]] wird vom Compiler ignoriert
+
*[[sFar/de|$F]] ignored by compiler.
*[[sFputype/de|$FPUTYPE]] compiliert entsprechen dem angegebenen Coprozessortyp den entsprechenden Code
+
*[[sFputype/de|$FPUTYPE]] compiles according to FPU type
*[[sGoto/de|$GOTO]] erlaubt dem eigenen Programm die Verwendung von Goto und Label
+
*[[sGoto/de|$GOTO]] enables Goto and Label
*[[sH/de|$H oder $LONGSTRINGS]] erlaubt es den Stringtyp für das reservierte Wort String festzulegen
+
*[[sH/de|$H or $LONGSTRINGS]] determines string type for reserved word [[string]].
*[[sHppemit/de|$HPPEMIT]] wird vom Compiler ignoriert
+
*[[sHppemit/de|$HPPEMIT]] ignored by compiler.
*[[sImplicitexeptions/de|$IMPLICITEXCEPTIONS]] dient der Vermeidung von Speicherlöchern
+
*[[sImplicitexeptions/de|$IMPLICITEXCEPTIONS]] helps to avoid memory leaks.
*[[sInline/de|$INLINE]] kopiert Prozeduren an die Stelle ihres Aufrufs
+
*[[sInline/de|$INLINE]] copies procedures to the place, where they have been called from.
*[[sInterfaces/de|$INTERFACES]] legt fest, welcher Schnittstellentyp bei der Deklaration der Schnittstellen verwendet werden soll
+
*[[sInterfaces/de|$INTERFACES]] determines interface type.
*[[sIochecks/de|$I oder $IOCHECKS]] steuert, ob Ein- Aussgabeschnittstellen kontolliert werden sollen
+
*[[sIochecks/de|$I or $IOCHECKS]] enables checking of input/output.
*[[sIncludefile/de|$I oder $INCLUDE]] fügt eine Datei in die Compilierung ein
+
*[[sIncludefile/de|$I or $INCLUDE]] includes file in compilation.
*[[sIncludecompilerinfo/de|$I oder $INCLUDE]] fügt bestimmte Compilerinformationen in das Programm ein
+
*[[sIncludecompilerinfo/de|$I or $INCLUDE]] included certein compiler information.
*[[sWritableconst/de|$J oder $WRITEABLECONST]] erlaubt während der Programmlaufzeit eine Wertzuweisung an typisierte Konstanten
+
*[[sWritableconst/de|$J or $WRITEABLECONST]] enables run-time assigning of values to typed constants.
*[[sLink/de|$L oder $LINK]] fügt beim Linken (Binden) des Programms die angegebene Objektdatei ein
+
*[[sLink/de|$L or $LINK]] inserts object file during linking.
*[[sLinklib/de|$LINKLIB]] fügt beim Linken (Binden) des Programms die angegebene Bibliothek (DLL) ein
+
*[[sLinklib/de|$LINKLIB]] inserts library during linking.
*[[sTypeinfo/de|$M oder $TYPEINFO]] erstellt Run-Time Type Informationen
+
*[[sTypeinfo/de|$M or $TYPEINFO]] creates RTTI
*[[sMacro/de|$MACRO]] erlaubt die Verwendung von Makros
+
*[[sMacro/de|$MACRO]] enables usage of macros.
*[[sMinenumsize/de|$MINENUMSIZE]] dient der Kompatibilität zu Delphi, siehe [[sPackenum/de|$PACKENUM oder $Z]]
+
*[[sMinenumsize/de|$MINENUMSIZE]] for Delphi-compatibility, see [[sPackenum/de|$PACKENUM or $Z]]
*[[sMinfpconstprec/de|$MINFPCONSTPREC]] legt die minimale Genauigkeit von Fliesskommakonstanten fest
+
*[[sMinfpconstprec/de|$MINFPCONSTPREC]] sets minimum accuracy of floating point operations.
*[[sNodefine/de|$NODEFINE]] wird vom Compiler ignoriert
+
*[[sNodefine/de|$NODEFINE]] ignored by compiler.
*[[sObjectchecks/de|$OBJECTCHECKS]] kontrolliert die Verwendung des Self Pointers
+
*[[sObjectchecks/de|$OBJECTCHECKS]] checks usage of pointer to self.
*[[sOptimization/de|$OPTIMIZATION]] erlaubt bestimmte Optimierungen
+
*[[sOptimization/de|$OPTIMIZATION]] switches on certain optimizations.
*[[sOutput_format/de|$OUTPUT_FORMAT]] legt das Ausgabeformat der vom Compiler erstellten Objektdatei fest
+
*[[sOutput_format/de|$OUTPUT_FORMAT]] determines output format of object file.
*[[sPackenum/de|$PACKENUM oder $Z]] erlaubt dem Compiler Enumerationen (Aufzählungen) zu packen
+
*[[sPackenum/de|$PACKENUM or $Z]] enables packing of compiler enumerations.
*[[sPackrecords/de|$PACKRECORDS]] bestimmt, wie Records im Arbeitsspeicher ausgerichtet werden
+
*[[sPackrecords/de|$PACKRECORDS]] determines alignment of records in memory.
*[[sPackset/de|$PACKSET]] legt fest, wie ein Set gepackt wird
+
*[[sPackset/de|$PACKSET]] determines packing of sets.
*[[sPop/de|$POP]] stellt die letzten Compiler Einstellungen wieder her
+
*[[sPop/de|$POP]] recreates saved compiler settings.
*[[sPush/de|$PUSH]] sichert die aktuellen Compiler Einstellungen
+
*[[sPush/de|$PUSH]] saves current compiler settings.
*[[sOverflowchecks/de|$OVERFLOWCHECKS]] überwacht den Überlauf von Integervariablen
+
*[[sOverflowchecks/de|$OVERFLOWCHECKS]] checkes integer variables for overflow.
*[[sRangechecks/de|$R oder $RANGECHECKS]] überprüft, ob bei diversen Bereichen der Index überläuft
+
*[[sRangechecks/de|$R or $RANGECHECKS]] checks overflow of index in compound variables.
*[[sResource/de|$R oder $RESOURCE]] bindet eine Resourcendatei ein
+
*[[sResource/de|$R or $RESOURCE]] inserts resource file.
*[[sStatic/de|$STATIC]] erlaubt die Verwendung des reservierten Wortes static
+
*[[sStatic/de|$STATIC]] enable usage of the reserved word static.
*[[sTypedadress/de|$T oder $TYPEDADDRESS]] bestimmt, ob der Adressoperator @ einen typisiertern oder untypisiertern Pointer zurück gibt
+
*[[sTypedadress/de|$T or $TYPEDADDRESS]] determines, if the address operator @ delivers a typed or untyped pointer.
*[[sUndef/de|$UNDEF]] hebt die Definition eines Symbols auf
+
*[[sUndef/de|$UNDEF]] undefines symbol.
*[[sVarstringchecks/de|$V oder $VARSTRINGCHECKS]] legt fest, wie streng der Compiler Stringzuweisungen an Strings prüft
+
*[[sVarstringchecks/de|$V or $VARSTRINGCHECKS]] enables checking of assignments to string variables.
*[[sStackframes/de|$W or $STACKFRAMES]] legt die Bedigungen für die Erstellung von Stackframes fest
+
*[[sStackframes/de|$W or $STACKFRAMES]] determines conditions for the creation of stack frames.
*[[sWait/de|$WAIT]] wartet mit der Verarbeitung bis die Enter-Taste gedrückt wird
+
*[[sWait/de|$WAIT]] waits with execution until the enter key has been pressed.
  
 
==Bedingte Compilierung==
 
==Bedingte Compilierung==

Revision as of 13:40, 21 September 2013

Deutsch (de) English (en) français (fr)

Local directives may be used more then once in a unit or program.

The following text is still to be translated to English:

Local compiler direvtives

Bedingte Compilierung

  • $ELSE ist eine Verzweigung der bedingten Compilierung
  • $ELSEIF ist eine Verzweigung mit Bedingung der bedingten Compilierung
  • $ENDIF ist das Ende einer bedingten Compilierung
  • $IF ist der Anfang der bedingten Compilierung
  • $IFDEF ist der Anfang einer bedingten Compilierung
  • $IFNDEF ist der Anfang einer bedingten Compilierung
  • $IFOPT ist der Anfang einer bedingten Compilierung

Selbstdefinierte Compiler- Warnungen, Meldungen, Hinweise usw.

  • $ERROR gibt eine selbstdefinierte Fehlermeldung aus
  • $FATAL gibt eine selbstdefinierte fatale Fehlermeldung aus
  • $HINT erstellt eine selbstdefinierte Hinweismeldung
  • $HINTS erlaubt selbstdefinierte Hinweismeldungen
  • $INFO gibt eine selbstdefinierte Infomeldung aus
  • $MESSAGE erstellt eine selbstdefinierte Infonachricht
  • $NOTE erstellt eine selbstdefinierte Notizmeldung
  • $NOTES erlaubt das erstellen von selbstdefinierten Notizmeldungen
  • $STOP gibt eine selbstdefinierte fatale Fehlermeldung aus
  • $WARNING erstellt eine selbstdefinierte Warnmeldung
  • $WARNINGS erlaubt selbstdefinierte Warnmeldungen


Lokale Compiler Direktiven nur für Intel 80x86 und kompatible Prozessoren

  • $ASMMODE Assemblermodus
  • $I386_XXX legt das Assemblerformat fest
  • $MMX erzwingt Optimierungen für den MMX Prozessor
  • $SATURATION Saturation (Schutz gegen Speicherüberlauf) Operationen für den MMX Prozessor
  • $MAXFPUREGISTERS legt die maximale Anzahl der zu nutzenden Fliesskommaregister fest

Lokale Compiler Direktiven nur für das Betriebssystem Darwin

Lokale Compiler Direktiven nur für Compiler Mode MacPas

Diese Befehle werden aus Kompatibilität zum existierenden Mac OS Pascal Compiler unterstützt:

Bedingte Compilierung

  • $ELSEC ist eine Verzweigung der bedingten Compilierung
  • $ELIFC ist eine Verzweigung der bedingten Compilierung
  • $ENDC ist das Ende einer bedingten Compilierung
  • $IFC ist der Anfang einer bedingten Compilierung

Symbole

  • $DEFINEC erlaubt die Definition eigener Symbole
  • $SETC definiert ein Symbol und weist ihm einen Wert zu
  • $UNDEFC hebt die Definition eines Symbols auf