C++ Compiler Debugging
Go Up to C++ Compiler
Project > Options > C++ Compiler > Debugging
Use this dialog box to set C++ compiler debugging and CodeGuard options.
Options | Description |
---|---|
Target, Apply, Save |
See Target Options. |
Common items |
Debugging Options | Description | Compiler switches | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
bcc32 | bcc32c | bcc64 | bccosx | bcciosarm | bcciosarm64 | bccaarm | ||||||||
Debug information
|
Includes debugging information in your .OBJ files. The compiler passes this option to the linker so it can include the debugging information in the TDS debug file. For debugging, this option treats C++ inline functions as normal functions. To use the integrated debugger, you need debugging information. When this option is off, you can link and create larger object files. While this option does not affect execution speed, it does affect compilation and link time. When Line Numbers is on, make sure you turn off Enable Pentium instruction scheduling on the C++ Compiler Optimizations page. When this option is set, the source code does not exactly match the generated machine instructions, which can make stepping through code confusing. Default = False |
-v |
-g |
-g |
-v |
-g |
-g |
-g | ||||||
Debug line number information |
Automatically includes line numbers in the object and object map files. Line numbers are used by the integrated debugger. Although the Debug information option automatically generates line number information, you can turn that option off and turn on Line Numbers to reduce the size of the debug information generated. With this setup, you can still step, but you cannot watch or inspect data items. Including line numbers increases the size of the object and map files but does not affect the speed of the executable program. When Line Numbers is on, make sure you turn off Enable Pentium instruction scheduling on the C++ Compiler Optimizations page. When this option is set, the source code does not exactly match the generated machine instructions, which can make stepping through code confusing. Default = False |
-y |
Platform not supported |
Platform not supported |
-y |
Platform not supported |
Platform not supported |
Platform not supported | ||||||
Enable CodeGuard |
Turns on CodeGuard options as specified below. Disabling this option disables CodeGuard, even if some of the child options below are enabled. Default = False
|
Enable CodeGuard |
Platform not supported |
Platform not supported |
Platform not supported |
Platform not supported |
Platform not supported |
Platform not supported | ||||||
Expand inline functions |
Expands C++ inline functions inline. To control the expansion of inline functions, the Debug information option acts slightly different for C++ code: when inline function expansion is disabled, inline functions are generated and called like any other function. Default = True |
-vi |
-finline-functions |
N/A |
-vi |
N/A |
N/A |
N/A | ||||||
Generate CodeView4-compatible debug info |
Generates CodeView4 compatible debug information. Default = False |
-v4 |
Platform not supported |
Platform not supported |
-v4 |
Platform not supported |
Platform not supported |
Platform not supported |
- Note: If you want to turn both debugging and inline expansion on, use the Debug information and Expand inline functions options.
See Also
- Overview of Debugging
- Debugging Multi-Device Applications
- C++ (Shared Options)
- BCC32, the C++ Compiler for 32-bit Windows
- BCC32C.EXE
- BCC64, the C++ Compiler for 64-bit Windows
- BCCOSX, the C++ Compiler for OS X
- BCCIOSARM, the C++ Compiler for the 32-bit iOS Device
- BCCIOSARM64, the C++ Compiler for the 64-bit iOS Device
- BCCAARM, the C++ Compiler for Android