next up previous contents index search.gif
Next: 1.4 Identifiers Up: 1. Pascal Tokens Previous: 1.2 Comments

Subsections


1.3 Reserved words

Reserved words are part of the Pascal language, and cannot be redefined. They will be denoted as this throughout the syntax diagrams. Reserved words can be typed regardless of case, i.e. Pascal is case insensitive. We make a distinction between Turbo Pascal and Delphi reserved words, since with the -So switch, only the Turbo Pascal reserved words are recognised, and the Delphi ones can be redefined. By default, Free Pascal recognises the Delphi reserved words.

1.3.1 Turbo Pascal reserved words

The following keywords exist in Turbo Pascal mode

absolute
and
array
asm
begin
break
case
const
constructor
continue
destructor
dispose
div
do
downto
else
end
exit
false
file
for
function
goto
if
implementation
in
inherited
inline
interface
label
mod
new
nil
not
object
of
on
operator
or
packed
procedure
program
record
repeat
self
set
shl
shr
string
then
to
true
try
type
unit
until
uses
var
while
with
xor

1.3.2 Delphi reserved words

The Delphi (II) reserved words are the same as the pascal ones, plus the following ones:

as
class
except
exports
finalization
finally
initialization
is
library
on
property
raise
try

1.3.3 Free Pascal reserved words

On top of the Turbo Pascal and Delphi reserved words, Free Pascal also considers the following as reserved words:

dispose
exit
export
false
new
popstack
true

1.3.4 Modifiers

The following is a list of all modifiers. Contrary to Delphi, Free Pascal doesn't allow you to redefine these modifiers.

absolute
abstract
alias
assembler
cdecl
default
export
external
far
forward
index
name
near
override
pascal
popstack
private
protected
public
published
read
register
stdcall
virtual
write
Remark that predefined types such as Byte, Boolean and constants such as maxint are not reserved words. They are identifiers, declared in the system unit. This means that you can redefine these types. You are, however, not encouraged to do this, as it will cause a lot of confusion.

root
1999-06-10