Index
A
- ARM, 170, 171, 173, 176, 177, 179, 186, 187
- assembler, 2
- autoload, 60
B
- basic types, 119
- binary compatibility, 11
C
- C
- compatibility with, 6, 117
- link compatibility with, 117
- moving to C++, 117
- using with C++, 120
- cast
- dynamic, 113
- reinterpret, 112
- static, 113
- cast operations, 111
- options, 111
- catch block, 98
- ccfe, 13, 17
- cg (code generator), 2, 13
- cg386 (intermediate language translator), 2, 13
- cgppc (intermediate language translator), 2
- char, 119
- characters
- 8-bit, 197
- class templates, 70
- declaration, 70
- definition, 70
- static data members, 71
- classes, 4
- code optimizer, 2
- codegen (code generator), 3, 13
- comma expression, 175
- comma, trailing, 180
- compiler
- error messages in local language, 198
- compiler flags, See compiler options
- compiler options, 17 to 65
- +d, 20
- +p, 39
- +w, 46
- -386, 17
- -486, 17
- -a, 18
- -Bbinding, 18
- -c, 19
- -cg[89|92], 19
- -cg89, 19
- -cg92, 19
- -d[y|n], 21
- -dalign, 21
- -Dname[=def], 20
- -dryrun, 21
- -e0, 21
- -e1, 21
- -fast, 22
- -features=a, 23
- -flags, 23
- -fnonstd, 23
- -fns, 24
- -fprecision=p, 24
- -fround=r, 24
- -fstore, 26
- -ftrap=t, 26
- -G, 27
- -g, 27
- -g0, 28
- -H, 28
- -help, 28
- -hname, 28
- -i, 28
- -I pathname, 29
- -inline=rlst, 29
- -instances=a, 30
- -keeptmp, 31
- -KPIC, 31
- -Kpic, 31
- -Ldir, 31
- -libmieee, 31
- -libmil, 32
- -library=l, 32
- -llib, 31
- -migration, 33
- -misalign, 33
- -mt, 33
- -native, 34
- -noex, 34, 105
- -nofstore, 34
- -nolib, 34
- -nolibmil, 35
- -noqueue, 35
- -norunpath, 35
- -ofilename, 39
- -Olevel, 36
- -P, 39
- -p, 39
- -pentium, 39
- -pg, 39
- -PIC, 40
- -pic, 40
- -pta, 40
- -ptipath, 40
- -pto, 40
- -ptrdatabase-path, 41
- -ptv, 41
- -Qoptionprog opt, 41
- -qoptionprog opt, 41
- -qp, 42
- -qproduce, 42
- -Qproducesourcetype, 42
- -R=pathname, 42
- -readme, 43
- -S, 43
- -s, 43
- -sb, 43
- -sbfast, 43
- -staticlib=l, 43
- -temp=dir, 44
- -template=w, 44
- -time, 45
- -Uname, 45
- -unroll=n, 45
- -V, 45
- -verbose=v, 46
- -w, 46
- -xa, 46
- -xar, 47
- -xarch=a, 47
- -xcache=c, 50
- -xcg89, 51
- -xcg92, 51
- -xchip=c, 51
- -xF, 53
- -xildoff, 54
- -xildon, 54
- -xinline=rlst, 54
- -xlibmieee, 54
- -xlibmil, 54
- -xlibmopt, 54
- -xlic_lib=l, 55
- -xlicinfo, 55
- -Xm, 55
- -xM, 55
- -xM1, 56
- -xMerge, 56
- -xnolib, 56
- -xnolibmopt, 56
- -xO=level, 56
- -xpg, 56
- -xprofile=p, 56
- -xregs=r, 59
- -xs, 59
- -xsafe=mem, 60
- -xsb, 60
- -xsbfast, 60
- -xspace, 60
- -xtarget=t, 60
- -xtime, 65
- -xunroll=n, 65
- -xwe, 65
- -ztext, 65
- -Ztha, 65
- compile-time instantiation, 84
- compiling a program, 10
- const, pointers to, 185
- constructor, for derived class, 182
- conversions
- illegal, 184
- copy constructor, 176, 179, 180
D
- data abstraction, 4
- declarations
- empty, 182
- illegal, 186
- default parameters, 178
- delete(), 181
- use of count in, 181
- demangling tool set, 3
- double, 119
- DWP, 173, 176
E
- enum, 119
- enumerator
- private, 177
- variable, 181
- error
- messages
- in the local language, 198
- escape sequences, 184
- exception
- catching an, 97
- throwing an, 97
- exception handling, 97
- asynchronous, 100
- flow of control, 101
- synchronous, 100
- exceptions
- access control in, 105
- and multithreading, 106
- building shared libraries with, 106
- matching with handlers, 104
- predefined, 105
F
- f77, f90 command line, 9
- faster, 60
- fbe (assembler), 2
- file name extensions, 9
- finalization functions, 15
- flags, compiler, See options, compiler
- float, 119
- floating-point
- white paper, xxiv
- FORTRAN
- array indexing, 127
- arrays, 134
- C() directive, 126
- C++ calls, 153
- calls C++, 129
- case sensitivity, 125
- COMPLEX, 159
- complex
- type, 141, 146
- variables, 154
- data types, 124
- double, 145, 158
- float, 143, 158
- I/O, 128
- integers, 143
- interface, 122, 123
- labeled common, 149, 162
- mixing I/O with, 164
- pointers, 137
- procedure names, 126
- returning values to, 142
- sharing I/O with, 150, 164
- simple types, 138
- strings, 147, 155, 161
- structures, 136
- variables, 153
- function
- C++, 123
- default new-handler (), 106
- FORTRAN, 123
- pointers, 179
- prototypes, 171
- function declaration, using throw in, 102
- function templates, 73
G
- gencat, 198
H
- header files, 3, 120
I
- ild, 3
- incompatibilities
- C++ 3.0 to 4.2, 170
- incremental linker, 3
- initialization function, 15
- initializer lists, 187
- initializing a reference, 183
- initializing an object, 183
- int, 119
- internationalization, 5, 197
- iropt (code optimizer), 2, 13
K
- keywords, 117
L
- language
- localization, 198
- LC_MESSAGES, 200
- ld, 3
- ld tool, 13
- library functions, 3
- linker, 3, 60
- linking
- faster, 60
- multithreaded programs, 33
- programs, 10
- link-time instantiation, 85
- localization, 198
- long double, 119
- long int, 119
- long long, 119
- long long int, 119
M
- macros
- __cplusplus, 120
- __STDC__, 120
- macros, redefining, 181
- main() return type, 179
- man command, xxi
- manual pages, xxi
- member initialization list, 182
- messages
- catalogs, 198
- local language versions, 198
- multithreaded programs, linking, 33
- multithreading
- and exceptions, 106
- mwinline, 2
N
- native language characters, 197
- native language support, 5
- nested type, 185
- new(), 171, 181, 183
- non-aggregate classes, 187
O
- object-oriented features, 5
- objects
- placing in shared memory, 191
- on-line books, xx
- operator
- delete, 6
- new, 6
- overloaded, 5
- operator =(), 186
- operator delete(), 181
- operator new(), 171, 181
- operators, overloaded, 178
- optimizer, 2
- options
- order of processing, 10
- options, compiler, 17 to 65
- order of processing, options, 10
P
- parameters, default, 178
- pointer to constant, deleting, 182
- #pragma align, 14
- #pragma fini, 15
- #pragma ident, 15
- #pragma init, 15
- #pragma pack (n), 15
- #pragma unknown_control_flow, 16
- #pragma weak, 16, 16
- pragmas, 14 to 17
- prerequisite reading, xviii
- private, 176
- private enumerator, 177
- ptclean command, 83
R
- README, xxiii, 3
- reference to non-const type, 180
- reserved words, 117
- runtime type information (RTTI), 107
S
- set_new_handler, 171
- set_terminate() function, 103, 106
- set_unexpected() function, 103, 106
- shared library, 27, 40, 106
- shared memory, 191
- short int, 119
- signed, 119
- specialization registration, 189
- structure types, 172
- subroutine
- C++, 123
- FORTRAN, 123
- symbol table for dbx, 59
- syntax
- compiler command line, 9
- f77, f90 commands, 9
T
- tdb_link, 13
- template
- class, 70
- compile-time versus link-time instantiation, 84
- database, 190
- declaration, 68
- definition, 68
- definition searching, 87
- explicit instantiation, 69
- external instance linkage, 87
- file organization, 75
- global instance linkage, 86
- implicit instantiation, 69
- instance automatic consistency, 91
- instance linkage, 85
- instantiation, 72
- nested use, 73
- non-local name resolution and instantiation, 77
- options file, 83
- options file definition entries, 89
- potential problems, 75
- ptclean command, 83
- repositories, 190
- source file location conventions, 88
- static instance linkage, 86
- use, 68
- template compilation, 81
- multiple template databases, 82
- using same datbase for multiple targets, 82
- template database, 82
- template repositories, 190
- template specialization
- deprecated method, 92
- standard method, 74
- templates
- central database, 190
- compiling with, 189
- friend declarations of, 80
- link order when using, 189
- local types as arguments, 79
- multiple databases, 191
- sharing options file, 83
- specialization registration, 189
- terminate() function, 103, 106
- thr_exit() function, 106
- throw statement, 98
- tool
- disabling autoload indbx, 59
- try block, 98
- type checking, 4
- type_infoclass, 109
- typedef names, 172
- typeid operator, 108
- typographic conventions, xxiv
U
- unexpected() function, 103, 106
- unsigned, 119
V
- void, 119
W
- warnings, 176
- warnings, type, 181
- wchar_t, 119