List of Tables

About this guide

This document describes all constants, types, variables, functions and procedures as they are declared in the system unit. Furthermore, it describes all pascal constructs supported by Free Pascal, and lists all supported data types. It does not, however, give a detailed explanation of the pascal language. The aim is to list which Pascal constructs are supported, and to show where the Free Pascal implementation differs from the Turbo Pascal implementation.

Notations

Throughout this document, we will refer to functions, types and variables with typewriter font. Functions and procedures have their own subsections, and for each function or procedure we have the following topics:
Declaration
The exact declaration of the function.
Description
What does the procedure exactly do ?
Errors
What errors can occur.
See Also
Cross references to other related functions/commands.
The cross-references come in two flavours:

Syntax diagrams

All elements of the pascal language are explained in syntax diagrams. Syntax diagrams are like flow charts. Reading a syntax diagram means getting from the left side to the right side, following the arrows. When the right side of a syntax diagram is reached, and it ends with a single arrow, this means the syntax diagram is continued on the next line. If the line ends on 2 arrows pointing to each other, then the diagram is ended.

Syntactical elements are written like this

Keywords which must be typed exactly as in the diagram:
\begin{syntdiag}\setlength{\sdmidskip}{.5em}\sffamily\sloppy \lit*{keywords\ are\ like\ this}\end{syntdiag}
When something can be repeated, there is an arrow around it:
\begin{syntdiag}\setlength{\sdmidskip}{.5em}\sffamily\sloppy \<[b] \synt{this\ can\ be\ repeated} \\ \>\end{syntdiag}
When there are different possibilities, they are listed in columns:
\begin{syntdiag}\setlength{\sdmidskip}{.5em}\sffamily\sloppy \(
\synt{First\ possibility} \\
\synt{Second\ possibility}
\)\end{syntdiag}
Note, that one of the possibilities can be empty:
\begin{syntdiag}\setlength{\sdmidskip}{.5em}\sffamily\sloppy \begin{displaymath}...
...rst\ possibility} \\
\synt{Second\ possibility}
\end{displaymath}\end{syntdiag}
This means that both the first or second possibility are optional. Of course, all these elements can be combined and nested.



Subsections

Free Pascal Compiler
2001-09-22