block, 137
Boolean, 19
Case, 101
cdecl, 122
Char, 22
Class, 60, 65
Classes, 60
COM, 41, 77
Comments, 8
Comp, 22
Const, 16
String, 16
Constants, 15
Ordinary, 15
String, 13, 15, 26
Typed, 16
Constructor, 53, 63, 87
CORBA, 41, 77
Currency, 22
Destructor, 53
Directives
Hint, 11
Dispatch, 66
DispatchStr, 67
Double, 22
else, 101, 102
except, 142, 144
Exception, 141
Exceptions, 141
Catching, 141, 142
Classes, 144
Handling, 143, 144
Raising, 141
export, 122
Expression, 104, 105
Expressions, 84
Extended, 22
External, 119
external, 45, 120
Fields, 32, 52
File, 37
finally, 143, 144
For, 103
Forward, 39, 118
Function, 110
Functions, 109
Assembler, 120, 145
External, 119
Forward, 118
Modifiers, 120
Overloaded, 117
Generics, 78
Hint directives, 11
Identifiers, 10
If, 102
index, 70, 120
Inherited, 65
inline, 122
interface, 74
Interfaces, 41, 43, 74
COM, 77
CORBA, 77
Implementations, 76
interrupt, 123
Labels, 13
Libraries, 140
library, 140
local, 123
Message, 66, 67
message, 66
Methods, 55, 64
Abstract, 57
Class, 65
Message, 66
Static, 55
Virtual, 56, 57, 64
Modifiers, 10, 120, 126
Alias, 121
cdecl, 122
export, 122
inline, 122
nostackframe, 123
overload, 123
pascal, 124
public, 124
register, 125
safecall, 125
saveregisters, 126
softfloat, 126
stdcall, 126
varargs, 126
Mofidiers
interrupt, 123
local, 123
name, 119
nostackframe, 123
Numbers, 12
Binary, 12
Decimal, 12
Hexadecimal, 12
Real, 12
object, 51
Objects, 51
Operators, 15, 27, 36, 39, 84, 90, 91
Arithmetic, 91, 130
Assignment, 128
Binary, 130
Boolean, 92
Comparison, 131
Logical, 92
Relational, 94
Set, 93
String, 93
Unary, 91
operators, 127
otherwise, 101
overload, 118, 123
overloading
operators, 127
Override, 65
override, 57
Packed, 33, 34, 52, 64
Parameters, 111
Constant, 111, 114
Open Array, 114, 115
Out, 113
Untypes, 111
Value, 111
Var, 70, 111, 112
pascal, 124
PChar, 25
Pointer, 37
Private, 58, 61, 70
private, 52
Procedural, 40
Procedure, 40, 109
Procedures, 109
program, 133
Properties, 47, 69
Array, 71
Indexed, 70
Property, 66, 69
Protected, 58, 61
Public, 58, 61
public, 52, 124
Published, 61, 70
PWideChar, 25
Raise, 141
Read, 69
Real, 22
Record, 32
Constant, 46
register, 125
reintroduce, 65
Repeat, 104
Reserved words, 9
Delphi, 10
Free Pascal, 10
Modifiers, 10
Turbo Pascal, 9
Resourcestring, 16
safecall, 125
saveregisters, 126
Scope, 24, 31, 46, 51, 58, 61, 138
block, 138
Class, 139
record, 139
unit, 139
Self, 55, 66, 68
Set, 36
Shortstring, 23
Single, 22
softfloat, 126
Statements, 97
Assembler, 107, 145
Assignment, 97
Case, 101
Compound, 100
Exception, 107
For, 103
Goto, 99
if, 102
Loop, 103–105
Procedure, 98
Repeat, 104
Simple, 97
Structured, 100
While, 105
With, 105
stdcall, 126
String, 13
Symbols, 8
Syntax diagrams, 7
Text, 37
then, 102
Thread Variables, 47
Threadvar, 47
Tokens, 8
Identifiers, 10
Numbers, 12
Reserved words, 9
Strings, 13
Symbols, 8
try, 143, 144
Type, 17
Typecast, 24, 25, 88, 89
Unaligned, 89
Value, 88
Variable, 89
Types, 17
Ansistring, 23
Array, 28–30
Base, 17
Boolean, 19
Char, 22
Class, 60
Enumeration, 20
File, 37
Forward declaration, 39
Integer, 18
Object, 51
Ordinal, 18
PChar, 25, 26
Pointer, 26, 37
Procedural, 40
Real, 22
Record, 32
Reference counted, 23, 25, 30, 31, 77
Set, 36
String, 22
Structured, 27
Subrange, 21
Variant, 41
Widestring, 25
unit, 134, 139
uses, 133
Var, 44
varargs, 126
Variable, 44
Variables, 44
Initialized, 16, 46
Variant, 41
Virtual, 53, 54, 56, 64, 66
Visibility, 51, 58, 74
Private, 51
Protected, 61
Public, 51, 61
Published, 61
While, 105
Widestring, 25
With, 105
Write, 70