home *** CD-ROM | disk | FTP | other *** search
/ Power GUI Programming with VisualAge C++ / powergui.iso / trialva / ibmcppw / help / cppwsc35.hlp (.txt) < prev    next >
Encoding:
OS/2 Help File  |  1996-02-23  |  85.0 KB  |  2,702 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. Notices ΓòÉΓòÉΓòÉ
  3.  
  4. References in this help to IBM products, programs, or services do not imply 
  5. that IBM intends to make these available in all countries in which IBM 
  6. operates. 
  7.  
  8. Any reference to an IBM licensed program in this help is not intended to state 
  9. or imply that only IBM's licensed program may be used.  Any functionally 
  10. equivalent product, program, or service that does not infringe on any of IBM's 
  11. intellectual property rights may be used instead of the IBM product, program, 
  12. or service. 
  13.  
  14. Evaluation and verification of operation in conjunction with other products, 
  15. except those expressly designated by IBM, is the user's responsibility. 
  16.  
  17. IBM may have patents or pending patent applications covering subject matter in 
  18. this help.  The furnishing of this help does not give you any license to these 
  19. patents. 
  20.  
  21. The following terms are trademarks of the IBM corporation in the United States 
  22. and/or other countries: 
  23.  
  24. IBM
  25. SAA
  26. VisualAge
  27.  
  28. Windows is a trademark of Microsoft Corporation. 
  29.  
  30. Pentium is a trademark of Intel Corporation. 
  31.  
  32. Other company, product, and service names, which may be denoted by a double 
  33. asterisk (**), may be trademarks of others. 
  34.  
  35. This publication contains examples of data and reports used in daily business 
  36. operations. To illustrate them as completely as possible, the examples include 
  37. the names of individuals, companies, brands, and products. All of these names 
  38. are fictitious and any similarity to the names and addresses used by an actual 
  39. business enterprise is entirely coincidental. 
  40.  
  41. Licensees of this program who wish to have information about it for the purpose 
  42. of enabling: (i) the exchange of information between independent created 
  43. programs and other programs (including this one) and (ii) the mutual use of the 
  44. information which has been exchanged, should contact IBM Canada Ltd., 
  45. Department 071, 1150 Eglinton Ave E., North York, ONT Canada M3C 1H7. Such 
  46. information may be available, subject to appropriate terms and conditions, 
  47. including in some cases, payment of a fee. 
  48.  
  49.  
  50. ΓòÉΓòÉΓòÉ 2. VisualAge for C++ Compiler Options ΓòÉΓòÉΓòÉ
  51.  
  52. Use the Compiler Options notebook to select which set of compiler options you 
  53. want to change. 
  54.  
  55. You can set any of 11 option categories: 
  56.  
  57.   Processing 
  58.   File 
  59.   Listing 
  60.   Debugging 
  61.   Source 
  62.   Object 
  63.   Preprocessor 
  64.   Signs 
  65.   User 
  66.   SOM 
  67.   Other 
  68.  
  69.  Some options have already been set to their default settings. You can change 
  70.  the default settings by clicking on them and selecting your preferred 
  71.  settings. 
  72.  
  73.  See Command-line equivalents for a mapping between command-line options and 
  74.  options set in WorkFrame. 
  75.  
  76.  
  77. ΓòÉΓòÉΓòÉ 3. Command-line equivalents ΓòÉΓòÉΓòÉ
  78.  
  79. Points to remember: 
  80.  
  81.   The options you set in WorkFrame apply to all files in the project or 
  82.    subproject they are set for. On the command line, an option applies to all 
  83.    files after it on the command line. In WorkFrame, if you want an option to 
  84.    apply to some files but not others, divide the files into two separate 
  85.    subprojects, and set that option at the subproject level. 
  86.   You can use command line syntax directly, in the User entry field on the 
  87.    User page. 
  88.  
  89.   OPTION            NOTEBOOK TAB      PAGE     CONTROL DESCRIPTION
  90.  
  91.   /B                Other              1       Parameters passed to linker
  92.   /C                Processing         1       Perform compile only
  93.   /C-               Processing         1       Compile and link
  94.   /D                Preprocessor       2       User macros: Define
  95.   /Fa               File               1       Assembler
  96.   /Fb               File               1       Browser info
  97.   /Fc               Processing         1       Perform syntax check only
  98.   /Fe               File               1       Executable
  99.   /Fi               File               2       Precompiled header file
  100.   /Fm               File               1       Linker map
  101.   /Fo               File               1       Object
  102.   /Fr               SOM                1       Produce file: Release order
  103.   /Fs               SOM                1       Produce file: IDL
  104.   /Ft               File               1       Template
  105.   /Fw               File               1       Intermediate
  106.   /Fw               Processing         1       Create intermediate files only
  107.   /G                Object             1       Target processor
  108.   /Ga               SOM                1       Implicit SOM mode
  109.   /Gb               SOM                1       Disable direct access to attributes
  110.   /Gd               Object             1       Library linkage
  111.   /Ge               Processing         1       Target
  112.   /Gf               Object             3       Use fast floating point method
  113.   /Gh               Object             3       Enable performance analyser
  114.   /Gi               Object             3       Use fast integer method
  115.   /Gl               Other              1       Enable smart linking
  116.   /Gm               Object             1       Library selection
  117.   /Gn               Object             3       Hide default library info from linker
  118.   /Gs               Object             3       Remove stack probes
  119.   /Gu               Object             3       Remove unused data in intermediate files
  120.   /Gw               Object             3       Generate FWAIT after load
  121.   /Gx               Object             3       Remove C++ exception information
  122.   /Gz               SOM                1       Initialize during static initialization
  123.   /H                Other              1       Length of external names:
  124.   /I                File               2       Command line include path
  125.   /J                Signs              1       Make default char type unsigned
  126.   /L                File               1       Listing
  127.   /La               Listing            1       Aggregate layout: Referenced
  128.   /Lb               Listing            1       Aggregate layout: All
  129.   /Le               Listing            1       Expand all macros
  130.   /Li               Listing            1       Expand include files: User
  131.   /Lj               Listing            1       Expand include files: User and system
  132.   /Lp               Listing            2       Page length
  133.   /Ls               Listing            1       Source
  134.   /Lt               Listing            2       Title
  135.   /Lu               Listing            2       Subtitle
  136.   /Lx               Listing            1       Cross reference: Referenced
  137.   /Ly               Listing            1       Cross reference: All
  138.   /M                Object             5       Default calling convention
  139.   /Mp               Object             3       Use optlink linkage
  140.   /N                Debugging          1       Stop on error count of
  141.   /Nd               Object             2       Data segment
  142.   /Nt               Object             2       Code segment
  143.   /Nx               Object             2       Exception segment
  144.   /O                Object             2       Optimization: Speed
  145.   /Oc               Object             2       Optimization: Compact
  146.   /Oi               Object             2       Inline user code
  147.   /Ol               Object             3       Invoke intermediate code linker
  148.   /Om               Object             2       Limit working set size while optimizing
  149.   /Op               Object             2       Do not perform stack pointer optimization
  150.   /Os-              Object             2       Do not invoke the instruction scheduler
  151.   /P                Processing         1       Run the preprocessor only
  152.   /Pc               Preprocessor       1       Retain comments
  153.   /Pd               Preprocessor       1       Send the output to stdout
  154.   /Pe               Preprocessor       1       No line numbers
  155.   /Q                Other              1       Display the logo
  156.   /qalias           Object             4       Aliasing assertions
  157.   /qbitfields       Signs              1       Make default bitfield type unsigned
  158.   /qdbgunref        Debugging          2       Generate unreferenced symbols
  159.   /qdigraph         Source             2       Support new digraphs and keywords
  160.   /qignprag         Object             4       Aliasing pragmas
  161.   /qisolated_call   Object             5       Isolated call names
  162.   /qlonglong        Source             3       Support long long ints
  163.   /qro              Object             5       Read-only string literals
  164.   /qrtti            Object             5       Enable Run-time type information
  165.   /qsomvolattr      SOM                1       Use volatile on attribute prototypes
  166.   /qtune            Object             1       Target processor
  167.   /R                Object             1       Executable environment
  168.   /S                Source             1       Language constructs
  169.   /Sd-              Source             2       Make .OBJ the default extension
  170.   /Sg               Source             2       Margins
  171.   /Sh               Source             2       Allow use of ddnames support
  172.   /Si               Source             2       Use precompiled header files
  173.   /Sm               Source             2       Ignore obsolete keywords
  174.   /Sn               Source             2       Allow DBCS support
  175.   /Sp               Source             3       Pack structures and unions
  176.   /Sq               Source             2       Sequence numbers
  177.   /Sr               Source             1       Conversion rule
  178.   /Ss               Source             2       Allow use of '//' for comments
  179.   /Su               Source             3       Enum variables
  180.   /Sv               Source             2       Enable support for memory file
  181.   /Td               Source             1       Source file language
  182.   /Ti               Debugging          2       Debugging information: All
  183.   /Tl               Other              1       Preload compiler components
  184.   /Tm               Debugging          2       Use debug memory management
  185.   /Tn               Debugging          2       Debugging information: Line number
  186.   /Tx               Debugging          2       Full exception dump information
  187.   /U                Preprocessor       2       User macros: Remove
  188.   /U*               Preprocessor       2       User macros: Remove all user defined macros
  189.   /V                Other              1       Version string:
  190.   /Wgrp             Debugging          1       Diagnostic options
  191.   /Wn               Debugging          1       Compiler warning level
  192.   /Xc               File               2       Ignore command line include paths
  193.   /Xi               File               2       Ignore environment include paths
  194.   /Xs               SOM                1       Exclude files from implicit SOM mode
  195.  
  196.  
  197. ΓòÉΓòÉΓòÉ 4. Processing ΓòÉΓòÉΓòÉ
  198.  
  199. Use the options on the Processing page to select the degree of compilation you 
  200. want, and the type of executable produced. 
  201.  
  202. The options that control the degree of processing are in the Processing step 
  203. group. 
  204.  
  205. Select the type of executable produced with the Target radio buttons. 
  206.  
  207.  
  208. ΓòÉΓòÉΓòÉ 4.1. Processing step ΓòÉΓòÉΓòÉ
  209.  
  210. Use the Processing step options to select the degree of compilation you want. 
  211. You have the following options: 
  212.  
  213.  Run the preprocessor only 
  214.            Runs the preprocessor only without running the compiler, and creates 
  215.            a preprocessor output file that has the same name as the source 
  216.            file, with a .i file name extension. Comments from the source code 
  217.            are not included in the preprocessor output file. The equivalent 
  218.            command-line option is /P+. 
  219.  Perform syntax check only 
  220.            Does only a syntax check on the source files. Only listing (.LST) 
  221.            files are produced when you select this option. The equivalent 
  222.            command-line option is /Fc+ . 
  223.  Create intermediate files only 
  224.            Creates intermediate code files only without completing compilation. 
  225.            You can name the files with the Intermediate entry field, on the 
  226.            first page under the Files tab. The equivalent comand-line option is 
  227.            /Fw+. See  Using the Intermediate Code Linker for more information 
  228.            on intermediate code. 
  229.  Perform compile only, no link 
  230.            Indicates you want to compile but not link the program. The 
  231.            equivalent command-line option is /C+. 
  232.  Compile and link 
  233.            Indicates that you want to compile and link in one step, with the 
  234.            compiler invoking the linker. The equivalent command-line option is 
  235.            /C-. 
  236.  
  237.  
  238. ΓòÉΓòÉΓòÉ 4.2. Target ΓòÉΓòÉΓòÉ
  239.  
  240. Use the Target options to specify the type of file you want to create. 
  241.  
  242. Select one radio button from the group: 
  243.  
  244.  EXE 
  245.        Build an .EXE file.  This is the default setting.  The equivalent icc 
  246.        command-line option is /Ge+. 
  247.  
  248.  DLL 
  249.        Build a dynamic link library (.DLL) file.  The equivalent icc 
  250.        command-line option is /Ge-. 
  251.  
  252.  
  253. ΓòÉΓòÉΓòÉ 5. File ΓòÉΓòÉΓòÉ
  254.  
  255. Use the File pages to set compiler options that control the files that the 
  256. compiler produces.  These files include: 
  257.  
  258.   Listing (/L) 
  259.   Intermediate (/Fw) 
  260.   Browser info (/Fb) 
  261.   Object (/Fo) 
  262.   Template (/Ft) 
  263.   Assembler listing (/Fa) 
  264.   Linker map (/Fm) 
  265.   Executable (/Fe) 
  266.   Precompiled header file (/Fi) 
  267.  
  268.  You can control the way the compiler searches for include files with these 
  269.  options: 
  270.  
  271.   Ignore environment include paths (/Xi) 
  272.   Ignore command line include paths (/Xc) 
  273.   Command line include path (/I) 
  274.  
  275.  
  276. ΓòÉΓòÉΓòÉ 5.1. Listing ΓòÉΓòÉΓòÉ
  277.  
  278. Select the Listing check box to create a listing file from the source file.  If 
  279. you do not select the Listing checkbox, no listing file will be produced unless 
  280. you select any of the following options on the Listing page of the Compiler 
  281. Options notebook: 
  282.  
  283.   Source 
  284.   Expand all macros 
  285.   Aggregate layout 
  286.   Cross reference 
  287.   Expand include files. 
  288.  
  289.  In the Listing entry field, type the name for the listing file.  If you leave 
  290.  this field blank, the listing file will have the same name as the source file 
  291.  with an extension of .LST. 
  292.  
  293.  Selecting this item is equivalent to specifying the /L+ or /Fl+ option on the 
  294.  icc command line. 
  295.  
  296.  
  297. ΓòÉΓòÉΓòÉ 5.2. Intermediate ΓòÉΓòÉΓòÉ
  298.  
  299. In the Intermediate entry field, type the names you want to give the 
  300. intermediate code files. You must first select to generate intermediate files 
  301. only, on the Processing page. 
  302.  
  303. If you leave this field blank, the intermediate code files will have the same 
  304. name as the source file, with the file name extensions .W, .WH, and .WI. 
  305.  
  306. Selecting this item is equivalent to specifying a name with the /Fw+ option on 
  307. the icc command line. 
  308.  
  309. For more information on intermediate code, please refer to Using the 
  310. Intermediate Code Linker. 
  311.  
  312.  
  313. ΓòÉΓòÉΓòÉ 5.3. Browser info ΓòÉΓòÉΓòÉ
  314.  
  315. Use the Browser info options to select the type of browser file the compiler 
  316. produces for use with the VisualAge for C++ browser. 
  317.  
  318. The browser file will have the same name as the main source file, with a .PDB 
  319. file name extension. All .PDB files are stored in the same directory as the 
  320. object files. 
  321.  
  322. You can control the information as follows: 
  323.  
  324.  None 
  325.            Do not produce browser files. Your executable will not be browsable. 
  326.            The equivalent command-line option is /Fb-. 
  327.  
  328.  Full 
  329.            Produce browser files. Your executable can then be browsed. The 
  330.            equivalent command-line option is /Fb+. 
  331.  
  332.  Compiler requested. 
  333.            Produce browser files that includes full information on system 
  334.            #include files. You only need to set this option if you get a 
  335.            compiler message that tells you it is required. The equivalent 
  336.            command-line option is /Fb*. 
  337.  
  338.  
  339. ΓòÉΓòÉΓòÉ 5.4. Object ΓòÉΓòÉΓòÉ
  340.  
  341. Select the Object check box to generate an object file. 
  342.  
  343. In the Object entry field, type the name of the object file.  If you leave this 
  344. field blank, the object file will have the same name as the source file, with a 
  345. .OBJ file name extension. 
  346.  
  347. Specify a directory in the entry field to direct object files (and .PDB files 
  348. if you are producing browser information) to that directory. 
  349.  
  350. Selecting this item is equivalent to specifying the /Fo+ option on the icc 
  351. command line. 
  352.  
  353.  
  354. ΓòÉΓòÉΓòÉ 5.5. Template ΓòÉΓòÉΓòÉ
  355.  
  356. Select the Template check box to generate files for template resolution. 
  357.  
  358. In the Template directory entry field, type the name of the directory in which 
  359. you wish to store the template files. If you leave this field blank, the 
  360. template resolution files will be stored in the TEMPINC subdirectory under the 
  361. current directory. 
  362.  
  363. Selecting this item is equivalent to specifying the /Ft+ option on the icc 
  364. command line. 
  365.  
  366.  
  367. ΓòÉΓòÉΓòÉ 5.6. Assembler ΓòÉΓòÉΓòÉ
  368.  
  369. Select the Assembler check box to produce an assembler listing file that has 
  370. the source code as comments. 
  371.  
  372. Note:   This listing is not guaranteed to assemble. 
  373.  
  374.  In the Assembler entry field, type the name you want to give the assembler 
  375.  file.  If you leave this field blank, the assembler file will have the same 
  376.  name as the source file, with a .ASM file name extension. 
  377.  
  378.  Selecting this item is equivalent to specifying the /Fa+ option on the icc 
  379.  command line. 
  380.  
  381.  
  382. ΓòÉΓòÉΓòÉ 5.7. Linker map ΓòÉΓòÉΓòÉ
  383.  
  384. Select the Linker map check box to create a linker map file, which lists the 
  385. object modules in your output file, segment names, addresses, and sizes, and 
  386. symbol information. 
  387.  
  388. In the Linker map entry field, type the name you want to give the linker map 
  389. file.  If you leave this field blank, the linker map file will have the same 
  390. name as the source file, with a .MAP file name extension. 
  391.  
  392. Selecting this item is equivalent to specifying the /Fm+ option on the icc 
  393. command line. 
  394.  
  395.  
  396. ΓòÉΓòÉΓòÉ 5.8. Executable ΓòÉΓòÉΓòÉ
  397.  
  398. In the Executable entry field, enter a name for the generated executable file 
  399. or dynamic link library (DLL).  If you leave this field blank, the executable 
  400. file or DLL will have the same name as the first file, with a .EXE or .DLL file 
  401. name extension, based on the Target you selected on the Processing step page. 
  402.  
  403. Entering a name here is equivalent to specifying the /Fename option on the icc 
  404. command line. 
  405.  
  406.  
  407. ΓòÉΓòÉΓòÉ 5.9. Generate precompiled header file ΓòÉΓòÉΓòÉ
  408.  
  409. Select the Precompiled header file check box to generate a precompiled header 
  410. file if none exists or if the existing one is out of date. 
  411.  
  412. Note:   To get the most benefit from using precompiled header files, you may 
  413. need to reorganize your source files, and use multiple precompiled header 
  414. objects. See Using Precompiled Headers for more information on using 
  415. precompiled headers. To use multiple precompiled header objects, use the 
  416. /Siname and /Finame command-line options, which you can enter on the User 
  417. notebook page. You can set these options on a subproject level, to use 
  418. different precompiled header options for different sets of source files. 
  419.  
  420. Selecting this item is equivalent to specifying the /Fi+ option on the icc 
  421. command line. 
  422.  
  423.  
  424. ΓòÉΓòÉΓòÉ 5.10. Ignore environment include paths ΓòÉΓòÉΓòÉ
  425.  
  426. Select the Ignore environment include paths check box to ignore the #include 
  427. search path(s) given in the INCLUDE environment variable. #include files will 
  428. not be searched for in the directories specified by the INCLUDE environment 
  429. variable. 
  430.  
  431. Selecting this item is equivalent to specifying the /Xi+ option on the icc 
  432. command line. 
  433.  
  434. To specify search directories for #include files, use the Command line include 
  435. path entry field. 
  436.  
  437.  
  438. ΓòÉΓòÉΓòÉ 5.11. Ignore command line include paths ΓòÉΓòÉΓòÉ
  439.  
  440. Select the Ignore command line include paths to ignore the search paths 
  441. specified in the Command line include path entry field. #include files will not 
  442. be searched for in the directories specified in the Command line include path 
  443. field. 
  444.  
  445. Note:   Any search paths you specified on the User page are also ignored. 
  446.  
  447. Selecting this item is equivalent to specifying the /Xc+ option on the icc 
  448. command line. 
  449.  
  450.  
  451. ΓòÉΓòÉΓòÉ 5.12. Command line include path ΓòÉΓòÉΓòÉ
  452.  
  453. In the Command line include path field, enter the pathnames of directories to 
  454. be searched for #include files.  Separate each pathname with a semicolon or 
  455. enter one path per line. 
  456.  
  457. If you do not enter any paths in this field, the default is to search the 
  458. directory of the source file (for user files only), and then search the paths 
  459. given in the INCLUDE environment variable unless the Ignore environment include 
  460. paths check box is selected. 
  461.  
  462. Entering paths in this field is equivalent to specifying the /Ipath option on 
  463. the icc command line. 
  464.  
  465.  
  466. ΓòÉΓòÉΓòÉ 6. Listing ΓòÉΓòÉΓòÉ
  467.  
  468. Use the Listing page to set compiler options that allow you to control whether 
  469. or not a listing file is produced, the type of information in the listing, and 
  470. the appearance of the file. 
  471.  
  472. You have the following options: 
  473.  
  474.  Include Source 
  475.            Include source code in listing file (/Ls) 
  476.  
  477.  Expand all macros 
  478.            Expand all macros in listing file (/Le) 
  479.  
  480.  Aggregate layout 
  481.            Control aggregate layout of struct and union variables in listing 
  482.            file (/La, /Lb) 
  483.  
  484.  Cross reference 
  485.            Control cross reference listing in listing file (/Ly, /Lx) 
  486.  
  487.  Expand include files 
  488.            Control expansion of #include files in listing file (/Li, /Lj) 
  489.  
  490.  Page length 
  491.            Set page length of listing file (/Lp) 
  492.  
  493.  Title 
  494.            Set title of listing file (/Lt) 
  495.  
  496.  Subtitle 
  497.            Set subtitle in listing file (/Lu) 
  498.  
  499.  
  500. ΓòÉΓòÉΓòÉ 6.1. Include Source ΓòÉΓòÉΓòÉ
  501.  
  502. Select the Include Source check box to include the source code in the listing 
  503. file. 
  504.  
  505. Selecting this item is equivalent to specifying the /Ls+ option on the icc 
  506. command line. 
  507.  
  508.  
  509. ΓòÉΓòÉΓòÉ 6.2. Expand all macros ΓòÉΓòÉΓòÉ
  510.  
  511. Select the Expand all macros check box to produce a listing showing the 
  512. contents of all the macros from your source program. 
  513.  
  514. Selecting this item is equivalent to specifying the /Le+ option on the icc 
  515. command line. 
  516.  
  517.  
  518. ΓòÉΓòÉΓòÉ 6.3. Aggregate layout ΓòÉΓòÉΓòÉ
  519.  
  520. Use the Aggregate layout group of radio buttons to specify whether or not you 
  521. want to include a layout of all struct and union variables with their offsets 
  522. and lengths in the listing file. 
  523.  
  524. Select one of the radio buttons from the group: 
  525.  
  526.  None 
  527.          Does not produce an aggregate layout.  This is the default setting. 
  528.          Selecting this item is equivalent to specifying the /La- or /Lb- 
  529.          option on the icc command line. 
  530.  
  531.  Referenced 
  532.          Includes a layout of only the referenced struct and union variables. 
  533.          Selecting this item is equivalent to specifying the /La+ option on the 
  534.          icc command line. 
  535.  
  536.  All 
  537.          Includes a layout of all struct and union variables.  Selecting this 
  538.          item is equivalent to specifying the /Lb+ option on the icc command 
  539.          line. 
  540.  
  541.  
  542. ΓòÉΓòÉΓòÉ 6.4. Cross reference ΓòÉΓòÉΓòÉ
  543.  
  544. Use the Cross reference group of radio buttons to specify whether or not to 
  545. produce a cross reference listing. The generated cross-reference table 
  546. identifies variables, structures, and function names along with the line 
  547. numbers where the names are declared in the source code. 
  548.  
  549. Select one of the radio buttons from the group: 
  550.  
  551.  None 
  552.       Does not produce a cross-reference table.  This is the default setting. 
  553.       Selecting this item is equivalent to specifying the /Lx- or /Ly- option 
  554.       on the icc command line. 
  555.  
  556.  Referenced 
  557.       Generates a cross-reference table of only the referenced variable, 
  558.       structure, and function names.  Selecting this item is equivalent to 
  559.       specifying the /Lx+ option on the icc command line. 
  560.  
  561.  All 
  562.       Generates a cross-reference table of all variable, structure, and 
  563.       function names.  The table includes all local identifiers referenced by 
  564.       the user and all external identifiers. Selecting this item is equivalent 
  565.       to specifying the /Ly+ option on the icc command line. 
  566.  
  567.  
  568. ΓòÉΓòÉΓòÉ 6.5. Expand include files ΓòÉΓòÉΓòÉ
  569.  
  570. Use the Expand include files group of radio buttons to specify whether or not 
  571. to expand #include files. 
  572.  
  573. Select one of the radio buttons from the group: 
  574.  
  575.  None 
  576.       Does not expand #include files for the listing file.  This is the default 
  577.       setting. Selecting this item is equivalent to specifying the /Li- or /Lj- 
  578.       option on the icc command line. 
  579.  
  580.  User 
  581.       Produces a listing showing the contents of the user #include files from 
  582.       your source program.  Selecting this item is equivalent to specifying the 
  583.       /Li+ option on the icc command line. 
  584.  
  585.  User and system 
  586.       Produces a listing showing the contents of the user and system #include 
  587.       files from your source program.  Selecting this item is equivalent to 
  588.       specifying the /Lj+ option on the icc command line. 
  589.  
  590.  
  591. ΓòÉΓòÉΓòÉ 6.6. Page length ΓòÉΓòÉΓòÉ
  592.  
  593. In the Page length entry field, type a number between 15 and 65535 to set the 
  594. page length for the generated listing file. If you leave this field blank, the 
  595. default page length of 66 lines will be used. 
  596.  
  597. Entering a number in this field is equivalent to specifying the /Lpnum option 
  598. on the icc command line. 
  599.  
  600.  
  601. ΓòÉΓòÉΓòÉ 6.7. Title ΓòÉΓòÉΓòÉ
  602.  
  603. In the Title field, type some text to specify a title for the listing.  The 
  604. title name can be up to 256 characters long. You can also enter a subtitle 
  605. string in the Subtitle field. 
  606.  
  607. Selecting this item is equivalent to specifying the /Lt"string" option on the 
  608. icc command line. 
  609.  
  610.  
  611. ΓòÉΓòÉΓòÉ 6.8. Subtitle ΓòÉΓòÉΓòÉ
  612.  
  613. In the Subtitle field, type some text to specify a subtitle for the listing. 
  614. The subtitle name can be up to 256 characters long. You can also enter a Title 
  615. string in the Title field. 
  616.  
  617. Selecting this item is equivalent to specifying the /Lu"string" option on the 
  618. icc command line. 
  619.  
  620.  
  621. ΓòÉΓòÉΓòÉ 7. Debugging ΓòÉΓòÉΓòÉ
  622.  
  623. Use the Debugging page to set compiler options that are useful for debugging 
  624. your programs. 
  625.  
  626. The information generated by the VisualAge for C++ debugger and compiler as a 
  627. result of these options are provided to help you diagnose problems in your 
  628. code.  Do not use the debugging information as a programming interface. 
  629.  
  630. You have the following options: 
  631.  
  632.  Stop on error count of 
  633.            Set error count to stop compile on (/N) 
  634.  
  635.  Compiler warning level 
  636.            Specify type of messages to produce (/Wn) 
  637.  
  638.  Diagnostic options 
  639.            Control groups of diagnostic messages (/Wgrp) 
  640.  
  641.  Debugging information 
  642.            Control debugging information for debugger (/Ti, /Tn) 
  643.  
  644.  Use debug memory management 
  645.            Use debug memory management functions (/Tm) 
  646.  
  647.  Full exception dump information 
  648.            Provide machine-state dump when exception occurs (/Tx) 
  649.  
  650.  Generate unreferenced symbols 
  651.            Generate symbol table information for unreferenced variables. 
  652.            (/qdbgunref) 
  653.  
  654.  
  655. ΓòÉΓòÉΓòÉ 7.1. Debugging information ΓòÉΓòÉΓòÉ
  656.  
  657. Use the Debugging information radio buttons to produce debugging information 
  658. for use by the VisualAge for C++ debugger. You can produce the following levels 
  659. of debugging information: 
  660.  
  661.  None 
  662.            No debugging information is produced. Your executable cannot be 
  663.            debugged with the VisualAge for C++ debugger. The equivalent 
  664.            command-line option is /Ti-. 
  665.  
  666.  Line number 
  667.            Only line number information is produced. You can use the debugger 
  668.            to single-step through the source view of program, but cannot view 
  669.            variables. The equivalent command-line option is /Tn+. 
  670.  
  671.  All 
  672.            Complete debugging information is produced. You can use the full 
  673.            capability of the debugger when debugging your program. 
  674.  
  675.            Note:   If you used optimizing options, then the debugger can only 
  676.            provide limited information. See Generating Debugger Information. 
  677.  
  678.            The equivalent command-line option is /Ti+. 
  679.  
  680.  
  681. ΓòÉΓòÉΓòÉ 7.2. Stop on error count of ΓòÉΓòÉΓòÉ
  682.  
  683. In the Stop on error count of field, type a value between 1 and 65535 to 
  684. indicate the maximum number of errors at which to abort compilation.  If you 
  685. leave this field blank, compilation will continue until it is completed or 
  686. until an unrecoverable error is encountered. 
  687.  
  688. The type of error message (Info, Warning, Error, or Severe) that increments the 
  689. error counter is determined by the Compiler warning level option. 
  690.  
  691. Selecting this item is equivalent to specifying the /Nnum option on the icc 
  692. command line. 
  693.  
  694.  
  695. ΓòÉΓòÉΓòÉ 7.3. Compiler warning level ΓòÉΓòÉΓòÉ
  696.  
  697. Use the Compiler warning level setting to specify the type of messages you want 
  698. the compiler to produce. The type of compiler message that you indicate here is 
  699. also used to determine which type of error message will cause the error counter 
  700. to be incremented. 
  701.  
  702. Select one radio button from the group: 
  703.  
  704.  Severe 
  705.       Produce only severe error messages.  The equivalent command-line option 
  706.       is /W0. 
  707.  
  708.  Error 
  709.       Produce only severe errors and errors.  The equivalent command-line 
  710.       option is /W1. 
  711.  
  712.  Warning 
  713.       Produce severe errors, errors, and warnings.  The equivalent command-line 
  714.       option is /W2. 
  715.  
  716.  Info 
  717.       Produce all error message types (severe errors, errors, warnings, and 
  718.       information).  This is the default setting. The equivalent command-line 
  719.       option is /W3. 
  720.  
  721.  
  722. ΓòÉΓòÉΓòÉ 7.4. Diagnostic options ΓòÉΓòÉΓòÉ
  723.  
  724. From the Diagnostic options list box, select the diagnostic messages you want 
  725. generated.  The level of diagnostic messages generated is controlled by that 
  726. specified in the Compiler warning level option. For example, if you set the 
  727. compiler warning level to Warning, then diagnostic messages that are only at 
  728. the Information level do not appear. 
  729.  
  730. The diagnostic options help you examine your source code for possible 
  731. programming errors, weak programming style, and other information about the 
  732. structure of your program. 
  733.  
  734. If you do not select any diagnostic messages from this list box, none will be 
  735. generated. 
  736.  
  737. Selecting items from the Diagnostic options list box is equivalent to 
  738. specifying the /Wgrp options on the icc command line. 
  739.  
  740.  
  741. ΓòÉΓòÉΓòÉ 7.5. Use debug memory management ΓòÉΓòÉΓòÉ
  742.  
  743. Select the Use debug memory management check box to instruct the compiler to 
  744. use the debug memory management functions ( _debug_calloc, _debug_malloc, new, 
  745. and so on).  Selecting this option also defines the __DEBUG_ALLOC__ macro. 
  746.  
  747. Selecting this item is equivalent to specifying the /Tm option on the icc 
  748. command line. 
  749.  
  750.  
  751. ΓòÉΓòÉΓòÉ 7.6. Full exception dump information ΓòÉΓòÉΓòÉ
  752.  
  753. Select the Full exception dump information check box to provide a complete 
  754. machine-state dump when an exception occurs.  If this option is not selected, 
  755. only the exception message and address is provided when an exception occurs. 
  756.  
  757. Selecting this item is equivalent to specifying the /Tx option on the icc 
  758. command line. 
  759.  
  760.  
  761. ΓòÉΓòÉΓòÉ 7.7. Generate unreferenced symbols ΓòÉΓòÉΓòÉ
  762.  
  763. Select the Generate unreferenced symbols check box to generate symbol table 
  764. information for unreferenced variables. 
  765.  
  766. By default, such information is not generated for unreferenced variables. 
  767.  
  768.  
  769. ΓòÉΓòÉΓòÉ 8. Source ΓòÉΓòÉΓòÉ
  770.  
  771. Use the Source page to set compiler options that allow you to control how the 
  772. VisualAge for C++ compiler interprets your source file. These options are 
  773. especially useful, for example, if you are concerned with migrating code or 
  774. ensuring consistency with a particular language or standard. 
  775.  
  776. You have the following options: 
  777.  
  778.  Support long long ints 
  779.            Provide support for long long integer types. (/qlonglong) 
  780.  
  781.  Allow use of ddnames 
  782.            Allow use of ddnames in source code (/Sh) 
  783.  
  784.  Source file language 
  785.            Set default language (C or C++) of source files (/Td, /Tdc, /Tdp) 
  786.  
  787.  Language constructs 
  788.            Set language standard (/S) 
  789.  
  790.  Conversion rule 
  791.            Set type conversion rules (/Sr) 
  792.  
  793.  Use precompiled header files 
  794.            Use precompiled header files, if current (/Si) 
  795.  
  796.  Ignore obsolete keywords 
  797.            Ignore obsolete keywords (/Sm) 
  798.  
  799.  Make .OBJ the default extension 
  800.            Assume file names without extensions are object files (/Sd) 
  801.  
  802.  Allow use of '//' for comments 
  803.            Allow use of // comments in C files (/Ss) 
  804.  
  805.  Allow MBCS support 
  806.            Allow use of MBCS symbols in source code (/Sn) 
  807.  
  808.  Support digraphs 
  809.            Support digraphs and keyword operators (/qdigraph) 
  810.  
  811.  Enable support for memory file 
  812.            Allow use of memory files (/Sv) 
  813.  
  814.  Margins 
  815.            Set margins for source files (/Sg) 
  816.  
  817.  Sequence numbers 
  818.            Ignore text in sequence-number columns (/Sq) 
  819.  
  820.  Enum variables 
  821.            Control size of enum variables (/Su) 
  822.  
  823.  Packed structures and union variables 
  824.            Set alignment of data items within structs and unions (/Sp) 
  825.  
  826.  
  827. ΓòÉΓòÉΓòÉ 8.1. Source file language ΓòÉΓòÉΓòÉ
  828.  
  829. Use the Source file language setting to specify the default language (C or C++) 
  830. for source files. 
  831.  
  832. Select one radio button from the group: 
  833.  
  834.  Use filename extension 
  835.       Use the file name extension of the source file to determine its language. 
  836.       .CPP and .CXX files are compiled as C++ files and .C and all other 
  837.       unrecognized files are compiled as C files. This is the default setting. 
  838.       The equivalent icc command-line option is /Td. 
  839.  
  840.  C 
  841.       Compile all source and unrecognized files as C files. The equivalent icc 
  842.       command-line option is /Tdc. 
  843.  
  844.  C++ 
  845.       Compile all source and unrecognized files as C++ files and ensure that 
  846.       template functions are resolved correctly. The equivalent icc 
  847.       command-line option is /Tdp. 
  848.  
  849.  
  850. ΓòÉΓòÉΓòÉ 8.2. Language constructs ΓòÉΓòÉΓòÉ
  851.  
  852. Use the Language constructs setting to specify the default language standard. 
  853.  
  854. Select one radio button from the group: 
  855.  
  856.  ANSI 
  857.       Allow only those extensions that conform to the American National 
  858.       Standards Institute (ANSI).  The equivalent icc command-line option is 
  859.       /Sa. 
  860.  
  861.  SAA level 2 
  862.       Allow only those extensions defined by the SAA Level 2 specifications. 
  863.       This option is only valid for C files.  The equivalent icc command-line 
  864.       option is /S2. 
  865.  
  866.  Extended 
  867.       Allow all VisualAge for C++ language extensions.  This is the default 
  868.       setting.  The equivalent icc command-line option is /Se. 
  869.  
  870.  Compatibility 
  871.       Allow constructs compatible with older levels of the C++ language.  This 
  872.       option is only valid for C++ files. The equivalent icc command-line 
  873.       option is /Sc. 
  874.  
  875.  
  876. ΓòÉΓòÉΓòÉ 8.3. Conversion rule ΓòÉΓòÉΓòÉ
  877.  
  878. Use the Conversion rule setting to set type conversion rules.  This option is 
  879. only valid for C source files.  For C++, the conversion rule is to preserve 
  880. accuracy. 
  881.  
  882. Select one radio button from the group: 
  883.  
  884.  Preserve sign 
  885.       Preserve the sign of the number being converted.  This is an old-style 
  886.       rule that is non-conformant to ANSI specifications.  The equivalent icc 
  887.       command-line option is /Sr+. 
  888.  
  889.  Preserve accuracy 
  890.       Preserve the accuracy of the number being converted.  This new-style rule 
  891.       is equivalent to specifying the /Sr- option on the icc command line, and 
  892.       is the default setting. 
  893.  
  894.  
  895. ΓòÉΓòÉΓòÉ 8.4. Use precompiled header files ΓòÉΓòÉΓòÉ
  896.  
  897. Select the Use precompiled header files check box to use precompiled header 
  898. files if they exist and are current. 
  899.  
  900. Note:   To get the most benefit from using precompiled header files, you may 
  901. need to reorganize your source files, and use multiple precompiled header 
  902. objects. See Using Precompiled Headers for more information on using 
  903. precompiled headers. To use multiple precompiled header objects, use the 
  904. /Siname and /Finame command-line options, which you can enter on the User 
  905. notebook page. You can set these options on a subproject level, to use 
  906. different precompiled header options for different sets of source files. 
  907.  
  908. Selecting this item is equivalent to specifying the /Si+ option on the icc 
  909. command line. 
  910.  
  911.  
  912. ΓòÉΓòÉΓòÉ 8.5. Ignore obsolete keywords ΓòÉΓòÉΓòÉ
  913.  
  914. Select the Ignore obsolete keywords check box to ignore obsolete keywords, such 
  915. as near and far. Leave this check box blank if you want to treat obsolete 
  916. keywords like any other identifier. 
  917.  
  918. Selecting this item is equivalent to specifying the /Sm+ option on the icc 
  919. command line. 
  920.  
  921.  
  922. ΓòÉΓòÉΓòÉ 8.6. Make .OBJ the default extension ΓòÉΓòÉΓòÉ
  923.  
  924. Select the Make .OBJ the default extension check box to set the default file 
  925. name extension to .OBJ. This means that if an extension is not specified with a 
  926. file, then it is assumed to be an object file. 
  927.  
  928. Selecting this item is equivalent to specifying the /Sd- option on the icc 
  929. command line. 
  930.  
  931. If you do not accept .OBJ as the default extension in this check box, then the 
  932. default file name extension is .C if you selected C for the Source file 
  933. language option, and .CPP if you selected C++. 
  934.  
  935. The extension determines whether the file is treated as a C source file or as 
  936. an object file.  If the file has an extension of .C, then it is compiled and 
  937. linked.  If the file has an extension of .OBJ, then it is only linked. 
  938.  
  939.  
  940. ΓòÉΓòÉΓòÉ 8.7. Allow use of '//' for comments ΓòÉΓòÉΓòÉ
  941.  
  942. Select the Allow use of '//' for comments check box to allow the double slash 
  943. format of indicating comments. This type of comment is ended by a carriage 
  944. return. 
  945.  
  946. Note:   This option is only valid for C files.  C++ allows double slashes to 
  947.         indicate comments as part of the language. 
  948.  
  949.  Selecting this item is equivalent to specifying the /Ss+ option on the icc 
  950.  command line. 
  951.  
  952.  
  953. ΓòÉΓòÉΓòÉ 8.8. Allow MBCS support ΓòÉΓòÉΓòÉ
  954.  
  955. Select the Allow MBCS support check box to allow the use of multiple-byte 
  956. character set (MBCS) symbols in the source code. 
  957.  
  958. Selecting this item is equivalent to specifying the /Sn+ option on the icc 
  959. command line. 
  960.  
  961.  
  962. ΓòÉΓòÉΓòÉ 8.9. Support digraphs ΓòÉΓòÉΓòÉ
  963.  
  964. Select the Support new digraphs and keywords check box to allow the use of 
  965. digraphs and keyword operators in your code. By default, digraphs are not 
  966. permitted. 
  967.  
  968. Selecting this item is equivalent to specifying the  /qdigraph option on the 
  969. icc command line. 
  970.  
  971.  
  972. ΓòÉΓòÉΓòÉ 8.10. Allow use of ddnames support ΓòÉΓòÉΓòÉ
  973.  
  974. Select the Allow use of ddnames support check box to allow the use of ddnames 
  975. in the source code. 
  976.  
  977. Selecting this item is equivalent to specifying the /Sh+ option on the icc 
  978. command line. 
  979.  
  980.  
  981. ΓòÉΓòÉΓòÉ 8.11. Enable support for memory file ΓòÉΓòÉΓòÉ
  982.  
  983. Select the Enable support for memory file check box to allow the use of memory 
  984. files. 
  985.  
  986. Selecting this item is equivalent to specifying the /Sv+ option on the icc 
  987. command line. 
  988.  
  989.  
  990. ΓòÉΓòÉΓòÉ 8.12. Margins ΓòÉΓòÉΓòÉ
  991.  
  992. Use the Margins setting to specify values for the input file margins.  Text 
  993. which is outside the specified margins is ignored. The Margins setting is 
  994. useful for importing source files that were created on other systems and 
  995. contain characters you want to ignore. 
  996.  
  997. This option is only valid for C source files. 
  998.  
  999.   In the Left entry field, type a value between 1 and 65535 to specify a value 
  1000.    for the left margin. 
  1001.  
  1002.   In the Right entry field, type an asterisk to denote no right margin, or 
  1003.    enter a value between 1 and 65535.  The value specified for the right margin 
  1004.    must be greater than or equal than that specified for the left margin. 
  1005.  
  1006.  Selecting this item is equivalent to specifying the /Sg[|][,r|*] option on the 
  1007.  icc command line, where l and r are integers indicating the left and right 
  1008.  margins, respectively. 
  1009.  
  1010.  
  1011. ΓòÉΓòÉΓòÉ 8.13. Sequence numbers ΓòÉΓòÉΓòÉ
  1012.  
  1013. Use the Sequence numbers setting to specify columns in which sequence column 
  1014. numbers appear, and ignore the text in those columns.  Setting Sequence numbers 
  1015. is useful for importing source files from systems that use sequence numbers. 
  1016.  
  1017. This option is only valid for C source files. 
  1018.  
  1019.   In the Left entry field, type a value from 1 to 65535 to specify the left 
  1020.    sequence column. 
  1021.  
  1022.   In the Right entry field, type an asterisk to denote no right sequence 
  1023.    column, or enter a value from 1 to 65535.  The value specified for the right 
  1024.    column must be greater than or equal to the value specified for the left 
  1025.    column. 
  1026.  
  1027.  Selecting this item is equivalent to specifying the /Sq[l][,r] option on the 
  1028.  icc command line, where l and r are integers respectively indicating the left 
  1029.  and right columns where sequence numbers appear. 
  1030.  
  1031.  
  1032. ΓòÉΓòÉΓòÉ 8.14. Enum variables ΓòÉΓòÉΓòÉ
  1033.  
  1034. Use the Enum variables setting to control the size of enum variables in the 
  1035. source code. 
  1036.  
  1037. Select one radio button from the group: 
  1038.  
  1039.  SAA 
  1040.       Use the SAA rules, that is, make all enum variables the size of the 
  1041.       smallest integral type that can contain all variables.  This is the 
  1042.       default setting.  The equivalent icc command-line option is /Su-. 
  1043.  
  1044.  1 byte 
  1045.       Make all enum variables 1 byte.  The equivalent icc command-line option 
  1046.       is /Su1. 
  1047.  
  1048.  2 byte 
  1049.       Make all enum variables 2 bytes.  The equivalent icc command-line option 
  1050.       is /Su2. 
  1051.  
  1052.  4 byte 
  1053.       Make all enum variables 4 byte.  The equivalent icc command-line option 
  1054.       is /Su4. 
  1055.  
  1056.  
  1057. ΓòÉΓòÉΓòÉ 8.15. Packed structures and unions ΓòÉΓòÉΓòÉ
  1058.  
  1059. Use the Packed structures and unions setting to set the alignment or packing of 
  1060. data items within structs and unions. 
  1061.  
  1062. Select one radio button from the group: 
  1063.  
  1064.  1 byte 
  1065.       Set the most restrictive alignment of structure and union members to 
  1066.       1-byte.  The equivalent icc command-line option is /Sp1. 
  1067.  
  1068.  2 byte 
  1069.       Set the most restrictive alignment of structure and union members to 
  1070.       2-byte.  The equivalent icc command-line option is /Sp2. 
  1071.  
  1072.  4-byte 
  1073.       Set the most restrictive alignment of structure and union members to 
  1074.       4-byte.  The equivalent icc command-line option is /Sp4. 
  1075.  
  1076.  8-byte 
  1077.       Set the most restrictive alignment of structure and union members to 
  1078.       8-byte.  The equivalent icc command-line option is /Sp8. 
  1079.  
  1080.  16-byte 
  1081.       Set the most restrictive alignment of structure and union members to 
  1082.       16-byte.  The equivalent icc command-line option is /Sp16. 
  1083.  
  1084.  
  1085. ΓòÉΓòÉΓòÉ 8.16. Support long long ints ΓòÉΓòÉΓòÉ
  1086.  
  1087. Select this check box to enable support of long long integers.  If this check 
  1088. box is not selected, long long integers are not permitted in your program. 
  1089.  
  1090. By default, support for long long ints is enabled. 
  1091.  
  1092.  
  1093. ΓòÉΓòÉΓòÉ 9. Object ΓòÉΓòÉΓòÉ
  1094.  
  1095. Use the  Object page to set compiler options that allow you to specify the type 
  1096. of code that the compiler will produce. 
  1097.  
  1098. You have the following options: 
  1099.  
  1100.  Executable environment 
  1101.            Specify VisualAge for C++ runtime environment, or subsystem without 
  1102.            runtime environment (/R) 
  1103.  
  1104.  Library selection 
  1105.            Select type of library to link to (/Gm) 
  1106.  
  1107.  Library Linkage 
  1108.            Link to .dll or .lib versions of runtime libraries (/Gd) 
  1109.  
  1110.  Target processor 
  1111.            Optimize for processor type (/qtunenum) 
  1112.  
  1113.  Optimization 
  1114.            Select type of optimization (/O, /Oc) 
  1115.  
  1116.  Do not perform stack pointer optimizations 
  1117.            Turn off optimizations involving the stack pointer (/Op-) 
  1118.  
  1119.  Limit working set size while optimizing 
  1120.            Limit working set size to approximately 35Mb (/Om) 
  1121.  
  1122.  Invoke the instruction scheduler 
  1123.            Control invocation of instruction scheduler during optimization 
  1124.            (/Os) 
  1125.  
  1126.  Data segment 
  1127.            Rename default data and constant segments (/Nd) 
  1128.  
  1129.  Code segment 
  1130.            Set default name for code segment (/Nt) 
  1131.  
  1132.  Inlining 
  1133.            Control inlining of user code (/Oi) 
  1134.  
  1135.  Run-time type information 
  1136.            Specify whether run-time type information is enabled (/qrtti) 
  1137.  
  1138.  Enable performance analyzer 
  1139.            Enable executable for performance analysis (/Gh) 
  1140.  
  1141.  Remove stack probes in function prologs 
  1142.            Remove stack probes in function prologs (/Gs) 
  1143.  
  1144.  Remove C++ exception information 
  1145.            Remove exception-handling information from code (/Gx) 
  1146.  
  1147.  Hide default library info from linker 
  1148.            Suppress linker information about the default libraries (/Gn) 
  1149.  
  1150.  Use fast floating point method 
  1151.            Use fast floating-point execution (/Gf) 
  1152.  
  1153.  Remove unused data in intemediate files 
  1154.            Remove unused data with the intermediate code linker (/Gu) 
  1155.  
  1156.  Invoke intermediate code linker 
  1157.            Use intermediate code linker when compiling (/Ol) 
  1158.  
  1159.  Generate FWAIT after each FP load 
  1160.            Generate FWAIT instruction after each floating-point load 
  1161.            instruction (/Gw) 
  1162.  
  1163.  Use fast integer method 
  1164.            Use fast integer execution (/Gi) 
  1165.  
  1166.  Aliasing Assertions 
  1167.            Set assertion to be used for aliasing (/qalias) 
  1168.  
  1169.  Aliasing Pragmas 
  1170.            Define pragmas to be used for aliasing (/qignprag) 
  1171.  
  1172.  Default calling convention 
  1173.            Set the default calling convention to be used (/M) 
  1174.  
  1175.  Isolated call names 
  1176.            Functions that do not alter visible data objects at function call 
  1177.            time (/qisolated_call) 
  1178.  
  1179.  Read-only string literals 
  1180.            Set the storage type for string literals (/qro) 
  1181.  
  1182.  
  1183. ΓòÉΓòÉΓòÉ 9.1. Executable environment ΓòÉΓòÉΓòÉ
  1184.  
  1185. Use the Executable environment setting to control the executable runtime 
  1186. environment. 
  1187.  
  1188. Select one radio button from the group: 
  1189.  
  1190.  Runtime 
  1191.       Generate executable code that runs in a VisualAge for C++ runtime 
  1192.       environment.  This is the default setting.  The equivalent icc 
  1193.       command-line option is /Re. 
  1194.  
  1195.  Subsystem 
  1196.       Generate executable code that can be used as a subsystem without a 
  1197.       runtime environment.  The equivalent icc command-line option is /Rn. 
  1198.  
  1199.  
  1200. ΓòÉΓòÉΓòÉ 9.2. Library selection ΓòÉΓòÉΓòÉ
  1201.  
  1202. Use the Library selection setting to specify the version of the library you 
  1203. want to link to. 
  1204.  
  1205. Select one radio button from the group: 
  1206.  
  1207.  Single-thread 
  1208.       Link with the single-thread version of the library (no multithread 
  1209.       capabilities).  This is the default setting.  The equivalent icc 
  1210.       command-line option is /Gm-. 
  1211.  
  1212.  Multithread 
  1213.       Link with the multithread version of the library.  The equivalent icc 
  1214.       command-line option is /Gm+. 
  1215.  
  1216.  
  1217. ΓòÉΓòÉΓòÉ 9.3. Library linkage ΓòÉΓòÉΓòÉ
  1218.  
  1219. Use the Library linkage setting to specify how you want to link to the runtime 
  1220. libraries. 
  1221.  
  1222. Select one radio button from the group: 
  1223.  
  1224.  Static 
  1225.       Statically link to the runtime libraries.  All external names beginning 
  1226.       with the letters Dos, Kbd, and Vio are reserved.  This is the default 
  1227.       setting.  The equivalent icc command-line option is /Gd-. 
  1228.  
  1229.  Dynamic 
  1230.       Dynamically link to the runtime libraries.   The equivalent icc 
  1231.       command-line option is /Gd+. 
  1232.  
  1233.  
  1234. ΓòÉΓòÉΓòÉ 9.4. Target processor ΓòÉΓòÉΓòÉ
  1235.  
  1236. Use the Target processor setting to specify which processor to optimize for. 
  1237.  
  1238. Select one radio button from the group: 
  1239.  
  1240.  Blend 
  1241.       Optimize code for use on all x86 processors. The code generated also 
  1242.       includes optimizations that specifically help the execution on Pentium 
  1243.       and 486 processors that do not significantly detract from the performance 
  1244.       on other x86 processors. 
  1245.  
  1246.  80386 
  1247.       Optimize code for use with the 80386 processor.  The code generated will 
  1248.       also run on a 80486 or Pentium processor.  This is the default setting. 
  1249.  
  1250.  80486 
  1251.       Optimize code for use with the 80486 processor.  The code generated will 
  1252.       also run on a 80386 or Pentium processor. 
  1253.  
  1254.  Pentium 
  1255.       Optimize code for use on Pentium processors. The code generated will also 
  1256.       run on a 80386 or 80486 processor. 
  1257.  
  1258.  Pentium Pro 
  1259.       Optimize code for use on Pentium Pro processors. The code generated will 
  1260.       also run on a 80386 or 80486 processor. 
  1261.  
  1262.  The equivalent icc command-line option is /qtune. 
  1263.  
  1264.  
  1265. ΓòÉΓòÉΓòÉ 9.5. Optimization ΓòÉΓòÉΓòÉ
  1266.  
  1267. Use the Optimization options to select the type of optimization you want 
  1268. performed. You can select the following options: 
  1269.  
  1270.  Off 
  1271.            Perform no optimization. Select this option when you want to debug 
  1272.            your application. The equivalent command-line option is /O-. 
  1273.  
  1274.  Compact 
  1275.            Optimize for speed and size. The compiler will perform all 
  1276.            optimizations that do not increase the size of the executable. The 
  1277.            equivalent command-line option is /Oc+. 
  1278.  
  1279.  Speed 
  1280.            Optimize for speed. The compiler will perform all optimizations, 
  1281.            including those that increase the size of the executable (such as 
  1282.            loop unrolling). The equivalent command-line option is /O+. 
  1283.  
  1284.  
  1285. ΓòÉΓòÉΓòÉ 9.6. Do not perform stack pointer optimization ΓòÉΓòÉΓòÉ
  1286.  
  1287. To disable stack pointer optimizations, select the Do not perform stack pointer 
  1288. optimizations check box. 
  1289.  
  1290. Note:   Turning off stack pointer optimizations is not recommended because it 
  1291.         decreases the performance of your executable file. 
  1292.  
  1293.  Selecting this item is equivalent to specifying the /Op- option on the icc 
  1294.  command line. 
  1295.  
  1296.  If you do not select this option, the default is to perform stack pointer 
  1297.  optimizations if the Optimization (/O) option is selected. 
  1298.  
  1299.  
  1300. ΓòÉΓòÉΓòÉ 9.7. Limit working set size while optimizing ΓòÉΓòÉΓòÉ
  1301.  
  1302. Select the Limit working set size while optimizing check box to limit the 
  1303. working set size to approximately 35Mb while optimizing. 
  1304.  
  1305. If you do not select this option, the default is to impose no limit on the 
  1306. working set size. 
  1307.  
  1308. Selecting this item is equivalent to specifying the /Om option on the icc 
  1309. command line. 
  1310.  
  1311.  
  1312. ΓòÉΓòÉΓòÉ 9.8. Invoke the instruction scheduler ΓòÉΓòÉΓòÉ
  1313.  
  1314. Select the Invoke the instruction scheduler check box to instruct the compiler 
  1315. to use the instruction scheduler. 
  1316.  
  1317. If you do not select this option, the default is to not invoke the instruction 
  1318. scheduler (if optimization is off). 
  1319.  
  1320. Selecting this item is equivalent to specifying the /Os+ option on the icc 
  1321. command line. 
  1322.  
  1323.  
  1324. ΓòÉΓòÉΓòÉ 9.9. Data segment ΓòÉΓòÉΓòÉ
  1325.  
  1326. Use this option to specify the names of default data, uninitialized data, and 
  1327. constant segments as nameDATA32, nameBSS32, and nameCONST32_RO. You can then 
  1328. give the segments special attributes by referring to their names.  The renamed 
  1329. segments are not placed in the default data group. 
  1330.  
  1331. If you leave this field blank, the default names DATA32, BSS32, and CONST32_RO 
  1332. are used. 
  1333.  
  1334. You can also set a default name for code and text segments, with the Code 
  1335. segment option. You can rename the exception-handling segments with the /Nx 
  1336. option in the User entry field on the User page. 
  1337.  
  1338. Specifying a data segment name is equivalent to specifying the /Ndname option 
  1339. on the icc command line. 
  1340.  
  1341.  
  1342. ΓòÉΓòÉΓòÉ 9.10. Code segment ΓòÉΓòÉΓòÉ
  1343.  
  1344. In the Code segment entry field, type the default name prefix you want to use 
  1345. for code and text segments.  The name nameCODE32 is used, where name is the 
  1346. name you entered.  You can then give the segment special attributes by 
  1347. referring to its name. 
  1348.  
  1349. If you leave this field blank, the default name CODE32 is used. 
  1350.  
  1351. You can also set the name for default data and constant segments, with the Data 
  1352. segment option. You can rename the exception-handling segments with the /Nx 
  1353. option in the User entry field on the User page. 
  1354.  
  1355. Specifying a code segment name is equivalent to specifying the /Ntname option 
  1356. on the icc command line. 
  1357.  
  1358.  
  1359. ΓòÉΓòÉΓòÉ 9.11. Inlining ΓòÉΓòÉΓòÉ
  1360.  
  1361. Use the Inlining setting to control inlining of user code. 
  1362.  
  1363.   Select the Turn on check box to inline all user functions qualified with the 
  1364.    _Inline (for C) or inline (for C++) keyword.  Selecting this item is 
  1365.    equivalent to specifying the /Oi+ option on the icc command line. 
  1366.  
  1367.    Note:   When the Optimization (/O) option is active, inlining is turned on 
  1368.            by default. 
  1369.  
  1370.  
  1371.   In the Threshold entry field, type a number from 1 to 65535 to inline all 
  1372.    user functions qualified with the _Inline or inline keyword or that are 
  1373.    smaller than the Threshold value in abstract code units.  If you leave this 
  1374.    field blank, all user functions qualified with the _Inline or inline keyword 
  1375.    will be inlined regardless of their size. 
  1376.  
  1377.    Selecting this item is equivalent to specifying the /Oivalue option on the 
  1378.    icc command line. 
  1379.  
  1380.  
  1381. ΓòÉΓòÉΓòÉ 9.12. Enable performance analyzer ΓòÉΓòÉΓòÉ
  1382.  
  1383. Select the Enable performance analyzer check box to enable code to be run by 
  1384. the Performance Analyzer and other profiling tools by generated hooks in 
  1385. function prologs. 
  1386.  
  1387. Note:   To enable code for the Performance Analyzer, you must also select the 
  1388.         Generate debugging information check box on the Debugging page of the 
  1389.         Compiler Options notebook. 
  1390.  
  1391.  Selecting this item is equivalent to specifying the /Gh+ option on the icc 
  1392.  command line. 
  1393.  
  1394.  
  1395. ΓòÉΓòÉΓòÉ 9.13. Remove stack probes in function prologs ΓòÉΓòÉΓòÉ
  1396.  
  1397. Select the Remove stack probes in function prologs check box to remove stack 
  1398. probes in function prologs generated by the compiler. 
  1399.  
  1400. Selecting this item is equivalent to specifying the /Gs+ option on the icc 
  1401. command line. 
  1402.  
  1403.  
  1404. ΓòÉΓòÉΓòÉ 9.14. Remove C++ exception information ΓòÉΓòÉΓòÉ
  1405.  
  1406. Select the Remove C++ exception information check box to remove C++ exception 
  1407. handling information from the code generated by the compiler. 
  1408.  
  1409. Selecting this item is equivalent to specifying the /Gx+ option on the icc 
  1410. command line. 
  1411.  
  1412.  
  1413. ΓòÉΓòÉΓòÉ 9.15. Hide default library info from linker ΓòÉΓòÉΓòÉ
  1414.  
  1415. Select the Hide default library info from linker check box to indicate that the 
  1416. compiler should not provide linker information about the default libraries 
  1417. according to other Object code options. All libraries you want to link to must 
  1418. then be explicitly defined for the linker. 
  1419.  
  1420. Selecting this item is equivalent to specifying the /Gn+ option on the icc 
  1421. command line. 
  1422.  
  1423. If you do not select this item, the compiler identifies the the default 
  1424. libraries for the linker to use, according to other Object code options. This 
  1425. is equivalent to specifying the /Gn- option on the icc command line. 
  1426.  
  1427.  
  1428. ΓòÉΓòÉΓòÉ 9.16. Use fast floating point method ΓòÉΓòÉΓòÉ
  1429.  
  1430. Select the Use fast floating point method check box to indicate that you want 
  1431. the compiler to use fast floating-point execution. 
  1432.  
  1433. If your program does not need to abide by ANSI rules regarding the processing 
  1434. of double and float types, you can use this option to increase your program's 
  1435. performance. 
  1436.  
  1437. Because the floating-point method does not perform all the conversions 
  1438. specified by the ANSI standards, the results obtained may differ from results 
  1439. obtained using ANSI methods, but are often more precise. 
  1440.  
  1441. Selecting this item is equivalent to specifying the /Gf+ option on the icc 
  1442. command line. 
  1443.  
  1444.  
  1445. ΓòÉΓòÉΓòÉ 9.17. Generate code to run at ring 0 ΓòÉΓòÉΓòÉ
  1446.  
  1447. Select the Generate code to run at ring 0 check box to indicate that you want 
  1448. to generate object code to run at ring 0. Use this option if you are writing 
  1449. code such as device drivers or operating systems, that will run at ring 0 
  1450. instead of ring 3. 
  1451.  
  1452. If you select this item, you should also set the Executable environment option 
  1453. to Subsystem. Set this option on the first page under the Objects notebook tab. 
  1454.  
  1455. Selecting Generate code to run at ring 0 is equivalent to specifying the /Gr+ 
  1456. option on the icc command line. 
  1457.  
  1458.  
  1459. ΓòÉΓòÉΓòÉ 9.18. Remove unused data in intermediate files ΓòÉΓòÉΓòÉ
  1460.  
  1461. Select the Remove unused data in intermediate files check box to tell the 
  1462. compiler that external functions may not use data defined in the intermediate 
  1463. files being linked.  The data is only used within the intermediate files being 
  1464. linked, with the exception of data qualified with the _Export keyword. 
  1465.  
  1466. Selecting this item is equivalent to specifying the /Gu+ option on the icc 
  1467. command line. 
  1468.  
  1469. If you do not select this option, external functions will be allowed to use 
  1470. data in the intermediate files being linked (equivalent to specifying the /Gu- 
  1471. option on the icc command line). 
  1472.  
  1473.  
  1474. ΓòÉΓòÉΓòÉ 9.19. Invoke intermediate code linker ΓòÉΓòÉΓòÉ
  1475.  
  1476. Select the Invoke intermediate code linker check box to instruct the compiler 
  1477. to pass code through the intermediate code linker before generating an object 
  1478. file. 
  1479.  
  1480. Selecting this item is equivalent to specifying the /Ol+ option on the icc 
  1481. command line. 
  1482.  
  1483. See  Using the Intermediate Code Linker for more information on intermediate 
  1484. code. 
  1485.  
  1486.  
  1487. ΓòÉΓòÉΓòÉ 9.20. Generate FWAIT after each FP load ΓòÉΓòÉΓòÉ
  1488.  
  1489. Select the Generate FWAIT after each FP load check box to generate the FWAIT 
  1490. instruction after each floating-point load instruction.  This allows the 
  1491. program to take a floating-point stack overflow exception immediately after the 
  1492. load instruction that caused it. 
  1493.  
  1494. Note:   This option is not recommended because it increases the size of your 
  1495.         executable file and greatly decreases its performance. 
  1496.  
  1497.  Selecting this item is equivalent to specifying the /Gw+ option on the icc 
  1498.  command line. 
  1499.  
  1500.  
  1501. ΓòÉΓòÉΓòÉ 9.21. Use fast integer method ΓòÉΓòÉΓòÉ
  1502.  
  1503. Select the Use fast integer method check box to use fast integer execution. 
  1504.  
  1505. If you are shifting bits by a variable amount, you can use fast integer 
  1506. execution to ensure that for values greater than 31, the bits are shifted by 
  1507. the result of a modulo 32 of the value.  Otherwise, the result of the shift is 
  1508. 0. 
  1509.  
  1510. Note:   If your shift value is a constant greater than 32, the result will 
  1511.         always be 0. 
  1512.  
  1513.  Selecting this item is equivalent to specifying the /Gi+ option on the icc 
  1514.  command line. 
  1515.  
  1516.  
  1517. ΓòÉΓòÉΓòÉ 9.22. Aliasing Assertions ΓòÉΓòÉΓòÉ
  1518.  
  1519. Select one or more check boxes to specify what kind of aliasing can take place 
  1520. in the compilation unit.  Usually, less aliasing allows the compiler to perform 
  1521. more aggressive optimizations.  The available assertion options are: 
  1522.  
  1523.   ANSI type-based aliasing. 
  1524.   Variables are disjoint from pointers unless the address is taken. 
  1525.   Pointers are never aliased. 
  1526.   Pointers to different types are never aliased. 
  1527.  
  1528.  All options except ANSI type-based aliasing are valid only for C files. 
  1529.  
  1530.  
  1531. ΓòÉΓòÉΓòÉ 9.23. Aliasing Pragmas ΓòÉΓòÉΓòÉ
  1532.  
  1533. Specify the aliasing pragma to be used or whether to process aliasing 
  1534. information.  The available options are: 
  1535.  
  1536.   Process aliasing information 
  1537.   Ignore #pragma disjoint 
  1538.   Ignore #pragma isolated_call 
  1539.   Ignore all aliasing #pragmas 
  1540.  
  1541.  You can choose to ignore #pragma disjoint, #pragma isolated_call, or both. 
  1542.  
  1543.  
  1544. ΓòÉΓòÉΓòÉ 9.24. Default calling convention ΓòÉΓòÉΓòÉ
  1545.  
  1546. Select a radio button to specify the default calling convention to be used. 
  1547. The calling conventions that you can select are: 
  1548.  
  1549.   Optlink 
  1550.   System 
  1551.   Cdecl 
  1552.   Standard Call 
  1553.  
  1554.  The default is the Optlink calling convention. 
  1555.  
  1556.  You must include the header files for libraries that use a different calling 
  1557.  convention from the one that you specify.  The libraries use the following 
  1558.  calling conventions: 
  1559.  
  1560.  VisualAge for C++ libraries 
  1561.            Functions use the Optlink calling convention.  Include the VisualAge 
  1562.            for C++ library header files to call VisualAge for C++ functions 
  1563.            when you set the System, Cdecl, or Standard Call option. 
  1564.  Toolkit libraries 
  1565.            APIs use the Standard Call calling convention.  Include the Toolkit 
  1566.            library header files to call Windows APIs when you set the Optlink, 
  1567.            Cdecl, or Standard Call option. 
  1568.  
  1569.  If you do not include the header files, then your code will attempt to call 
  1570.  functions with the calling convention you set rather than with the calling 
  1571.  convention the function requires. 
  1572.  
  1573.  
  1574. ΓòÉΓòÉΓòÉ 9.25. Isolated call names ΓòÉΓòÉΓòÉ
  1575.  
  1576. List all the function names that will have no side affects when they are 
  1577. invoked.  No side effects means that entities in the invoking program will not 
  1578. be affected by invocations of the specified functions.  This provides 
  1579. opportunities for compiler optimizations. 
  1580.  
  1581. By default, no assertions are made about side effects. 
  1582.  
  1583.  
  1584. ΓòÉΓòÉΓòÉ 9.26. Read-only string literals ΓòÉΓòÉΓòÉ
  1585.  
  1586. Select the Read-only string literals check box to specify that string literals 
  1587. are placed in read-only storage. If you do not select this check box, string 
  1588. literals will be placed in read/write storage. 
  1589.  
  1590. By default, string literals are placed in read-only storage. 
  1591.  
  1592.  
  1593. ΓòÉΓòÉΓòÉ 9.27. Enable Run-time type information ΓòÉΓòÉΓòÉ
  1594.  
  1595. Select the Enable Run-time type information check box to generate information 
  1596. for the typeid operator and the dynamic_cast operator. 
  1597.  
  1598. You can specify: 
  1599.  
  1600.  None 
  1601.            Do not generate runtime type information. 
  1602.  
  1603.  All 
  1604.            Generate the information needed for the RTTI typeid and dynamic_cast 
  1605.            operators. 
  1606.  
  1607.  typeid only 
  1608.            Generate the information needed for the RTTI typeid operator. 
  1609.  
  1610.  dynamic_cast only 
  1611.            Generate the information needed for the RTTI dynamic_cast operator. 
  1612.  
  1613.  By default, run-time type information is disabled. 
  1614.  
  1615.  
  1616. ΓòÉΓòÉΓòÉ 10. Preprocessor ΓòÉΓòÉΓòÉ
  1617.  
  1618. Use the Preprocessor page to set compiler options that let you control the use 
  1619. of the preprocessor. 
  1620.  
  1621. You have the following options: 
  1622.  
  1623.  Send the output to stdout 
  1624.            Send preprocessor output to sdout (/Pd) 
  1625.  
  1626.  Retain comments 
  1627.            Retain source code comments in preprocessor output (/Pc) 
  1628.  
  1629.  No line numbers 
  1630.            Suppress creation of #line directives in preprocessor output (/Pe) 
  1631.  
  1632.  Remove all user-defined macros 
  1633.            Remove user-defined macros from preprocessor output (/U*) 
  1634.  
  1635.  Remove 
  1636.            Remove specified macros from preprocessor output (/Umacro) 
  1637.  
  1638.  Define 
  1639.            Define preprocessor macros (/Dname) 
  1640.  
  1641.  
  1642. ΓòÉΓòÉΓòÉ 10.1. Send the output to stdout ΓòÉΓòÉΓòÉ
  1643.  
  1644. Select Send the output to stdout check box to send the preprocessor output to 
  1645. the stream specified by stdout. 
  1646.  
  1647. Selecting this item is equivalent to specifying the /Pd+ option on the icc 
  1648. command line. 
  1649.  
  1650. If you do not select this item, the created preprocessor output file will have 
  1651. the same name as the source file with a .I file name extension.  This is 
  1652. equivalent to specifying the /Pd- option on the icc command line. 
  1653.  
  1654.  
  1655. ΓòÉΓòÉΓòÉ 10.2. Retain comments ΓòÉΓòÉΓòÉ
  1656.  
  1657. Select the Retain comments check box to include the source code comments in the 
  1658. generated preprocessor output file. 
  1659.  
  1660. Selecting this item is equivalent to specifying the /Pc+ option on the icc 
  1661. command line. 
  1662.  
  1663.  
  1664. ΓòÉΓòÉΓòÉ 10.3. No line numbers ΓòÉΓòÉΓòÉ
  1665.  
  1666. Select the No line numbers check box to suppress the creation of #line 
  1667. directives in preprocessor output. 
  1668.  
  1669. Selecting this item is equivalent to specifying the /Pe+ option on the icc 
  1670. command line. 
  1671.  
  1672.  
  1673. ΓòÉΓòÉΓòÉ 10.4. Remove all user-defined macros ΓòÉΓòÉΓòÉ
  1674.  
  1675. Select the Remove all user-defined macros check box to remove all macros that 
  1676. are user-defined. 
  1677.  
  1678. Note:   This option does not affect macros such as _DATE_, _TIME_, _TIMESTAMP_, 
  1679.         _FILE_, and _FUNCTION_, nor does it undefine macros defined in source 
  1680.         code. 
  1681.  
  1682.  Selecting this item is equivalent to specifying the /U* option on the icc 
  1683.  command line. 
  1684.  
  1685.  
  1686. ΓòÉΓòÉΓòÉ 10.5. Remove ΓòÉΓòÉΓòÉ
  1687.  
  1688. In the Remove entry box, specify the names of macros you want to remove from 
  1689. the preprocessor output.  For example, if you want to remove the macros 
  1690. _MY_MACRO_ and _EDS_MACRO_, then you would enter: 
  1691.  
  1692. _MY_MACRO_
  1693. _EDS_MACRO_
  1694.  
  1695. Entering the names of macros in this field is equivalent to specifying the 
  1696. /Uname option on the icc command line. 
  1697.  
  1698.  
  1699. ΓòÉΓòÉΓòÉ 10.6. Define ΓòÉΓòÉΓòÉ
  1700.  
  1701. In the Define entry box, specify the names and values for each preprocessor 
  1702. macro you want to define.  For example, if you want to define the macros 
  1703. _MY_MACRO_ to the value 43 and _EDS_MACRO_, to the value 28, then you would 
  1704. enter: 
  1705.  
  1706. _MY_MACRO_=43
  1707. _EDS_MACRO_=28
  1708.  
  1709. The macros you define in the Define list box will override macros already 
  1710. defined in your source code. 
  1711.  
  1712. Selecting this item is equivalent to specifying the /Dname[::n], or /Dname[=n] 
  1713. option on the icc command line. 
  1714.  
  1715.  
  1716. ΓòÉΓòÉΓòÉ 11. Other ΓòÉΓòÉΓòÉ
  1717.  
  1718. Use the Other page to set VisualAge for C++ compiler options for the following: 
  1719.  
  1720.  Display compiler logo 
  1721.            Display compiler logo when compiler invoked (/Q-) 
  1722.  
  1723.  Length of external names 
  1724.            Set significant length for external names (/Hnum) 
  1725.  
  1726.  Version string 
  1727.            Set version string (/V) 
  1728.  
  1729.  Enable smart linking 
  1730.            Remove unreachable functions (/Gl) 
  1731.  
  1732.  
  1733. ΓòÉΓòÉΓòÉ 11.1. Display compiler logo ΓòÉΓòÉΓòÉ
  1734.  
  1735. Select the Display the logo check box to display the compiler logo when the 
  1736. compiler is invoked.  The logo is displayed on stderr. 
  1737.  
  1738. Selecting this item is equivalent to specifying the /Q- option on the icc 
  1739. command line. 
  1740.  
  1741.  
  1742. ΓòÉΓòÉΓòÉ 11.2. Length of external names ΓòÉΓòÉΓòÉ
  1743.  
  1744. In the Length of external names entry field, type a number from 6 to 255 to set 
  1745. the significant length for external names. 
  1746.  
  1747. Setting this option is equivalent to specifying the /Hnum option on the icc 
  1748. command line. 
  1749.  
  1750.  
  1751. ΓòÉΓòÉΓòÉ 11.3. Version string ΓòÉΓòÉΓòÉ
  1752.  
  1753. In the Version string entry field, type a text string up to 256 characters long 
  1754. to include in the object and executable files. 
  1755.  
  1756. This is equivalent to specifying the /V"string" option on the icc command line. 
  1757.  
  1758.  
  1759. ΓòÉΓòÉΓòÉ 11.4. Parameters passed to linker ΓòÉΓòÉΓòÉ
  1760.  
  1761. In the Parameters passed to linker entry list box, type any parameters you want 
  1762. passed to the linker.  The icc default parameters are also passed. 
  1763.  
  1764. This is equivalent to specifying the /B"options" option on the icc command 
  1765. line. 
  1766.  
  1767.  
  1768. ΓòÉΓòÉΓòÉ 11.5. Enable smart linking ΓòÉΓòÉΓòÉ
  1769.  
  1770. Click on the Enable smart linking check box to remove unreachable functions. 
  1771. The /OPTFUNC option is passed to the linker.  The linker removes functions that 
  1772. are: 
  1773.  
  1774.   Not referenced anywhere in the object code 
  1775.   Rendered unreferenced by the removal of other functions 
  1776.   Not exported for use in other files 
  1777.  
  1778.  This is equivalent to specifying the /Gl option on the icc command line. 
  1779.  
  1780.  
  1781. ΓòÉΓòÉΓòÉ 12. User ΓòÉΓòÉΓòÉ
  1782.  
  1783. Use the User page to enter options that are passed verbatim to the compiler. 
  1784. Enter the options in the User entry field. 
  1785.  
  1786.  
  1787. ΓòÉΓòÉΓòÉ 12.1. User ΓòÉΓòÉΓòÉ
  1788.  
  1789. In the User entry field, type any options that you want passed to the compiler, 
  1790. verbatim. Use the command-line syntax for all compiler options. See Compiler 
  1791. Options for a summary of options and their command-line syntax. 
  1792.  
  1793. Note:   No consistency checking or conflict resolution is performed on any 
  1794.         options you enter in this field until the compiler is actually invoked. 
  1795.  
  1796.  
  1797. ΓòÉΓòÉΓòÉ 13. SOM ΓòÉΓòÉΓòÉ
  1798.  
  1799. Use the controls on the SOM page to set options that relate to SOM code. You 
  1800. can choose to: 
  1801.  
  1802.   Disable direct access to attributes 
  1803.   Use volatile on attribute prototypes 
  1804.   Initialize during static initialization 
  1805.   Turn on implicit SOM mode 
  1806.   Exclude files from implicit SOM mode 
  1807.   Write the release order to a file 
  1808.   Produce IDL files 
  1809.  
  1810.  
  1811. ΓòÉΓòÉΓòÉ 13.1. Implicit SOM mode ΓòÉΓòÉΓòÉ
  1812.  
  1813. This option turns on implicit SOM mode, and also causes the file som.hh to be 
  1814. included. It is equivalent to placing #pragma SOMAsDefault(on) at the start of 
  1815. the translation unit. 
  1816.  
  1817. All classes are implicitly derived from SOMObject until a #pragma 
  1818. SOMAsDefault(off) is encountered. 
  1819.  
  1820. The equivalent command-line option is /Ga. 
  1821.  
  1822. For further details, see the Programming Guide. 
  1823.  
  1824.  
  1825. ΓòÉΓòÉΓòÉ 13.2. Disable direct access to attributes ΓòÉΓòÉΓòÉ
  1826.  
  1827. This option instructs the compiler to disable direct access to attributes. 
  1828. Instead, the get and set methods are used.  This is equivalent to specifying 
  1829. #pragma SOMNoDataDirect(on) as the first line of the translation unit. 
  1830.  
  1831. The equivalent command-line option is /Gb. 
  1832.  
  1833. For further details, see the Programming Guide. 
  1834.  
  1835.  
  1836. ΓòÉΓòÉΓòÉ 13.3. Use volatile on attribute prototypes ΓòÉΓòÉΓòÉ
  1837.  
  1838. Select the Use volatile on attribute prototypes check box to specify that 
  1839. attribute prototypes are volatile. 
  1840.  
  1841. By default, attribute prototypes are not declared as being volatile. 
  1842.  
  1843. The equivalent command-line option is /qsomvolattr. 
  1844.  
  1845.  
  1846. ΓòÉΓòÉΓòÉ 13.4. Exclude files from implicit SOM mode ΓòÉΓòÉΓòÉ
  1847.  
  1848. Use this option to exclude files in the directories specified in the 
  1849. Directories to be excluded list when implicit SOM mode is turned on (when 
  1850. classes are implicitly derived from SOM). 
  1851.  
  1852. This option is valid only when implicit SOM mode is enabled. It allows you to 
  1853. exclude the classes contained in the specified include files from being made 
  1854. into implicit SOM classes. 
  1855.  
  1856. The equivalent command-line option is /Xs. 
  1857.  
  1858.  
  1859. ΓòÉΓòÉΓòÉ 13.5. Directories to be excluded ΓòÉΓòÉΓòÉ
  1860.  
  1861. Use this entry field to enter the directories you want to exclude from implicit 
  1862. SOM mode. You must first select the Exclude files from implicit SOM mode 
  1863. checkbox. 
  1864.  
  1865.  
  1866. ΓòÉΓòÉΓòÉ 13.6. Initialize during static initialization ΓòÉΓòÉΓòÉ
  1867.  
  1868. Use this option to initialize SOM classes at their point of first use during 
  1869. the execution of your program. 
  1870.  
  1871. By default, all SOM classes used in your program are initialized at static 
  1872. initialization time. This makes your program faster, but may result in the 
  1873. initialization of classes that are not used. 
  1874.  
  1875. When you set this option, SOM classes are not initialized until they are 
  1876. actually referenced in your program at run time. This avoids the initialization 
  1877. of unused classes, but requires a run-time check before every SOM class object 
  1878. reference to ensure that the class has been initialized. 
  1879.  
  1880. The equivalent command-line option is /Gz. 
  1881.  
  1882. For further details, see the Programming Guide. 
  1883.  
  1884.  
  1885. ΓòÉΓòÉΓòÉ 13.7. Produce file ΓòÉΓòÉΓòÉ
  1886.  
  1887. The Produce file group has two options: 
  1888.  
  1889.  Release order 
  1890.            Use this option to have the compiler write the release order of the 
  1891.            specified class to stdout. The release order is written in the form 
  1892.            of a SOMReleaseOrder pragma.  You can capture the output from this 
  1893.            option when developing new SOM classes, and include the pragma in 
  1894.            the class definition. 
  1895.  
  1896.            The equivalent command-line option is /Fr. 
  1897.  
  1898.            For further details, see the Programming Guide. 
  1899.  
  1900.  IDL 
  1901.            Use this option to have the compiler generate an IDL file if a file 
  1902.            with an .hh extension is explicitly specified on the command line. 
  1903.            You can specify a path and name for the IDL file. If you do not 
  1904.            specify a name for the file, then an IDL file is created for every 
  1905.            .hh file specified, and placed in the current directory. If you set 
  1906.            this option off, then IDL files are not generated. 
  1907.  
  1908.            The equivalent command-line option is /Fs. 
  1909.  
  1910.  
  1911. ΓòÉΓòÉΓòÉ 14. Signs ΓòÉΓòÉΓòÉ
  1912.  
  1913. This page allows you to specify the signs for the default char type and the 
  1914. default bitfield type. 
  1915.  
  1916. This page contains the following options: 
  1917.  
  1918.  Make default char type unsigned 
  1919.            Set unspecified char to unsigned char, for arithmetic and compare 
  1920.            operations. (/J) 
  1921.  
  1922.  Make default bitfield type unsigned 
  1923.            Set bitfield type to unsigned bitfield. (/qbitfields) 
  1924.  
  1925.  
  1926. ΓòÉΓòÉΓòÉ 14.1. Make default char type unsigned ΓòÉΓòÉΓòÉ
  1927.  
  1928. Select the Make default char type unsigned check box to set unspecified char 
  1929. declarations to unsigned char, for arithmetic and compare operations. 
  1930.  
  1931. Selecting this item is equivalent to specifying the /J+ option on the icc 
  1932. command line. 
  1933.  
  1934. If you do not select this option, unspecified char declarations will be set to 
  1935. signed char. 
  1936.  
  1937.  
  1938. ΓòÉΓòÉΓòÉ 14.2. Make default bitfield type unsigned ΓòÉΓòÉΓòÉ
  1939.  
  1940. Select the Make default bitfield type unsigned check box to specify that 
  1941. default bitfield types are unsigned. 
  1942.  
  1943. By default, bitfield types are unsigned. 
  1944.  
  1945.  
  1946. ΓòÉΓòÉΓòÉ <hidden> Keys Help ΓòÉΓòÉΓòÉ
  1947.  
  1948. The list of keys is arranged in groups. 
  1949.  
  1950. Use: 
  1951.  
  1952.   HELP KEYS to get help 
  1953.  
  1954.   SYSTEM KEYS to switch between programs 
  1955.  
  1956.   WINDOW KEYS to move around in a program window 
  1957.  
  1958.   POP-UP WINDOW KEYS to make a selection in a pop-up window 
  1959.  
  1960.   EDITING KEYS to make changes in a pop-up window. 
  1961.  
  1962.  When two key names are joined by a plus sign (+), use these two keys together. 
  1963.  Hold down the first key and press the second key. 
  1964.  
  1965.  HELP KEYS 
  1966.  
  1967.  F1 
  1968.            Get help 
  1969.  F2 
  1970.            Get extended help (from within any help window) 
  1971.  F9 
  1972.            Go to a list of keys (from within any help window) 
  1973.  F11 or Shift+F1 
  1974.            Go to the help index (from within any help window) 
  1975.  Esc 
  1976.            Cancel help 
  1977.  Alt+F4 
  1978.            Close the help window 
  1979.  Shift+F10 
  1980.            Get help for help 
  1981.  
  1982.  SYSTEM KEYS 
  1983.  
  1984.  Alt+Esc 
  1985.            Switch to the next program, including full-screen programs 
  1986.  Alt+Tab 
  1987.            Switch to the next windowed program 
  1988.  Ctrl+Esc 
  1989.            Switch to the Task List 
  1990.  
  1991.  WINDOW KEYS 
  1992.  
  1993.  F10 
  1994.            Go to/from the action bar 
  1995.  Arrow keys 
  1996.            Move among choices 
  1997.  End 
  1998.            Go to the last choice in a pull-down 
  1999.  Esc 
  2000.            Cancel a pull-down, the system menu, or window 
  2001.  Home 
  2002.            Go to the first choice in a pull-down 
  2003.  PgUp 
  2004.            Scroll the contents of the window up one page 
  2005.  PgDn 
  2006.            Scroll the contents of the window down one page 
  2007.  Underlined letter 
  2008.            Move among the choices on the action bar and select pull-down items 
  2009.  Alt 
  2010.            Go to/from the action bar 
  2011.  Alt+F4 
  2012.            Close the window 
  2013.  Alt+F5 
  2014.            Restore the window 
  2015.  Alt+F7 
  2016.            Move the window 
  2017.  Alt+F8 
  2018.            Size the window 
  2019.  Alt+F9 
  2020.            Minimize the window 
  2021.  Alt+F10 
  2022.            Maximize the window 
  2023.  Ctrl+PgDn 
  2024.            Scroll the contents of the window right one page 
  2025.  Ctrl+PgUp 
  2026.            Scroll the contents of the window left one page 
  2027.  Shift+Esc or Alt+Spacebar 
  2028.            Go to/from the system menu 
  2029.  Shift+Esc or Alt 
  2030.            Go to/from the system menu of a text window 
  2031.  
  2032.  POP-UP WINDOW KEYS 
  2033.  
  2034.  Enter 
  2035.            Complete the pop-up window 
  2036.  Esc 
  2037.            Cancel the pop-up window 
  2038.  Spacebar 
  2039.            Set a check box on/off or perform the task described on the selected 
  2040.            pushbutton 
  2041.  Tab 
  2042.            Move to the next entry field or check box 
  2043.  
  2044.  EDITING KEYS 
  2045.  
  2046.  Backspace (left arrow delete) 
  2047.            Delete the character to the left of the cursor 
  2048.  Del 
  2049.            Delete the character at the cursor 
  2050.  End or Ctrl+Right Arrow key 
  2051.            Move to the end of a field 
  2052.  Home or Ctrl+Left Arrow key 
  2053.            Move to the beginning of a field. 
  2054.  
  2055.  
  2056. ΓòÉΓòÉΓòÉ <hidden> Conflicting Compiler Options ΓòÉΓòÉΓòÉ
  2057.  
  2058. You have specified two or more options that are incompatible. Select Ignore 
  2059. conflict to continue and let one option take precedence, as indicated.  Select 
  2060. Cancel to return to the Compiler Options settings notebook. 
  2061.  
  2062. The following rules apply if you specify an incompatible option: 
  2063.  
  2064.   You indicated that you wanted to perform syntax checking only, as well as 
  2065.    one or more of the following: run the preprocessor; create a listing title, 
  2066.    subtitle, and page length without actual output; any object code control 
  2067.    option; any debug option; compile and not link; a version string; parameters 
  2068.    to pass to the linker. The option to perform syntax checking takes 
  2069.    precedence over the other options selected so the other options are ignored. 
  2070.  
  2071.   You indicated that you wanted to run the preprocessor, as well as one or 
  2072.    more of the following: create any file listing; any listing option; any 
  2073.    object code control option; any debug option; compile and not link; a 
  2074.    version string; parameters to pass to the linker. The option to run only the 
  2075.    preprocessor takes precedence over the other options selected so that other 
  2076.    options are ignored. 
  2077.  
  2078.   You indicated that you wanted to compile only (without performing the link 
  2079.    step) and also that you wanted to create an  .EXE file, or a linker map. 
  2080.    The option to compile only takes precedence. 
  2081.  
  2082.   You indicated that you did not want to create an object file but also that 
  2083.    you wanted to generate debugging and/or profiling information.  The option 
  2084.    not to create an object file takes precedence. 
  2085.  
  2086.   You indicated that you wanted to enable subsystem development but also 
  2087.    indicated you wanted to use ddnames. The option to enable subsystem 
  2088.    development takes precedence. 
  2089.  
  2090.   You indicated that you wanted to use tiled memory, but also that you wanted 
  2091.    to use the debug memory management functions. The option to use the tiled 
  2092.    memory takes precedence. 
  2093.  
  2094.   You indicated that you wanted to generate executable code that runs in a 
  2095.    VisualAge for C++ runtime environment, but also that you wanted to generate 
  2096.    object code to run at ring 0.  The option to generate executable code to run 
  2097.    in the runtime environment takes precedence. 
  2098.  
  2099.  
  2100. ΓòÉΓòÉΓòÉ <hidden> Ignore conflict ΓòÉΓòÉΓòÉ
  2101.  
  2102. Click on the Ignore conflict push button to indicate that you want to save your 
  2103. changes and use the options that take precedence. 
  2104.  
  2105.  
  2106. ΓòÉΓòÉΓòÉ <hidden> Cancel ΓòÉΓòÉΓòÉ
  2107.  
  2108. Click on the Cancel push button to return to the Compiler Options notebook and 
  2109. correct conflicting options. 
  2110.  
  2111.  
  2112. ΓòÉΓòÉΓòÉ <hidden> OK ΓòÉΓòÉΓòÉ
  2113.  
  2114. Click on the OK push button to save the settings you made and close the 
  2115. Compiler Options notebook 
  2116.  
  2117.  
  2118. ΓòÉΓòÉΓòÉ <hidden> Default ΓòÉΓòÉΓòÉ
  2119.  
  2120. Click on the Default pushbutton to set all the options in the Compiler Options 
  2121. notebook back to their default settings. 
  2122.  
  2123.  
  2124. ΓòÉΓòÉΓòÉ <hidden> Reset ΓòÉΓòÉΓòÉ
  2125.  
  2126. Click on the Reset push button to update the compiler options settings to their 
  2127. initial values. 
  2128.  
  2129.  
  2130. ΓòÉΓòÉΓòÉ <hidden> Cancel ΓòÉΓòÉΓòÉ
  2131.  
  2132. Click on the Cancel push button to close the Compiler Options notebook without 
  2133. saving any changes. 
  2134.  
  2135.  
  2136. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  2137.  
  2138. Click on the Help push button to get help on the Compiler Options notebook. 
  2139.  
  2140.  
  2141. ΓòÉΓòÉΓòÉ <hidden> Reset Page ΓòÉΓòÉΓòÉ
  2142.  
  2143. Click on the Reset Page push button to update the compiler options settings in 
  2144. this page to their initial values. 
  2145.  
  2146.  
  2147. ΓòÉΓòÉΓòÉ <hidden> Default Page ΓòÉΓòÉΓòÉ
  2148.  
  2149. Click on the Default push button to update the compiler options with their 
  2150. default values. 
  2151.  
  2152.  
  2153. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  2154.  
  2155. Click on the Help push button to get help on this page of the Compiler Options 
  2156. notebook. 
  2157.  
  2158.  
  2159. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2160.  
  2161. Explanation: 
  2162.  
  2163. You are using a compiler options file from a previous version of the WorkFrame 
  2164. product.  Do you want to use the default option settings? 
  2165.  
  2166. Recovery: 
  2167.  
  2168. Select Yes to open the Compiler Options notebook with the default option 
  2169. settings. Select No to cancel the current operation. 
  2170.  
  2171.  
  2172. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2173.  
  2174. Explanation: 
  2175.  
  2176. The options file for your project has been corrupted. 
  2177.  
  2178. Recovery: 
  2179.  
  2180. Use the default options and then reset them to your preferred settings. 
  2181.  
  2182.  
  2183. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2184.  
  2185. Explanation: 
  2186.  
  2187. An error occurred while trying to allocate memory.  There may be insufficient 
  2188. memory to complete the task. 
  2189.  
  2190. Recovery: 
  2191.  
  2192. Close one or more other tasks, and retry the command. 
  2193.  
  2194.  
  2195. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2196.  
  2197. Explanation: 
  2198.  
  2199. You have chosen to discard all the changes made to the Compiler Options 
  2200. settings.  Are you sure you want to discard the changes? 
  2201.  
  2202. Recovery: 
  2203.  
  2204. Select the Yes push button if you want to discard the changes and exit from the 
  2205. Compiler Options notebook.  Select the No pushbutton if you want to retain the 
  2206. changes and return to the previous page without exiting from the Compiler 
  2207. Options notebook 
  2208.  
  2209.  
  2210. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2211.  
  2212. Explanation: 
  2213.  
  2214. No files that match the specified file specifier were found. Do you want to 
  2215. ignore it? 
  2216.  
  2217. Recovery: 
  2218.  
  2219. Select Yes to ignore the file specifier, save the option settings, and close 
  2220. the Compiler Options notebook.  Select No to return to the previous page 
  2221. without closing the Compiler Options notebook. 
  2222.  
  2223.  
  2224. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2225.  
  2226. Explanation: 
  2227.  
  2228. One or more of the specified paths does not exist. Do you want to ignore it? 
  2229.  
  2230. Recovery: 
  2231.  
  2232. Select Yes to ignore the specified path, save the current settings, and close 
  2233. the Compiler Options notebook.  Select No to return to the previous page. 
  2234.  
  2235. See the OS/2 Return Codes Help for more information on the error. 
  2236.  
  2237.  
  2238. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2239.  
  2240. Explanation: 
  2241.  
  2242. One or more of the specified paths contains a directory name that is longer 
  2243. than the maximum length permitted by the operating system. 
  2244.  
  2245. Recovery: 
  2246.  
  2247. Enter a shorter directory name and try the command again. 
  2248.  
  2249. See the OS/2* Return Codes Help for more information on the error. 
  2250.  
  2251.  
  2252. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2253.  
  2254. Explanation: 
  2255.  
  2256. This field requires the names of one or more directory path names.  The path 
  2257. name must not contain the name of a file. 
  2258.  
  2259. Recovery: 
  2260.  
  2261. Type a valid directory path name in the field. 
  2262.  
  2263.  
  2264. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2265.  
  2266. Explanation:  The directory path name must be an existing path and must follow 
  2267. the naming conventions for directories: 
  2268.  
  2269.   The name must be 1 to 8 alphanumeric characters 
  2270.  
  2271.   The first character must be alphabetic 
  2272.  
  2273.   The name cannot contain embedded blanks, or the characters @, #, and $ 
  2274.  
  2275.   If you are specifying more than one path name, separate each with a 
  2276.    semicolon. 
  2277.  
  2278.  Recovery:  Type a valid directory path name in the field. 
  2279.  
  2280.  See the OS/2* Return Codes Help for more information on the error. 
  2281.  
  2282.  
  2283. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2284.  
  2285. Explanation: 
  2286.  
  2287. You have chosen to reset the compiler options to their previous settings.  Are 
  2288. you sure you want to reset the compiler options? 
  2289.  
  2290. Recovery: 
  2291.  
  2292. Select Yes if you want to reset the compiler option settings. Select No to 
  2293. retain their current settings.  You are then returned to the Compiler Options 
  2294. notebook. 
  2295.  
  2296.  
  2297. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2298.  
  2299. Explanation: 
  2300.  
  2301. You have chosen to reset the compiler options to their default settings.  Are 
  2302. you sure you want to update the compiler options with their default settings? 
  2303.  
  2304. Recovery: 
  2305.  
  2306. Select the Yes push button if you want to reset the compiler options to the 
  2307. default settings.  Select the No push button if you want to retain their 
  2308. current settings.  You are then returned to the Compiler Options notebook. 
  2309.  
  2310.  
  2311. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2312.  
  2313. Explanation: 
  2314.  
  2315. The application was unable to create a dialog panel for the Compiler Options 
  2316. notebook due to insufficient system resources. 
  2317.  
  2318. Recovery: 
  2319.  
  2320. Close one or more other tasks, and retry the command. 
  2321.  
  2322.  
  2323. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2324.  
  2325. Explanation: 
  2326.  
  2327. The system path length could not be obtained. 
  2328.  
  2329. Recovery: 
  2330.  
  2331. See the OS/2* Return Codes Help for more information on the error. 
  2332.  
  2333.  
  2334. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2335.  
  2336. Explanation: 
  2337.  
  2338. An integer between 1 and 65535 is expected for the Timeout field for preloaded 
  2339. compiler components. You may also leave this field blank. 
  2340.  
  2341. Recovery: 
  2342.  
  2343. Type a number between 1 and 65535, or leave the field blank. 
  2344.  
  2345.  
  2346. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2347.  
  2348. Explanation: 
  2349.  
  2350. An unknown error has been detected. 
  2351.  
  2352. Recovery: 
  2353.  
  2354. See the OS/2* Return Codes Help for more information on the error. 
  2355.  
  2356.  
  2357. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2358.  
  2359. Explanation: 
  2360.  
  2361. An integer between 1 and 65535 is expected for the Stop on error count of 
  2362. field.  You may also leave this field blank. 
  2363.  
  2364. Recovery: 
  2365.  
  2366. Type a number between 1 and 65535, or leave the field blank. 
  2367.  
  2368.  
  2369. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2370.  
  2371. Explanation: 
  2372.  
  2373. An integer between 15 and 65535 is expected for the Page length field. 
  2374.  
  2375. Recovery: 
  2376.  
  2377. Type a number between 15 and 65535. 
  2378.  
  2379.  
  2380. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2381.  
  2382. Explanation: 
  2383.  
  2384. An integer between 6 and 255 is expected for the Length of external names 
  2385. field. 
  2386.  
  2387. Recovery: 
  2388.  
  2389. Type a number between 6 and 255. 
  2390.  
  2391.  
  2392. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2393.  
  2394. Explanation: 
  2395.  
  2396. An integer between 1 and 65535 is expected for the left and right margins.  The 
  2397. right margin value must be greater than that specified for the left margin. 
  2398.  
  2399. Recovery: 
  2400.  
  2401. Type a number between 1 and 65535 for the right and left margin fields. 
  2402. Specify a number for the right margin that is greater than that specified for 
  2403. the left margin. 
  2404.  
  2405.  
  2406. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2407.  
  2408. Explanation: 
  2409.  
  2410. An integer between 1 and 65535 is expected for the left and right sequence 
  2411. numbers.  The right sequence value must be an asterisk (*) to denote no right 
  2412. sequence column or an integer greater than that specified for the left sequence 
  2413. column. 
  2414.  
  2415. Recovery: 
  2416.  
  2417. Type a number between 1 and 65535 for the right and left sequence numbers.  For 
  2418. the right sequence column, specify an asterisk or a number that is greater than 
  2419. that specified for the left sequence column. 
  2420.  
  2421.  
  2422. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2423.  
  2424. Explanation: 
  2425.  
  2426. An integer between 1 and 65535 is expected for the inlining threshold. You may 
  2427. also leave this field blank. 
  2428.  
  2429. Recovery: 
  2430.  
  2431. Enter a number between 1 and 65535 or leave the field blank. 
  2432.  
  2433.  
  2434. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2435.  
  2436. Explanation: 
  2437.  
  2438. There is not enough storage allocated to store the compile options string. 
  2439.  
  2440. Recovery: 
  2441.  
  2442. Use the Language Profile Management window to change one or both of the Maximum 
  2443. compile string and Maximum compile size field values in the language profile so 
  2444. that more storage is allocated. 
  2445.  
  2446.  
  2447. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2448.  
  2449. Explanation: 
  2450.  
  2451. You are using a Compiler Options file from a previous version of the WorkFrame 
  2452. product. Would you like to convert the old compiler option settings to the new 
  2453. version? 
  2454.  
  2455. Recovery: 
  2456.  
  2457. Select Yes to indicate that you want an automatic conversion to be performed 
  2458. using the old compiler options file. 
  2459.  
  2460. Note:   Options have been added, changed, or deleted since the last version. 
  2461.         Please read through the option settings in the Compiler Options 
  2462.         notebook after the conversion has been completed. 
  2463.  
  2464.  Select No to use the default options. 
  2465.  
  2466.  
  2467. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2468.  
  2469. Explanation: 
  2470.  
  2471. The compiler options dialog needs to store information with the project file. 
  2472. Because the project file does not exist yet, you cannot set the compiler 
  2473. options at this time. 
  2474.  
  2475. Recovery: 
  2476.  
  2477. For Version 1.1 of the WorkFrame/2, finish creating the project by specifying 
  2478. any other options (except those for the compiler), and then selecting the OK 
  2479. push button. Once the project has been created, you can set the compiler 
  2480. options from the Options pull down on the WorkFrame/2 menu bar. 
  2481.  
  2482. See the OS/2* Return Codes Help for more information on the error. 
  2483.  
  2484.  
  2485. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2486.  
  2487. Explanation: 
  2488.  
  2489. The specified file could not be found.  A symbolic file name in the original 
  2490. source file might have caused this error. Occurrences of the indicated file 
  2491. will be commented out in the created makefile. 
  2492.  
  2493. Recovery: 
  2494.  
  2495.   1. Verify that the INCLUDE environment variable is set up correctly. 
  2496.  
  2497.   2. Verify that the file exists. 
  2498.  
  2499.   3. You can have the Make Make ignore the error by selecting the Ignore push 
  2500.      button. The file will appear in the generated make file, but it will not 
  2501.      be checked for any further include files. 
  2502.  
  2503.  
  2504. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2505.  
  2506. Explanation: 
  2507.  
  2508. Make Make could not acquire enough storage to complete the make file generation 
  2509.  
  2510. Recovery: 
  2511.  
  2512. Close other sessions, or make more room on the disk for the OS/2 swap file, 
  2513. then try the operation again. 
  2514.  
  2515.  
  2516. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2517.  
  2518. Explanation: 
  2519.  
  2520. The name of the specified #include file may be too long or may contain invalid 
  2521. characters. 
  2522.  
  2523. Recovery: 
  2524.  
  2525. Verify the name of the invalid #include file in the source. 
  2526.  
  2527.  
  2528. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2529.  
  2530. Explanation: 
  2531.  
  2532. The specified #include uses a preprocressor variable that could not be 
  2533. resolved. 
  2534.  
  2535. Recovery: 
  2536.  
  2537. Do one of the following to recover: 
  2538.  
  2539.   1. Have Make Make ignore the error by selecting the Ignore push button.  The 
  2540.      file will not appear as a dependency in the generated make file. You can 
  2541.      then manually update the make file later. 
  2542.  
  2543.   2. Restructure the C/C++ source file to remove the preprocessor variable 
  2544.      construct so that the #include can be resolved by the make file creation 
  2545.      utility, then try the operation again. 
  2546.  
  2547.  
  2548. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2549.  
  2550. Explanation: 
  2551.  
  2552. The make file creation utility encountered an error while reading the specified 
  2553. file.  If the file is on a removable medium, you may have deleted or moved it. 
  2554. If it is on a LAN, the connection to the LAN server may have been broken. 
  2555.  
  2556. Recovery: 
  2557.  
  2558. Verify that the specified file is in the expected location and that it is 
  2559. accessible, then retry the operation.  If the problem persists, contact your 
  2560. IBM Service Representative. 
  2561.  
  2562.  
  2563. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2564.  
  2565. Explanation: 
  2566.  
  2567. The make file creation utility was able to find the file, but could not open 
  2568. it.  Another process may have the file open, or the file name may specify a 
  2569. directory. 
  2570.  
  2571. Recovery: 
  2572.  
  2573. Do one of the following to recover: 
  2574.  
  2575.   1. You can have the Make Make ignore the error by selecting the Ignore push 
  2576.      button. The indicated file will appear in the generated make file, but it 
  2577.      will not be checked for any further include files. 
  2578.  
  2579.   2. Halt the other process that is using the specified file then retry the 
  2580.      operation. 
  2581.  
  2582.   3. Correct the source in which this file name appears then retry the 
  2583.      operation. 
  2584.  
  2585.  
  2586. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2587.  
  2588. Explanation: 
  2589.  
  2590. The specified file may not exist or may be in use by another process. 
  2591.  
  2592. Recovery: 
  2593.  
  2594. Ensure that the file exists and that it is not in use by another process, then 
  2595. try the operation again. 
  2596.  
  2597.  
  2598. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2599.  
  2600. Explanation: 
  2601.  
  2602. The specified file may be in use by another process, or there may not be enough 
  2603. disk space to write the new information on disk. 
  2604.  
  2605. Recovery: 
  2606.  
  2607. Ensure that the file is not in use by another process, and that there is enough 
  2608. disk space to save the information by deleting or moving unecessary files. 
  2609.  
  2610.  
  2611. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2612.  
  2613. Explanation: 
  2614.  
  2615. The specified project file may be corrupt or invalid. 
  2616.  
  2617. Recovery: 
  2618.  
  2619. Ensure that the specified project file is a valid WorkFrame V2.0 project file. 
  2620.  
  2621.  
  2622. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2623.  
  2624. Explanation: 
  2625.  
  2626. The file could not be found, may be in use by another process, or a system 
  2627. error could have occurred. 
  2628.  
  2629. Recovery: 
  2630.  
  2631. Ensure that the file exists in the expected location and that it is not in use 
  2632. by another process, then retry the operation. 
  2633.  
  2634. If this error persists, contact your IBM Service Representative. 
  2635.  
  2636.  
  2637. ΓòÉΓòÉΓòÉ <hidden> Retry ΓòÉΓòÉΓòÉ
  2638.  
  2639. Click on the Retry push button to try the operation again. 
  2640.  
  2641.  
  2642. ΓòÉΓòÉΓòÉ <hidden> Abort ΓòÉΓòÉΓòÉ
  2643.  
  2644. Click on the Abort push button to terminate the current operation.  No make 
  2645. files will be generated. 
  2646.  
  2647.  
  2648. ΓòÉΓòÉΓòÉ <hidden> Ignore ΓòÉΓòÉΓòÉ
  2649.  
  2650. Click on the Ignore pushbutton to continue without acknowledging the specified 
  2651. error.  The make file will be generated but ignoring the error may cause a 
  2652. related component to be left out of the make file. 
  2653.  
  2654.  
  2655. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2656.  
  2657. Explanation: 
  2658.  
  2659. The application was unable to access the project file.  This may be caused by 
  2660. one of the following reasons: 
  2661.  
  2662.   The drive was not ready.  Make sure there is a diskette in the drive you 
  2663.    want to save the file to. 
  2664.  
  2665.   The diskette or disk you wanted to write to may be full.  Delete some files 
  2666.    or specify another disk to write to. 
  2667.  
  2668.   The diskette or disk may be write-protected.  Remove the write protection on 
  2669.    the disk to save the file on it. 
  2670.  
  2671.   The specified path may not exist in your system.  If you have made a typing 
  2672.    error, re-enter the path.  Otherwise, create the path on your system or 
  2673.    specify another path. 
  2674.  
  2675.   The file permissions may be set to read-only.  Change the file permission to 
  2676.    allow writes or specify another filename to save the file to. 
  2677.  
  2678.  See the OS/2* Return Codes Help for more information on the error. 
  2679.  
  2680.  
  2681. ΓòÉΓòÉΓòÉ <hidden> Message Help ΓòÉΓòÉΓòÉ
  2682.  
  2683. For more information on a message, select it from the list below: 
  2684.  
  2685.   Compiler DLL internal error - insufficient heap 
  2686.  
  2687.   Invalid #include in file <filename> - include name = <include name> 
  2688.  
  2689.   Indeterminate #include in file <filename> - include name = <include name> 
  2690.  
  2691.   Cannot open file <filename> 
  2692.  
  2693.   Cannot find file <filename> 
  2694.  
  2695.   Error reading file <filename> 
  2696.  
  2697.  
  2698.  
  2699. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  2700.  
  2701. The listing file includes information from the compiler but is not intended for 
  2702. use as a programming interface.