block, 180
Boolean, 24
Case, 135
cdecl, 163
Char, 27
Class, 68, 74
Class helpers, 100
Classes, 68
COM, 49, 87
Comments, 11
Comp, 27
Const, 21
String, 21
Constants, 19
Ordinary, 19
String, 17, 19, 31
Typed, 20
Constructor, 62, 72, 120
CORBA, 49, 87
Currency, 27
Destructor, 62
Directives
Hint, 14
Dispatch, 75
DispatchStr, 75
Double, 27
else, 135, 136
except, 187, 188
Exception, 185
Exceptions, 185
Catching, 185, 187
Classes, 189
Handling, 188
Raising, 185
export, 164
Expression, 145, 146
Expressions, 116
Extended, 27
Extended records, 95
External, 161
external, 53, 161
Fields, 38, 60
File, 42
finally, 188
For, 137, 138
downto, 137
in, 138
to, 137
Forward, 45, 160
Function, 151
Functions, 150
Assembler, 162, 190
External, 161
Forward, 160
Modifiers, 162
Overloaded, 159
Generics, 89
Hint directives, 14
Identifiers, 14
If, 136
index, 79, 161
Inherited, 73
inherited, 65, 82
inline, 164
interface, 84
Interfaces, 49, 50, 84
COM, 87
CORBA, 87
Implementations, 86
interrupt, 164
iocheck, 165
Labels, 17
Libraries, 183
library, 183
local, 165
Message, 75
message, 75
Methods, 63, 72
Abstract, 66
Class, 74
Message, 75
Static, 64
Virtual, 65, 66, 73
Modifiers, 13, 162, 168
Alias, 163
cdecl, 163
export, 164
inline, 164
nostackframe, 165
overload, 165
pascal, 166
public, 166
register, 167
safecall, 167
saveregisters, 168
softfloat, 168
stdcall, 168
varargs, 168
Mofidiers
interrupt, 164
iocheck, 165
local, 165
name, 161
nostackframe, 165
Numbers, 15
Binary, 16
Decimal, 16
Hexadecimal, 16
Octal, 16
Real, 15
object, 59
Objective-Pascal, 106
Objective-Pascal Classes, 106
Objects, 59
Operators, 19, 32, 44, 116, 122, 123
Arithmetic, 123, 172
Assignment, 170
Binary, 172
Boolean, 125
Comparison, 173
Logical, 124
Relational, 127
Set, 125
String, 125
Unary, 124
operators, 169
otherwise, 135
overload, 165
overloading
operators, 169
Override, 73
override, 65
Packed, 38, 39, 60, 72
Parameters, 152
Constant, 152, 155
Open Array, 156, 157
Out, 154
Untypes, 152
Value, 152
Var, 79, 152, 153
pascal, 166
PChar, 30, 31
Pointer, 43
Private, 67, 69, 78
strict, 70
private, 60
Procedural, 45
Procedure, 45, 150
Procedures, 150
program, 176
Properties, 55, 77
Array, 80
Indexed, 79
Property, 74, 77
Protected, 67, 70
Public, 67, 70
public, 60, 166
Published, 70, 78
PUnicodeChar, 31
Raise, 185
Read, 78
Real, 27
Record, 38
Constant, 54
Record helpers, 100
register, 167
reintroduce, 73
Repeat, 145
Reserved words, 12
Delphi, 13
Free Pascal, 13
Modifiers, 13
Turbo Pascal, 12
Resourcestring, 21
safecall, 167
saveregisters, 168
Scope, 29, 37, 54, 59, 67, 69, 181
block, 181
Class, 182
record, 182
unit, 182
Self, 63, 74, 76
Set, 42
Shortstring, 28
Single, 27
softfloat, 168
Statements, 131
Assembler, 148, 190
Assignment, 131
Case, 135
Compound, 134
Exception, 148
For, 137, 138
Goto, 133
if, 136
Loop, 137, 138, 145, 146
Procedure, 132
Repeat, 145
Simple, 131
Structured, 134
While, 146
With, 147
stdcall, 168
String, 17
Symbols, 10
Syntax diagrams, 8
Text, 42
then, 136
Thread Variables, 55
Threadvar, 55
Tokens, 10
Comments, 11
Identifiers, 14
Numbers, 15
Reserved words, 12
Strings, 17
Symbols, 10
try, 188
Type, 22
Typecast, 29–31, 120–122
Unaligned, 122
Value, 120
Variable, 121
Types, 22
Ansistring, 29
Array, 34, 35
Base, 22
Boolean, 24
Char, 27
Class, 68
Class helpers, 100
Enumeration, 25
Extended record, 95
File, 42
Forward declaration, 45
Integer, 23
Object, 59
Ordinal, 23
PChar, 30, 31
Pointer, 31, 43
Procedural, 45
Real, 27
Record, 38
Record helpers, 100
Reference counted, 29, 31, 35, 37, 87
Set, 42
String, 28
Structured, 32
Subrange, 26
Unicodestring, 31
Variant, 48
Widestring, 31
Unicodestring, 31
unit, 177, 182
uses, 176
Var, 52
varargs, 168
Variable, 52
Variables, 52
Initialized, 20, 54
Variant, 48
Virtual, 62, 65, 73, 75
Visibility, 59, 67, 84
Private, 59, 69
Protected, 70
Public, 59, 70
Published, 70
Strict Private, 70
While, 146
Widestring, 31
With, 147
Write, 78