Icc.exe: Difference between revisions
Appearance
(11 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
==Versions== | ==Versions== | ||
{| class="wikitable" | {|class="wikitable" | ||
! Date | !Date||Version||Size||Comments | ||
|- | |- | ||
|2000-11-24 | |2000-11-24||3.6 FP2||57,078 bytes||Version 3.6 with Fixpack 2. | ||
|- | |- | ||
|1998-11-07||3.6||55,348 bytes||Included on IBM C and C++ Compilers 3.6 | |||
|} | |} | ||
==Usage== | ==Usage== | ||
;File Management Options | |||
* /Fa[+|-] : Produce an assembler file. Default: /Fa- | |||
: Produce an assembler file. Default: /Fa- | * /Fa<dir><name> : Specify the name/path of the assembler file(s). | ||
* /Fc[+|-] : Perform syntax and semantic check only. Default: /Fc- | |||
: Specify the name/path of the assembler file(s). | * /Fe<name> : Specify the name of the executable file. | ||
* /Fi[+|-] : Generate precompiled header files. Default: /Fi- | |||
: Perform syntax and semantic check only. Default: /Fc- | * /Fi<dir><name> : Specify the name/path of the precompiled header file(s). | ||
* /Fl[+|-] : Generate basic listing file. Default: /Fl- | |||
: Specify the name of the executable file. | * /Fl<dir><name> : Specify the name/path of the listing file(s). | ||
* /Fm[+|-] : Produce a linker map file. Default: /Fm- | |||
: Generate precompiled header files. Default: /Fi- | * /Fm<name> : Specify the name of the linker map file. | ||
* /Fn[+|-] : Produce an assembler listing that includes machine code. Default: /Fn- | |||
: Specify the name/path of the precompiled header file(s). | * /Fn<dir><name> : Specify the name/path of the assembler listing that includes machine code. Default: source file name with extension of .COD. | ||
* /Fo[+|-] : Generate the object file. Default /Fo+ | |||
: Generate basic listing file. Default: /Fl- | * /Fo<dir><name> : Specify the name/path of the object file. | ||
* /Ft[+|-] : Generate template file. Default: /Ft+ (C++ mode only) | |||
: Specify the name/path of the listing file(s). | * /Ft<dir> : Specify the directory in which to place template files. (C++ mode only) | ||
* /I<path>[;<path>] : Specify where to search for include files. | |||
: Produce a linker map file. Default: /Fm- | * /Xc[+|-] : Ignore all previous paths specified by the /I option. Default: /Xc- | ||
* /Xi[+|-] : Do not use the INCLUDE environment variable when searching for include files. Default: /Xi- | |||
: Specify the name of the linker map file. | |||
: Produce an assembler listing that includes machine code. Default: /Fn- | |||
: Specify the name/path of the assembler listing that includes machine code. Default: source file name with extension of .COD. | |||
: Generate the object file. Default /Fo+ | |||
: Specify the name/path of the object file. | |||
: Generate template file. Default: /Ft+ (C++ mode only) | |||
: Specify the directory in which to place template files. (C++ mode only) | |||
: Specify where to search for include files. | |||
: Ignore all previous paths specified by the /I option. Default: /Xc- | |||
: Do not use the INCLUDE environment variable when searching for include files. | |||
; / | ;Listing Output Options | ||
: | * /L[+|-] : Generate basic listing file. Default: /L- | ||
* /La[+|-] : Include a layout of all referenced struct or union variables in the listing file. Default: /La- | |||
* /Lb[+|-] : Include a layout of all struct or union variables in the listing file. Default: /Lb- | |||
* /Le[+|-] : Show all expanded macros in the listing file. Default: /Le- | |||
* /Lf[+|-] : Full listing; turn on all listing options. Default: /Lf- | |||
* /Li[+|-] : Expand only user #include files in the listing file. Default: /Li- | |||
* /Lj[+|-] : Expand both user and system #include files in the listing file. Default: /Lj- | |||
* /Lp<lines> : Set page length on listing. Default: /Lp66 | |||
* /Ls[+|-] : Include source statements in the listing file. Default: /Ls- | |||
* /Lt"string" :Set title string on listing. | |||
* /Lu"string" :Set subtitle string on listing. | |||
* /Lx[+|-] :Produce a cross-reference table of referenced variables in the listing file. Default: /Lx- | |||
* /Ly[+|-] :Produce a cross-reference table of all variables in the listing file. Default: /Ly- | |||
; /q[no] | ;Debugging Options | ||
: | */N<n> :Set maximum number of errors before aborting compilation. Default: Abort only on unrecoverable error. | ||
: | */q[no]dbgunref : Generate symbol table information for unreferenced variables. By default such information is not generated thus reducing the size of the executable compiled with the /Ti option. Default: /qnodbgunref | ||
* /Ti[+|-] : Generate debugging information. Default: /Ti- | |||
* /Tm[+|-] : Enable debug memory management support. Default: /Tm- | |||
* /Tn[+|-] : Generate line-number-only debug information. Default: /Tn- | |||
* /Tx[+|-] : Generate full exception register dump. Default: /Tx- | |||
* /W<0|1|2|3> : /W0: Output only severe and unrecoverable error messages generated by the compiler. | |||
** /W1: Output error, severe, and unrecoverable error messages generated by the compiler. | |||
** /W2: Output warning, error, severe and unrecoverable error messages generated by the compiler. | |||
** /W3: Output all messages generated by the compiler. Default: /W3 | |||
* /Wall[+|-] : Generate all checkout messages. Default: /Wall-pro+ret+cnd | |||
* /Wcls[+|-] : Display information about class use. | |||
* /Wcmp[+|-] : Warn about possible redundancies in unsigned comparisons. | |||
* /Wcnd[+|-] : Warn about possible redundancies or problems in conditional expressions. | |||
* /Wcns[+|-] : Warn about operations involving constants. | |||
* /Wcnv[+|-] : Generate messages about conversions. | |||
* /Wcpy[+|-] : Inform if copy constructor cannot be generated. | |||
* /Wdcl[+|-] : Check for declaration consistency. | |||
* /Weff[+|-] : Warn about statements with no effect. | |||
* /Wenu[+|-] : Check for problems with enum consistency. | |||
* /Wext[+|-] : Warn about unused external definitions. | |||
* /Wgen[+|-] : Generate general checkout messages. | |||
* /Wgnr[+|-] : Inform if compiler generates a temporary variable. | |||
* /Wgot[+|-] : Warn about usage of goto statements. | |||
* /Wini[+|-] : Check for possible initialization problems. | |||
* /Winl[+|-] : Inform about inlined functions (C++ mode only). | |||
* /Wlan[+|-] : Display information about the effects of language level. | |||
* /Wobs[+|-] : Warn about obsolete features. | |||
* /Word[+|-] : Warn about possibly ambiguous order of evaluation. | |||
* /Wpar[+|-] : Warn about unused parameters. | |||
* /Wpor[+|-] : Warn about non-portable language constructs. | |||
* /Wppc[+|-] : Warn about possible problems using the preprocessor. | |||
* /Wppt[+|-] : Display a trace of preprocessor actions. | |||
* /Wpro[+|-] : Warn about missing function prototypes. | |||
* /Wrea[+|-] : Warn about unreachable statements. | |||
* /Wret[+|-] : Check for return statement consistency. | |||
* /Wtrd[+|-] : Warn about possible truncation or loss of data. | |||
* /Wtru[+|-] : Warn about variable names trunctated by the compiler. | |||
* /Wund[+|-] : Warn about casting of pointers to/from an undefined class. | |||
* /Wuni[+|-] : Warn about uninitialized variables. | |||
* /Wuse[+|-] : Check for unused auto/static variables. | |||
* /Wvft[+|-] : Generate messages about virtual function table generation. | |||
; / | ;Source Code Options | ||
: | * /J[+|-] | ||
** /J+: Make default char type unsigned. Default: /J+ | |||
** /J-: Make default char type signed. | |||
* /qbitfields=<signed|unsigned> | |||
** Specifies sign of bitfields. | |||
** Default: /qbitfields=unsigned. | |||
* /q[no]digraph : Allow special digraph and keyword operators. Default: /qnodigraph. | |||
* /q[no]exppragma : Allow macros to be expanded inside of pragma directives. Default: /qexppramga. | |||
* /q[no]longlong : Allow long long integers. Default: /qlonglong | |||
* /S<a|c|e|2> : Select language level to be accepted by the compiler. Default /Se | |||
**/Sa: Allow language constructs that conform to ANSI/ISO standards. | |||
**/Sc: Allow language constructs that are compatible with older versions of the C++ language. (C++ mode only) | |||
**/Se: Allow all IBM C and C++ language extensions. | |||
**/S2: Allow language constructs that conform to SAA Level 2 standards. (C mode only) | |||
* /Sd[+|-] | |||
** /Sd+: Set the default file extension to .c. | |||
** /Sd-: Set the default file extension to .obj. | |||
** Default: /Sd- | |||
* /Sg<[m][,n]|-> : Set margins for source files; only text between columns m and n will be processed. Default: /Sg- (C only) | |||
* /Sh[+|-] : Allow use of ddnames on calls to fopen(). Default: /Sh- | |||
* /Si[+|-] : Use precompiled header files when available. Default: /Si- | |||
* /Si<name> : Specify the name/path of the precompiled header file(s). | |||
* /Sm[+|-] : Ignore migration keywords. Default: /Sm- | |||
* /Sn[+|-] : Allow DBCS characters in source file. Default: /Sn- | |||
* /Sp<[1]|2|4|8|16> : Pack aggregate members on specified alignment. Default: /Sp4 | |||
* /Sq<[m][,n]|-> : Specify the portion of the input record that contains sequence numbers. Default: /Sq- (no sequence number) (C mode only) | |||
* /Sr[+|-] : /Sr+: Use old-style rules for type conversions to preserve the sign. | |||
* /Sr-: Use new-style rules for type conversions to preserve accuracy. Default: /Sr- (C mode only) | |||
* /Ss[+|-] : Allow the double slash (//) format to be used for comments. Default: /Ss- (C mode only) | |||
* /Su[+|-|1|2|4] : Pack enum variables into specified integral size. Default: /Su- | |||
* /Sv[+|-] : Enable support for using memory files. Default: /Sv- | |||
* /Tc<name> : Compile the file <name> as a C file. | |||
* /Td : Compile any file with extension .cpp or .cxx as C++ file, and any other unrecognized file as C file. Default: /Td | |||
* /Tdc : Compile all following source files as C files. | |||
* /Tdp : Compile all following source files as C++ files and invoke link step to resolve all template functions. | |||
* /Tp<name> : Compile the file <name> as a C++ file. | |||
; / | ;Preprocessor Options | ||
: | * /D<name> :Define preprocessor macros to the value '1'. | ||
* /D<name>=[<def>] : Define preprocessor macros to the value given. | |||
* /D<name>::[<def>] : Define preprocessor macros to the value given. | |||
* /P[+|-] | |||
** /P+: Run only the preprocessor against the source file. | |||
** /P-: Run the entire compiler against the source file. Default: /P- | |||
* /Pc[+|-] | |||
** /Pc+: Run only the preprocessor against the source file and preserve comments during preprocessing. | |||
** /Pc-: Run only the preprocessor against the source file and do not preserve comments during preprocessing. Default: /Pc- | |||
* /Pd[+|-] | |||
** /Pd+: Send the preprocessor output to stdout. | |||
** /Pd-: Send the preprocessor output to a file. Default: /Pd- | |||
* /Pe[+|-] | |||
** /Pe+: Suppress #line directives from the preprocessor output. | |||
** /Pe-: Produce #line directives in the preprocessor output. Default: /Pe- | |||
* /U<name> :Undefine user macro. | |||
* /U* : Undefine all user-defined macros. | |||
; / | ;Code Generation Options | ||
: Generate run- | * /G<3|4|5> | ||
: | ** /G3: Generate code optimized for use on an 80386 processor. | ||
:: | ** /G4: Generate code optimized for use on an 80486 processor. | ||
: | ** /G5: Generate code optimized for use on a Pentium processor. | ||
:: | ** These options can be also specified using /qtune=386, /qtune=486 and /qtune=pentium. See /qtune option for other suboptions and default. | ||
: | * /Gd[+|-] | ||
:: | ** /Gd+: Use the version of the runtime library that is dynamically linked. | ||
** /Gd-: Use the version of the runtime library that is statically linked. Default: /Gd- | |||
* /Ge[+|-] | |||
** /Ge+: Use the version of the runtime library that assumes an EXE is being built. | |||
** /Ge-: Use the version of the runtime library that assumes a DLL is being built. Default: /Ge+ | |||
* /Gf[+|-] : Generate fast floating-point code. Default: /Gf+ | |||
* /Gi[+|-] : Generate fast integer code. Default: /Gi+ | |||
* /Gk[+|-] : Link with version 2 C++ libraries. Default: /Gk- | |||
* /Gl[+|-] : Enable smart linking. Default: /Gl- | |||
* /Gm[+|-] : Link with multithread runtime libraries. Default: /Gm- | |||
* /Gn[+|-] | |||
** /Gn+: Do not generate default libraries in object. | |||
** /Gn-: Generate default libraries in object. Default: /Gn- | |||
* /Gp[+|-] | |||
** /Gp+: Generate code that allows the __parmdwords() function to work. | |||
** /Gp-: Do not support use of the __parmdwords() function. | |||
** Default: /Gp- | |||
* /Gr[+|-] : Allow object code to run at ring 0. Default: /Gr- | |||
* /Gs[+|-] | |||
** /Gs+: Suppress stack probes in function prologs. | |||
** Default: /Gs- | |||
* /Gt[+|-] : Store variables so that they do not cross 64K boundaries. Default: /Gt- | |||
* /Gv[+|-] : Reload DS and ES from DGROUP in the prologs of external functions. Default: /Gv- (C mode only) | |||
* /Gx[+|-] : Disable the generation of C++ exception handling code. Default: /Gx- (C++ mode only) | |||
* /Gy[+|-] : Decorate external data names with underscore. Default: /Gy- (C mode only) | |||
* /M<p|s|c|t> | |||
** /Mp: Set the default calling convention to _Optlink. Default: /Mp | |||
** /Ms: Set the default calling convention to _System. | |||
** /Mc: Set the default calling convention to __cdecl. | |||
** /Mt: Set the default linkage to __stdcall. | |||
* /ND<seg_name> : Specify the name for the default data, uninitialized data, and constant segments. Default: use DATA32, BSS32 and CONST32_RO. | |||
* /NT<seg_name> : Specify the name for the default text segment. Default: CODE32. | |||
* /NX<seg_name> : Specify segment name for exception handling code and data. (C++ mode only). Default: use EH_CODE and EH_DATA. | |||
* /O[+|-] : Optimize generated code. Default: /O- | |||
* /O2 : Equivalent to /O+. | |||
* /O3 : Equivalent to /O+. | |||
* /Oc[+|-] : Optimize for code size rather than speed. Default: /Oc-. | |||
* /Oi[+|-] : Turn on function inlining. Default: /Oi- if /O-, /Oi+ if /O+ | |||
* /Oi<value> : Set the threshold for auto-inlining to <value> intermediate code instructions. Default: /Oi0 | |||
* /Om[+|-]: Limit amount of memory used by the optimizer and code generator. Default: /Om- | |||
* /Op[+|-] | |||
** /Op-: Disable all stack pointer optimizations and forces the stack to be chained. | |||
** /Op+: Enables all stack pointer optimizations and allow stack to be unchained. | |||
** Default: /Op+ /Oq+ if /O-, /Op+ /Oq- if /O+ | |||
:: 486 processor. | |||
:: pentium Produce object code optimized for the Pentium processor. | |||
:: pentium2 Produce object code optimized for the Pentium2 processor. | |||
:: blend Produce object code optimized for all the X86 processors. | |||
:: Default is /qtune=blend. | |||
* /qarch=<option> : Specifies the architecture on which the executable program will be run. | |||
: The available options are: | |||
::x86 runs on any 32-bit x86 architecture | |||
::486 runs on any architecture supporting 486 instruction set. | |||
::pentium runs on any architecture supporting Pentium instruction set. | |||
::pentium2 runs on any architecture supporting Pentium instruction set. | |||
: Default: /qarch=486 | |||
* /R<e|n> | |||
**/Re: Produce code to run with a complete runtime environment. Default: /Re | |||
**/Rn: Produce code to run with no runtime environment. | |||
**Allow system programming and subsystem development. | |||
; /qnortti | ;Other Options | ||
: Do not generate run-time type information. | * /? : Display online help (this information). | ||
* /B"options" : Pass options to the linker. Default: /B"" | |||
* /C[+|-] | |||
** /C+: Perform compile only, no link. | |||
** /C-: Perform compile and link. Default: /C- | |||
* /H<n> : Set the maximum length of external names. Default: /H255 | |||
* /Q[+|-] | |||
** /Q+: Suppress the logo. | |||
** /Q-: Display the logo. Default: /Q- | |||
* /Tl[+] : Enable preloading of the compiler. | |||
* /Tl-: Disable preloading of the compiler and unload it if it is already loaded. | |||
* /Tl<n>: Keep compiler preloaded for 'n' minutes. Default: /Tl10 | |||
* /V"string" : Imbed text string for version into the object file. | |||
* /qignprag=<disjoint|isolated|all> : Ignore the aliasing pragmas disjoint and/or isolated_call. | |||
* /q[no]libansi : Tell the compiler that all functions with the name of an ANSI C library are in fact the system functions. Default: /qnolibansi | |||
* /qmakedep : Generate information to be included in a "make" description file; output goes to .u file. | |||
* /q[no]ro : Put string literals in read only area. Default is /qro. | |||
* /qrtti=<option> : Generate run-time type information. The available options are: | |||
**all : Generate information for the typeid and dynamic_cast operators. | |||
**typeinfo : Generate information for the typeid operator. | |||
**dynamiccast : Generate information for the dynamic_cast operators. | |||
* /qnortti : Do not generate run-time type information. Default: /qnortti (C++ mode only) | |||
==DLLs Loaded== | ==DLLs Loaded== |
Latest revision as of 13:48, 18 April 2020
This is the IBM C compiler executable file.
Versions
Date | Version | Size | Comments |
---|---|---|---|
2000-11-24 | 3.6 FP2 | 57,078 bytes | Version 3.6 with Fixpack 2. |
1998-11-07 | 3.6 | 55,348 bytes | Included on IBM C and C++ Compilers 3.6 |
Usage
- File Management Options
- /Fa[+|-] : Produce an assembler file. Default: /Fa-
- /Fa<dir><name> : Specify the name/path of the assembler file(s).
- /Fc[+|-] : Perform syntax and semantic check only. Default: /Fc-
- /Fe<name> : Specify the name of the executable file.
- /Fi[+|-] : Generate precompiled header files. Default: /Fi-
- /Fi<dir><name> : Specify the name/path of the precompiled header file(s).
- /Fl[+|-] : Generate basic listing file. Default: /Fl-
- /Fl<dir><name> : Specify the name/path of the listing file(s).
- /Fm[+|-] : Produce a linker map file. Default: /Fm-
- /Fm<name> : Specify the name of the linker map file.
- /Fn[+|-] : Produce an assembler listing that includes machine code. Default: /Fn-
- /Fn<dir><name> : Specify the name/path of the assembler listing that includes machine code. Default: source file name with extension of .COD.
- /Fo[+|-] : Generate the object file. Default /Fo+
- /Fo<dir><name> : Specify the name/path of the object file.
- /Ft[+|-] : Generate template file. Default: /Ft+ (C++ mode only)
- /Ft<dir> : Specify the directory in which to place template files. (C++ mode only)
- /I<path>[;<path>] : Specify where to search for include files.
- /Xc[+|-] : Ignore all previous paths specified by the /I option. Default: /Xc-
- /Xi[+|-] : Do not use the INCLUDE environment variable when searching for include files. Default: /Xi-
- Listing Output Options
- /L[+|-] : Generate basic listing file. Default: /L-
- /La[+|-] : Include a layout of all referenced struct or union variables in the listing file. Default: /La-
- /Lb[+|-] : Include a layout of all struct or union variables in the listing file. Default: /Lb-
- /Le[+|-] : Show all expanded macros in the listing file. Default: /Le-
- /Lf[+|-] : Full listing; turn on all listing options. Default: /Lf-
- /Li[+|-] : Expand only user #include files in the listing file. Default: /Li-
- /Lj[+|-] : Expand both user and system #include files in the listing file. Default: /Lj-
- /Lp<lines> : Set page length on listing. Default: /Lp66
- /Ls[+|-] : Include source statements in the listing file. Default: /Ls-
- /Lt"string" :Set title string on listing.
- /Lu"string" :Set subtitle string on listing.
- /Lx[+|-] :Produce a cross-reference table of referenced variables in the listing file. Default: /Lx-
- /Ly[+|-] :Produce a cross-reference table of all variables in the listing file. Default: /Ly-
- Debugging Options
- /N<n> :Set maximum number of errors before aborting compilation. Default: Abort only on unrecoverable error.
- /q[no]dbgunref : Generate symbol table information for unreferenced variables. By default such information is not generated thus reducing the size of the executable compiled with the /Ti option. Default: /qnodbgunref
- /Ti[+|-] : Generate debugging information. Default: /Ti-
- /Tm[+|-] : Enable debug memory management support. Default: /Tm-
- /Tn[+|-] : Generate line-number-only debug information. Default: /Tn-
- /Tx[+|-] : Generate full exception register dump. Default: /Tx-
- /W<0|1|2|3> : /W0: Output only severe and unrecoverable error messages generated by the compiler.
- /W1: Output error, severe, and unrecoverable error messages generated by the compiler.
- /W2: Output warning, error, severe and unrecoverable error messages generated by the compiler.
- /W3: Output all messages generated by the compiler. Default: /W3
- /Wall[+|-] : Generate all checkout messages. Default: /Wall-pro+ret+cnd
- /Wcls[+|-] : Display information about class use.
- /Wcmp[+|-] : Warn about possible redundancies in unsigned comparisons.
- /Wcnd[+|-] : Warn about possible redundancies or problems in conditional expressions.
- /Wcns[+|-] : Warn about operations involving constants.
- /Wcnv[+|-] : Generate messages about conversions.
- /Wcpy[+|-] : Inform if copy constructor cannot be generated.
- /Wdcl[+|-] : Check for declaration consistency.
- /Weff[+|-] : Warn about statements with no effect.
- /Wenu[+|-] : Check for problems with enum consistency.
- /Wext[+|-] : Warn about unused external definitions.
- /Wgen[+|-] : Generate general checkout messages.
- /Wgnr[+|-] : Inform if compiler generates a temporary variable.
- /Wgot[+|-] : Warn about usage of goto statements.
- /Wini[+|-] : Check for possible initialization problems.
- /Winl[+|-] : Inform about inlined functions (C++ mode only).
- /Wlan[+|-] : Display information about the effects of language level.
- /Wobs[+|-] : Warn about obsolete features.
- /Word[+|-] : Warn about possibly ambiguous order of evaluation.
- /Wpar[+|-] : Warn about unused parameters.
- /Wpor[+|-] : Warn about non-portable language constructs.
- /Wppc[+|-] : Warn about possible problems using the preprocessor.
- /Wppt[+|-] : Display a trace of preprocessor actions.
- /Wpro[+|-] : Warn about missing function prototypes.
- /Wrea[+|-] : Warn about unreachable statements.
- /Wret[+|-] : Check for return statement consistency.
- /Wtrd[+|-] : Warn about possible truncation or loss of data.
- /Wtru[+|-] : Warn about variable names trunctated by the compiler.
- /Wund[+|-] : Warn about casting of pointers to/from an undefined class.
- /Wuni[+|-] : Warn about uninitialized variables.
- /Wuse[+|-] : Check for unused auto/static variables.
- /Wvft[+|-] : Generate messages about virtual function table generation.
- Source Code Options
- /J[+|-]
- /J+: Make default char type unsigned. Default: /J+
- /J-: Make default char type signed.
- /qbitfields=<signed|unsigned>
- Specifies sign of bitfields.
- Default: /qbitfields=unsigned.
- /q[no]digraph : Allow special digraph and keyword operators. Default: /qnodigraph.
- /q[no]exppragma : Allow macros to be expanded inside of pragma directives. Default: /qexppramga.
- /q[no]longlong : Allow long long integers. Default: /qlonglong
- /S<a|c|e|2> : Select language level to be accepted by the compiler. Default /Se
- /Sa: Allow language constructs that conform to ANSI/ISO standards.
- /Sc: Allow language constructs that are compatible with older versions of the C++ language. (C++ mode only)
- /Se: Allow all IBM C and C++ language extensions.
- /S2: Allow language constructs that conform to SAA Level 2 standards. (C mode only)
- /Sd[+|-]
- /Sd+: Set the default file extension to .c.
- /Sd-: Set the default file extension to .obj.
- Default: /Sd-
- /Sg<[m][,n]|-> : Set margins for source files; only text between columns m and n will be processed. Default: /Sg- (C only)
- /Sh[+|-] : Allow use of ddnames on calls to fopen(). Default: /Sh-
- /Si[+|-] : Use precompiled header files when available. Default: /Si-
- /Si<name> : Specify the name/path of the precompiled header file(s).
- /Sm[+|-] : Ignore migration keywords. Default: /Sm-
- /Sn[+|-] : Allow DBCS characters in source file. Default: /Sn-
- /Sp<[1]|2|4|8|16> : Pack aggregate members on specified alignment. Default: /Sp4
- /Sq<[m][,n]|-> : Specify the portion of the input record that contains sequence numbers. Default: /Sq- (no sequence number) (C mode only)
- /Sr[+|-] : /Sr+: Use old-style rules for type conversions to preserve the sign.
- /Sr-: Use new-style rules for type conversions to preserve accuracy. Default: /Sr- (C mode only)
- /Ss[+|-] : Allow the double slash (//) format to be used for comments. Default: /Ss- (C mode only)
- /Su[+|-|1|2|4] : Pack enum variables into specified integral size. Default: /Su-
- /Sv[+|-] : Enable support for using memory files. Default: /Sv-
- /Tc<name> : Compile the file <name> as a C file.
- /Td : Compile any file with extension .cpp or .cxx as C++ file, and any other unrecognized file as C file. Default: /Td
- /Tdc : Compile all following source files as C files.
- /Tdp : Compile all following source files as C++ files and invoke link step to resolve all template functions.
- /Tp<name> : Compile the file <name> as a C++ file.
- Preprocessor Options
- /D<name> :Define preprocessor macros to the value '1'.
- /D<name>=[<def>] : Define preprocessor macros to the value given.
- /D<name>::[<def>] : Define preprocessor macros to the value given.
- /P[+|-]
- /P+: Run only the preprocessor against the source file.
- /P-: Run the entire compiler against the source file. Default: /P-
- /Pc[+|-]
- /Pc+: Run only the preprocessor against the source file and preserve comments during preprocessing.
- /Pc-: Run only the preprocessor against the source file and do not preserve comments during preprocessing. Default: /Pc-
- /Pd[+|-]
- /Pd+: Send the preprocessor output to stdout.
- /Pd-: Send the preprocessor output to a file. Default: /Pd-
- /Pe[+|-]
- /Pe+: Suppress #line directives from the preprocessor output.
- /Pe-: Produce #line directives in the preprocessor output. Default: /Pe-
- /U<name> :Undefine user macro.
- /U* : Undefine all user-defined macros.
- Code Generation Options
- /G<3|4|5>
- /G3: Generate code optimized for use on an 80386 processor.
- /G4: Generate code optimized for use on an 80486 processor.
- /G5: Generate code optimized for use on a Pentium processor.
- These options can be also specified using /qtune=386, /qtune=486 and /qtune=pentium. See /qtune option for other suboptions and default.
- /Gd[+|-]
- /Gd+: Use the version of the runtime library that is dynamically linked.
- /Gd-: Use the version of the runtime library that is statically linked. Default: /Gd-
- /Ge[+|-]
- /Ge+: Use the version of the runtime library that assumes an EXE is being built.
- /Ge-: Use the version of the runtime library that assumes a DLL is being built. Default: /Ge+
- /Gf[+|-] : Generate fast floating-point code. Default: /Gf+
- /Gi[+|-] : Generate fast integer code. Default: /Gi+
- /Gk[+|-] : Link with version 2 C++ libraries. Default: /Gk-
- /Gl[+|-] : Enable smart linking. Default: /Gl-
- /Gm[+|-] : Link with multithread runtime libraries. Default: /Gm-
- /Gn[+|-]
- /Gn+: Do not generate default libraries in object.
- /Gn-: Generate default libraries in object. Default: /Gn-
- /Gp[+|-]
- /Gp+: Generate code that allows the __parmdwords() function to work.
- /Gp-: Do not support use of the __parmdwords() function.
- Default: /Gp-
- /Gr[+|-] : Allow object code to run at ring 0. Default: /Gr-
- /Gs[+|-]
- /Gs+: Suppress stack probes in function prologs.
- Default: /Gs-
- /Gt[+|-] : Store variables so that they do not cross 64K boundaries. Default: /Gt-
- /Gv[+|-] : Reload DS and ES from DGROUP in the prologs of external functions. Default: /Gv- (C mode only)
- /Gx[+|-] : Disable the generation of C++ exception handling code. Default: /Gx- (C++ mode only)
- /Gy[+|-] : Decorate external data names with underscore. Default: /Gy- (C mode only)
- /M<p|s|c|t>
- /Mp: Set the default calling convention to _Optlink. Default: /Mp
- /Ms: Set the default calling convention to _System.
- /Mc: Set the default calling convention to __cdecl.
- /Mt: Set the default linkage to __stdcall.
- /ND<seg_name> : Specify the name for the default data, uninitialized data, and constant segments. Default: use DATA32, BSS32 and CONST32_RO.
- /NT<seg_name> : Specify the name for the default text segment. Default: CODE32.
- /NX<seg_name> : Specify segment name for exception handling code and data. (C++ mode only). Default: use EH_CODE and EH_DATA.
- /O[+|-] : Optimize generated code. Default: /O-
- /O2 : Equivalent to /O+.
- /O3 : Equivalent to /O+.
- /Oc[+|-] : Optimize for code size rather than speed. Default: /Oc-.
- /Oi[+|-] : Turn on function inlining. Default: /Oi- if /O-, /Oi+ if /O+
- /Oi<value> : Set the threshold for auto-inlining to <value> intermediate code instructions. Default: /Oi0
- /Om[+|-]: Limit amount of memory used by the optimizer and code generator. Default: /Om-
- /Op[+|-]
- /Op-: Disable all stack pointer optimizations and forces the stack to be chained.
- /Op+: Enables all stack pointer optimizations and allow stack to be unchained.
- Default: /Op+ /Oq+ if /O-, /Op+ /Oq- if /O+
- 486 processor.
- pentium Produce object code optimized for the Pentium processor.
- pentium2 Produce object code optimized for the Pentium2 processor.
- blend Produce object code optimized for all the X86 processors.
- Default is /qtune=blend.
- /qarch=<option> : Specifies the architecture on which the executable program will be run.
- The available options are:
- x86 runs on any 32-bit x86 architecture
- 486 runs on any architecture supporting 486 instruction set.
- pentium runs on any architecture supporting Pentium instruction set.
- pentium2 runs on any architecture supporting Pentium instruction set.
- Default: /qarch=486
- /R<e|n>
- /Re: Produce code to run with a complete runtime environment. Default: /Re
- /Rn: Produce code to run with no runtime environment.
- Allow system programming and subsystem development.
- Other Options
- /? : Display online help (this information).
- /B"options" : Pass options to the linker. Default: /B""
- /C[+|-]
- /C+: Perform compile only, no link.
- /C-: Perform compile and link. Default: /C-
- /H<n> : Set the maximum length of external names. Default: /H255
- /Q[+|-]
- /Q+: Suppress the logo.
- /Q-: Display the logo. Default: /Q-
- /Tl[+] : Enable preloading of the compiler.
- /Tl-: Disable preloading of the compiler and unload it if it is already loaded.
- /Tl<n>: Keep compiler preloaded for 'n' minutes. Default: /Tl10
- /V"string" : Imbed text string for version into the object file.
- /qignprag=<disjoint|isolated|all> : Ignore the aliasing pragmas disjoint and/or isolated_call.
- /q[no]libansi : Tell the compiler that all functions with the name of an ANSI C library are in fact the system functions. Default: /qnolibansi
- /qmakedep : Generate information to be included in a "make" description file; output goes to .u file.
- /q[no]ro : Put string literals in read only area. Default is /qro.
- /qrtti=<option> : Generate run-time type information. The available options are:
- all : Generate information for the typeid and dynamic_cast operators.
- typeinfo : Generate information for the typeid operator.
- dynamiccast : Generate information for the dynamic_cast operators.
- /qnortti : Do not generate run-time type information. Default: /qnortti (C++ mode only)
DLLs Loaded
- NLS.DLL
- DOSCALL1.DLL
- CPPCPI36.DLL
- CPPRMI36.DLL