var parameters, 94, 117

C++ programming language, 137 to 162 arguments, passing of

by reference, 139, 155 by value, 150, 157

arrays, fixed, 144

C++ calls Pascal, 138 to 155 character strings, 142 compatible types, 138 compiler options, 137 function return values, 152, 159 functions, 155

global variables in C++ and Pascal, 161

-lpcand -lcoptions, 137 name encoding, 138 parameter passing, 152 Pascal

calls C++, 155 to 160 file pointers to C++, 162 interface, 137

records and structures, 146 value parameters, 158

-calignoption to pc command, 26 cg, the code generator, 18

–cg89option to pc command, 26 –cg92option to pc command, 26 character data type, 33, 46 characters, illegal, 205 compatible types

Pascal and C, 90 Pascal and C++, 138 Pascal and FORTRAN, 165

compiler, 8, 11, 17 to 66 driver, 18 panics, 217

compiler directives, 246 to 263 #include, 67 %config, 247 %debug, 27, 249 %else, 250

%elseif, 251 %elseifdef, 252 %enable, 246, 254

%endif, 255 %error, 255 %exit, 256 %if, 247, 257 %ifdef, 255, 257, 258 %include, 259, 263 %list, 260 %nolist, 262 %slibrary, 263 %var, 247, 258, 263 %warning, 263

compiler semantic errors, 210 to 217 can’t read and write scalars, 212 expression diagnostics, 212 function and procedure type

errors, 211 goto statement, 216 incompatible types, 210 procedures and functions as

parameters, 211 scalar, 211

type equivalence, 214 uninitialized variables, 216 unreachable statements, 215 unused item errors, 216

compiler syntax errors, 205 to 209 digits in real numbers, 206 expected symbols, malformed

constructs, 208 expected, unexpected, end-of-file,

QUIT, 209

illegal characters, 205 replacements, insertions,

deletions, 207

string errors, 206 undefined or improper

identifiers, 208

compiling

a Pascal program, 8, 13 units, 69

with libraries, XView, 224 –condoption to pc command, 27, 249 conditional

compilation, 27 variables, 246

298

Pascal 4.0 User’s Guide