Rational Test RealTime


Release Notes


Version 2001A.04.01



Date : 16-Aug-2001



Contents







Introduction



This document describes the known problems for Rational Test RealTime product for the 2001A.04.01 release. This document is composed of two main parts:

  • The description of fixed problems of the previous releases,

  • The description of known problems in the 2001A.04.01 release.

  • Note : How to read the title of Fixed Problems or Known Problems, ° (Language)-(Version which contain the problem)/(defect number) (Title of Defect)





    Fixed Problems



    This section describes the whole set of noteworthy fixed problems in the 2001A.04.01 release.


    Coverage Ada - 3.0b/750 INTERNAL ERROR: Unhandled unit type in GetDescriptor() (N_CST_ENUM)Home

    This symbol does not exist in the code under test.
    
    The following reproduce the same bug
    (note it appears cause of Init procedure) :
    
    procedure Proc is
    
     Package Pck is
      type T is ( INIT, RUN, DONE );
      procedure p( a : in T ) ;
      procedure  Init ;
     end ;
    
     package body pck is
    
       procedure Init is
       begin
            null;
       end ;
    
       procedure p( a : in T ) is
       begin
         null;
       end ;
    
     end ;
    
    begin
         pck.p( pck.INIT ); 
    end;
    

    Coverage All - 3.0b/737 FDC and TIO both on root level of volume cause abnormal termination of CVIHome

    FDC and TIO both on root level of volume cause abnormal termination of CVI

    Object Testing C++ - 2001A.04.00/767 Test template generator runs out of memoryHome

    With the following code :
    class A {
      A f();
    };
    Object Testing generator enters an infinite loop consuming the whole system memory.
    A has to be a in tested or additional file.

    Licensing - 2001A.04.00/698 Test RealTime installation on clean machine does not launch License Key AdministratorHome

    RTRT installation completes, but does not launch the Rational License Key
    Administrator Wizard at the end of setup.
    When the user tries to launch an RTRT component user receives a "FlexLM
    error -2" (or, "License manager - installation failure").

    Installation - 2001A.04.00/699 Error when you attempt to run the examples Home

    Following the installation of Rational Test RealTime when you attempt to run the examples 
    you may get a series of error messages about files not being found.

    Licensing - 2001A.04.00/697 Prompt to update NT system executable causes premature end to Test RealTime installation.Home

    RATLC00004030
    
    1. Install an NT workstation that comes already kitted with the SP6 
       service pack.  
    2. Install the MS Visual Studio.  Select any options desired during
       installation.
    3. Install Rational Test RealTime with Custom options to install on Windows.
    >> Towards the last stages of installation, a message is raised by 
       the LKAD code, indicating the comctl32.dll is obsolete:
    "You are running comctl32.dll v. 4.72.3612.1702.  This program 
    requires 5.80 or later.  Do you wish to run d:\lkad\patches\50comupd.exe 
    to update your version?"
    4. Click "Yes" to update the 50comupd.exe.
    >> The update occurs before the installation of Test RealTime completes, 
       and the user is prompted to restart the machine in order for the 
       executable to be updated.
    
    The bug is here :
    5. After restarting the machine, the Test RealTimeinstallation does 
       not resume in any way, either by invoking the LKAD installation, 
       or by continuing the initial Test RealTimeinstallation.
    > In order to use Test RealTimeat this point, the installation must be started 
    from the beginning again.

    Studio C++ - 2001A.04.00/759 Perl does not find "libcrypt-i.so.1"Home

    Open the Object Testing example,
    then run make,
    you get an error message:
    perl does not found "libcrypt-i.so.1".
    

    Studio C++ - 2001A.04.00/722 The report Viewer does not reset the test passed/failed counters to zero on reloadHome

    When you reload the object testing report file. 
    The summary data at the top of the report is added to the previous values.

    Trace C - 2001A.04.00/760 Compilation error due to missing constHome

    In the TDP, the member definition (x3) is
    _ATT_U_INT32 att_this ( ) \
    and should be 
    _ATT_U_INT32 att_this ( ) const \
    

    Unit Testing Ada 95 - 2001A.04.01/806 Simulation block within PTU causes abnormal terminationHome

    Simulation block and Ada package declared in PTU cause an error.

    Unit Testing Ada 95 - 2001A.04.01/803 Code generation terminates abnormallyHome

    Abnormal program termination while generating stubs.

    Unit Testing Ada 95 - 2001A.04.01/802 Generated code contains syntax errors: "_universal_string"Home

    Generated code contains syntax violations

    Unit Testing C - 3.4a/781 Preprocessor error with typedef containing a union with a large structureHome

    When you have a large structure (> 170 elements) the preprocessor stops with the
    error message "internal error raised in Module SFC".
    
    Example:
    typedef union
    {
    struct
    {
    /* UN_FAULT_STATUS is a union of 8 bits and a byte */
    UN_FAULT_STATUS zero_unused;
    UN_FAULT_STATUS diagnostic1;
    /* And so on 175 times
    } byte;
    UN_FAULT_STATUS array[TOTAL_NUMBER_OF_FAULTS];
    } TYP_FAULT_STATUS_ARRAY;
    
    

    Unit Testing C - 3.4a/676 Test Script Generator crashesHome

    A big number of function parameters may cause abnormal termination

    Unit Testing C - 3.4a/671 Integer 64 bit cannot be used in test file and FORMAT (variable)=#d64 cannot change the display Home

    It is impossible to use a signed 64 bits init value.
    It is Impossible to display a 64-bit integer 
    
    The following error message is raised:
    %ATTOL-W-ENTOUTRAN,............. integer constant overflow
    

    Unit Testing Ada 95 - 3.4b/667 Outermost parentheses not recognized for Array valuesHome

    Outermost parentheses not recognized for Array values

    Unit Testing Ada - 3.4a/665 Bad detection of STUB of generic functionHome

    In the folowing example, 
    
    DEFINE STUB G_ANALOG_UTILITIES
    
      # function INPUT_SCALING_FACTORS_FROM
      #            (THE_MAX_HARDWARE_VALUE : in STD_FLOAT;
      #             THE_CONVERSION_SIGN    :_no G_ANALOG_UTILITIES.CONVERSION_SIGN;
      #             HW_VALUE_POSITIVE_ONLY : in BOOLEAN;
      #             THE_DATA_CORRECTION    :_no G_ANALOG_UTILITIES.DATA_CORRECTION)
      #          return _no G_ANALOG_UTILITIES.SCALING_FACTORS is
    
    ...
    
    STUB G_ANALOG_UTILITIES.INPUT_SCALING_FACTORS_FROM
        &                         (<->:STD_FLOAT,<->:BOOLEAN) ==: G_ANALOG_UTILITIES.SCALING_FACTORS
    
    In this case, the STUB instruction is not detected by the preprocessor analyser.

    Unit Testing C - 3.3a/663 Initialization order of environment block incorrectHome

    Initialization order of environment block incorrect

    Unit Testing C - 3.3a/580 The preprocessor loops for ever on a particular test plan, but only on the DEC Alpha platformHome

    The preprocessor loops for ever on a particular test plan, but only on the DEC Alpha platform.
    It happens when a STUB contains a large number (>500) lines of code.

    Unit Testing C - 3.4a/487 Bad code generated when enclosing the first service of the test plan with IF/END IFHome

    When enclosing the first service of the test plan with IF/END IF, the preprocessor generates  incomplete code.

    Unit Testing C - 3.3a/402 Preprocessor crashes on a STUBbed function that has more than 31 characters in its nameHome

    Preprocessor crashes on a STUBbed function that has more than 31 characters in its name.



    Known Problems




    Coverage C - 3.0a/791 (-) Instrumentor loops on #line containing a directory with ~Home

    The instrumentor loops forever when accessing a file in a #line pragma that is located in a
    directory which name (either short or long) shortcontains a tilde (~).
    
     

    Coverage All - 2001A.04.00/773 (-) In Rates or Metrics Window "copy" not possibleHome

    In Rates or Metrics Window "copy" not possible
    Work-Around :
    Most of this information can be obtained with attolcov -su=c

    Coverage C - 1.2b/279 (7) Dynamic link on SolarisHome

    If an instrumented C file is used in a dynamic library on Solaris 2, the execution of the instrumented application may crash because 
    Solaris freezes global variables used by Coverage before the dump of the traces.
    
     

    Installation - 2001A.04.00/814 Directory name containing dots causes problem to cross compilerHome

    Some old cross compilers do not accept paths containing two or more
    dots in a file name (especially in a directory name). 
    Work-Around :
    Manually rename the directory and patch all shortcuts 

    Licensing - 2001A.04.00/696 Licensing error occurs when starting Test RealTime after Rational product uninstalledHome

    RATLC00004031 - Licensing error occurs when starting Test RealTime after Rational product uninstalled
    
    1) Installation of an RATL product of the suite (B 292) -> installation of the LKAD part
    2) Installation of Test RealTime (no LKAD part installation) -> Test RealTime tools are running
    3) Uninstallation of RATL product -> Uninstall LKAD part (defect is here)
    4) Test RealTime tools are not running 
    Work-Around :
    5) Uninstall Test RealTime 
    6) Re-Install Test RealTime -> installation of the LKAD part (The new one)
    7) Test RealTime tools are running

    Studio - 2001A.04.00/807 (-) The tag of files is looping on Windows Millenium/Win98Home

    On Windows Millenium or Windows 98, when you double click on the workspace, the tag of the files looping.
    Work-Around :
    1- In the Edit menu ->  Preference, unselect "Activate automatic source browsing"
    2- Double click on the workspace and the tag of the file is not launching.

    Studio - 2001A.04.00/772 (-) On Windows, it is difficult to obtain the '~' character in the Studio Editor.Home

    On Windows, it is difficult to obtain the '~' character in the Studio Editor.
    1- Click on the ‘Alt GR’ + ‘2’ touch
    2- Click on the ‘space bar’
    3- Instead of print a ‘~’ character in the editor, the following chain is
    printed: 'é~' with a French keyboard.
    
    Work-Around :
    Suppress the undesirable character 'é'

    System Testing All - 2001A.04.00/694 (-) The shortcuts of the System Testing examples do not work correctly.Home

    Sometimes, the shortcuts of the System Testing examples do not work correctly: 
    The example started with the shortcut is the workspace loaded in attolstudio previously. 
    It is necessary to launch the example in 2 times with the specific shortcut. 
    Work-Around :
    1- Launch the System Testing agent:
     Program/Rational Test RealTime/Examples/System Testing/Start System Testing Agent
    2- Launch via the start menu the example you want execute:
    Program/Rational Test RealTime/Examples/System Testing/
    3- Close the attolstudio and restart with the point 2.

    System Testing - 2.4a/693 (-) Negative values in message's argumentHome

    Negative values in message's argument are not handled correctly.
     

    System Testing - 2.5a/649 (-) Messages window too slow (console)Home

    messages window too slow (console)
     

    System Testing C++ And C - 2.5a/640 (-) Too many included files in the test scriptHome

    When too many files (over one hundred) are included in the test script,
    the preprocessor may crash.
     

    System Testing C++ And C - 2.5a/623 (-) Hexadecimal table dump for unsigned char field Home

    When a FORMAT #H is used on a unsigned char field of a structure,
    a hexadecimal table dump is done. A simple hexadecimal should be 
    done.
    Work-Around :
    FORMAT struct.field=int#H

    System Testing - 2.5a/589 (09) Application not found by StudioHome

    If an application is not found it would be necessary to display a dialogue box which announces this state of things. 
    It is the case for Netscape and Acrobat Reader, but also for any element launched by the GUI (example: an editor....) 
     

    System Testing C - 2.5a/587 (-) Unexpected Syntax node '37' . Ask for maintenance help.Home

    When an INSTANCE block is inside a WHILE loop and begins after at least an instruction,
    it makes the preprocesor fail. It gives the following error message :
    
    " Unexpected Syntax node '37' . Ask for maintenance help."
    Work-Around :
    Put the instructions between the WHILE instruction and the INSTANCE instruction in an
    INSTANCE block.

    System Testing C - 2.5a/585 (-) Undefined reference to atl_P0Home

    When calling a procedure from a dedicated cleanup procedure,
    this procedure is not be generated in the source code of the simulator.
    The compiler gives an error  "Undefined reference to atl_P0".
    Work-Around :
    Add a call to the procedure in a never executed block such as "IF (0) THEN ... END IF".

    System Testing C - 2.4a/577 (-) Option -INCL not taken into accountHome

    When the -INCL option of the preprocessor is too long, more than 2000 characters,
    the end of the list of the paths provided is not taken into account.
    An error "Cannot access to file" is printed.
     

    System Testing C++ And C - 2.4a/511 (-) Accentuation inside commentsHome

    When using accented french in instruction within a test plan, an error occurs.
    Work-Around :
    Do not use accentuation.

    System Testing All - 2.4a/508 (-) FORMAT instruction not taken into accountHome

    When a FORMAT instruction is used in a test script, it does not work for all the scenarios.
    It stops working after two consecutive END SCENARIO.
    Work-Around :
    Add another FORMAT instruction within the SCENARIO.

    System Testing C++ And C - 2.4a/496 (-) Some documentation concerning the launcher is missing in multi thread mode.Home

    Some documentation concerning the launcher is missing in multi thread mode.
    There is no information about the new instances fields introduced in the 2.4 version.
    Work-Around :
    Initialize at NULL this new field (atl_instance) in the ATL_T_ARG structure

    System Testing C++ - 2.4a/480 (-) Preprocessing fails for CASE (i) IS WHEN myclass::myenum => ...Home

    The preprocessor fails when analyzing "class::enum" into a CASE... WHEN... END CASE instruction.
    
    Work-Around :
    Use  the IF... THEN... END IF instruction.

    System Testing C - 2.4a/415 (-) Bad code generation when attol vars of MESSAGE or CHANNEL is the same as global vars or type namHome

    Compilation makes a syntax error if the MESSAGE var or CHANNEL var has the same name of a global var or type name.
    
     

    Unit Testing C - 2001A.04.00/815 (-) STUB bad generation when array size defined with long MACROHome

    When a STUB uses an array, the size of which has been defined with macro (#define) containing spaces, a compilation syntax error of the test program can occur.
    
    ex:
    #define array_size        10
    typedef int array[array_size];
    int f(array x);
    
    Work-Around :
    Remove spaces from the macro definition used in the array size definition.

    Unit Testing Ada 95 - 2001A.04.01/809 (-) Indice slice for array not recognized in PTUHome

    VAR variable(indice1..indice2).component, init= something, ev = else
    not recognized
    Work-Around :
    Initialize in separate VAR lines

    Unit Testing Ada 95 - 2001A.04.01/808 (-) Array indice not generated for complex typeHome

    Array of record does not contain array indice for initialisation in the
    generated code
     

    Unit Testing All - 2001A.04.01/804 (-) Versioning information in Test Report slightly complicatedHome

    Fields "Source Version:" and "Module Version:" incoherently filled in by Report Generator (see Technotes 19696, 17812)
    Work-Around :
    Coherently indicate the module version in the Header line of the Test Script

    Unit Testing Ada 95 - 2001A.04.01/798 (-) Code generation for stubs with private type incorrectHome

    Management of private types not yet fully implemented.
    Work-Around :
    Define those parameters for the stub as "no"

    Unit Testing Ada - 2001A.04.00/795 (-) Constants defined in PTU as expected value get rounded by runtimeHome

    Runtime contained in the Target Package rounds the expected values
    Work-Around :
    None. For record types, no "delta" can be specified in the PTU

    Unit Testing Ada 95 - 2001A.04.00/793 (-) Child package stubbed of code under test not recognizedHome

    When trying to stub a child package of the code under test, the preprocessor
    does not find the child specification
     

    Unit Testing - 2001A.04.00/789 (-) Impossible to reload an existing session with relative path, which is not in the same logical unHome

    1- When Unit Testing is installed for example on the E:\ disk of a machine.
    2- You have installed your work session and project on an other 
       hard disk or logical unit (for example D:\TestRealTime\C).
       You have modified your session to obtain relative path name instead 
       of absolute path name (default case 
    3- Load your project.
    4- Try to load one of your existing session: test.ses for example where 
       the path are in relative mode.
       The bug is here: The session is not loaded because the session is stored 
       in relative mode.
    
    Example: extract of the session file
    FP general.ptu
    FS source.c
    FR general.rod
    FI Tgeneral.rio
    
    Work-Around :
    Work only in this case (separate logical unit) with absolute path name.
    Example: extract of the session file
    FP D:\TestRealTime\c\general.ptu
    FS D:\TestRealTime\c\source.c
    FR D:\TestRealTime\c\general.rod
    FI D:\TestRealTime\c\Tgeneral.ri

    Unit Testing All - 2001A.04.00/788 (-) attoltm.exe doesn't support ptu file names containing dotsHome

    attoltm.exe doesn't support ptu file names containing dots
    Work-Around :
    replace dots by underscores or else

    Unit Testing C++ And C - 3.4b/745 (-) Array size using sizeof not correctly managed by preprocessorHome

    Array size using sizeof not correctly managed by preprocessor:
    copied into .tdc and not interpreted by postprocessor
    Work-Around :
    In the TestScript use the slice syntax to initialize the array using this syntax: ARRAY bar[0..99], init = , ev =

    Unit Testing Ada 95 - 2001A.04.00/704 (-) Test LOOP not yet implementedHome

    Error Message  LOOP index must be integer obtained even if correct syntax
     

    Unit Testing Ada 95 - 3.4b/695 (-) Standard exception declared in the ada PTU generates error at compilation timeHome

    Standard exception declared in the PTU generates error at compilation time
    Work-Around :
    Try to declare a user exception and catch this one ?!
    
    #MyWorkAroundException : Exception;
    
    ELEMENT
    
    -- something
    
    Exception MyWorkAroundException
    
    -- considering that your Code under Test will
    -- raise Standard.ProgramError, you can proceed like this:
    
    #begin
    #--some call here
    #exception
    #	when Standard.ProgramError => 
    #		raise MyWorkAroundException;
    #end;
    
    END ELEMENT

    Unit Testing C - 3.4b/688 (-) Preprocessor does not accept certain preprocessor statementsHome

    The following preprocessor statements produce an error in in the C analyser:
    1.
    bad expression sizeof(
    #if sizeof((char*)0 -(char*)0) <= sizeof(int)
     
     
    2.
    C code ---
    #define __INT_SIZE__ sizeof(int)
     
    Message --
    bad expression __INT_SIZE__
     
     
    3.
    bad expression _argt$(
    #if _argt$(char)==1
     
     

    Unit Testing C - 3.4b/687 (-) The test plan generator stop when a array size is not defineHome

    The generator must know the size of an array to generate  the test plan.
    Example :
    struct my_struct[] =
    {
    .....
    }
    Work-Around :
    Define the array size in code under test just for generation. 

    Unit Testing All - 3.4b/680 (-) unitest.ini containing variable with digit in the name causes abnormal terminationHome

    unitest.ini containing variable name with digit in it causes abnormal termination
    Work-Around :
    replace digits by letters

    Unit Testing Ada - 3.4a/674 (-) When a parameter to a STUB has a value of 0.299999982 the report displays 0.29Home

    When a parameter to a STUB has a value of 0.299999982 the report displays 0.29. This is due to culumitive rounding errors in the target package
    function for converting floats to strings.
    NOTE: the testing of the values is not affected, only the display when the value obtained is not the value expected.
     

    Unit Testing C - 3.4b/673 (-) Target Directory option not correctly translated by preprocessorHome

    The GUI parameters Session Parameters->Preprocessor -> Target Directory can not be terminated by a backslash or a letter
    Work-Around :
    put a "/" (slash) at the end of the directory name, instead of the backslash

    Unit Testing Ada - 3.4b/666 (-) Usage of pseudo variables needs a cast if expected type is not integerHome

    Usage of pseudo variables needs a cast if expected type is not integer
    Work-Around :
    Use cast; specify constants with correct syntax (like add ".0" to float)

    Unit Testing C - 3.3a/655 (-) Initializations of large arrays causes abnormal terminationHome

    Initializations of large arrays causes abnormal termination
    Work-Around :
    Initialize by distinct slices not too large

    Unit Testing C - 3.4a/652 (-) The random number ( nb_random ) is limited at 295, the preprocessor failedHome

    The « INIT FROM value_1 TO value_2 NB_RANDOM number_of_random_values »
    instruction use with a number of random superior or equal to 295 
    raised a preprocessor error message.
    
    Ex :
    VAR b, init from 1 to 500 nb_random 295 , ev = init
     

    Unit Testing All - 3.4a/639 (-) With two Services selected and Test in one Service the execution takes only care of one ServiceHome

    In GUI, when two Services are selected and one services have some Test selected, only the first Service will be executed.
    Example :
    SERVICE A <= 
    TEST 1<= 
    TEST2<= 
    TEST3 
    SERVICE B <= 
    Only the SERVICE A will be executed . 
    Work-Around :
    Select one Service at once to remove ambiguity
    

    Unit Testing All - 3.4a/624 (-) A task with pragma priority in customer code may block attol runtime (corrupted RIO as a result)Home

    A task with pragma priority in customer code may block attol runtime (corrupted RIO as a result)
    Work-Around :
    Putting a "delay 1.0;" before end of Element block (if in conjunction with ATU) may permit to attol to finish correctly

    Unit Testing C - 3.4a/616 (-) Initialization of arrays of aggregates not calculated correctly by test plan generatorHome

    In a .c there are the following statements:
    
    typedef struct {
    	int state;
    	long delay;
    	long timer;
    	int instNum;
    	int min;
    	int max;
    } typeWarningMon;  
    	
    typeWarningMon WarningMonId[] = {
      0, 100L, 0L, 0,0,100,
      0, 100L, 0L, 1,1,100,
    };
    
    The Template Generator generates an extern for WarningMonId but as a 13 element array when in fact it should only be 2.
    This provokes a memory overrun when the array is initialised.
    Work-Around :
    Insert braces around the initialisation or correct the test plan before preprocessing.
    Example:
    typeWarningMon WarningMonId[] = {
      { 0, 100L, 0L, 0,0,100 },
      { 0, 100L, 0L, 1,1,100 }
    };
    

    Unit Testing C++ - 3.4a/615 (-) Pipe status of launched shell scripts not correctly managed by GUIHome

    pipe status of launched shell scripts not correctly managed by GUI
     

    Unit Testing C - 3.4a/559 (-) The "INCLUDE CODE" key word doesn't generate a #include .. line in the generated codeHome

    The "INCLUDE CODE" key word doesn't generate a #include line in the generated code
    
    Work-Around :
    Use ##include instead of INCLUDE CODE

    Unit Testing C - 3.3a/550 (-) Environment overload w/ Union Home

    Environment overload with union not recognized (citing different members)
     

    Unit Testing C - 3.4a/538 (-) Long lines can't be edited. Home

    Erroneous truncation of long lines in PTU file by Attoled.
    
    Work-Around :
    If necessary, cut the line. In any case, no data are lost.

    Unit Testing All - 3.4a/537 (-) The session parameter window can become bigger than the screenHome

    When there are lots of options in the source compiler options field the 
    window (when the session is reopened) becomes bigger than the screen.
     

    Unit Testing C - 3.4a/463 (-) Global variable is not generated in PTU fileHome

    The global variables are not added in ptu file.
    If a global variable is between two #include, the declaration of global are added in ptu file but
    without the key word EXTERN.
    Work-Around :
    Modify the ptu file after generation.

    Unit Testing C++ And C - 3.3a/268 (333) Large unsigned numbers are generated as negativesHome

    When initialising unsigned integer variables with values larger than (2^31 -1) then ATTOL generates code with the value as a negative number. 
    This provokes a warning on some compilers. Example:
    #unsigned int Fred;
    VAR Fred, init = 0xA5A5A5A5UL, ev= init
    then ATTOL generates
    Fred = -1515870811;
    
     

    Unit Testing All - 3.3a/258 (323) Redirection inside go scriptsHome

    If the go script tries to redirect stdout and stderr then messages on stderr are lost.
    
     

    Unit Testing C++ - 3.3a/251 (316) Cannot force execution of all tests during a campaignHome

    When playing a test campaign you cannot force the execution of all services and tests. 
    This is necessary when the session has been saved with only some of the services and tests selected as only the selected tests are executed.
    
     

    Unit Testing C++ - 3.3a/250 (315) Cannot select services in included PTU filesHome

    The list of services and tests in the session window does not include thoses services that can be found in an INCLUDE PTU file. 
    
    Work-Around :
    You can get around this problem by setting the -SERVICE and -TEST options for the preprocessor in the session parameters dialog box.

    Unit Testing C++ And C - 3.3a/243 (-) I1 and J1 variables conflict application under test variables with same nameHome

    The Unit Testing preprocessor generates and uses some internal integer variables, named I1..I20, J1..J20. There are conflicts if the
    tested application uses the same variables.
    
     

    Unit Testing C - 3.3a/215 (280) Init in with array element using #defineHome

    When using init correlated to an array element that is accessed using a #define constant, the preprocessor 
    error display that the array element wasn't intialized using "init in".
    
    Work-Around :
    Use a temporary pointer.

    Unit Testing C - 3.3a/201 (266) Option -test does not include NEXT_TEST blocksHome

    If you have the sequence TEST 1/ELEMENT/NEXT_TEST/ELEMENT/END TEST and you specify the option -test=1 
    on the preprocessor then only the first element block is executed. 
    The -test=1 should include all tests between the TEST 1 statement and the END TEST statement.
    
     

    Unit Testing C++ And C - 3.3a/189 (254) Unsigned long numbers are generated as negativesHome

    Unsigned long variables initialized with numbers in the range 0x80000000 to 0xffffffff are generated as negative numbers
    in the code generated, this perturbs certain cross compilers. 
    They should be generated as 2147483648UL  to 4294967295UL. UL for unsigned long. 
    It is probably the same for unsigned short.
    
     

    Unit Testing C - 3.2b/123 (180) Error initialising large ArrayHome

    When initializing or testing a large array, the preprocessor produces an error (or worse crashes) when the number of 
    elements is larger that what it can handle.
    Work-Around :
    Split the array into several slices with the syntax
    TAB Array[0..19],  init  = { autres => 0 },
    &  va = { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}
    TAB Array[20..39], init  = { autres => 0 },
    &  va = { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}
    

    Unit Testing C - 3.2b/118 (174) STUB const long * const cause problemHome

    If you have a STUB that takes a const pointer to a const object then when the code generated by Rational Test RealTime is compiled a warning is produced because 
    the structure generated for the STUB does not contain the consts for the parameter.
    
     

    Unit Testing C++ And C - 3.2a/87 (70) pragma not correctly analysedHome

    When analyzing the following lines:
    #define PRAGMA #pragma
    the ATTOL UniTest analyser detects a syntax error.
    
     

    Unit Testing C - 3.2a/86 (66) Incorrect analysis of pointer additionHome

    The preprocessor seems to consider pointer addition as giving a result of type integer and not of type pointer.
    
    Work-Around :
    Cast the result to type pointer.

    Unit Testing C - 3.2a/75 (17) Bad test script generationHome

    With the Borland compiler, the following example is correct:
    typedef void mtype(int p1,int p2);
    mtype func
    {
    }
    The Unit Testing generator considers func as a variable, and not as a function.
    It generates a line:
    VAR f, init=NIL, ev=init
    
     

    Unit Testing C - 3.1c/66 (410) Warning for structure affectationHome

    Native C code to initialize a field of a structure may generate " syntax errors "
    SERVICE xx
    #my_struct_type my_struct;
    #my_struct.field=malloc(512);
    ATTOL-ERROR SYNTAX ERROR : my_struct.
    
    Work-Around :
    Ignore this syntax error
    

    Unit Testing C++ - 3.1c/65 (406) Boolean type Home

    The boolean type is not recognised by Unit Testing analyzer. The standard definition file (xxx.def) allows Unit Testing analyzer to understand any new types.
    The problem is that by default, the bool type is defined as:
    typedef struct {int i;} bool;
    The Unit Testing generator and preprocessor will generate the associated code (i.e. using the i field), which is not compilable.
    The user can specify
    typedef int bool;
    In this case, everything is correct execept that in case of overload, Unit Testing will produce a syntactic error. For example
    void func(int);
    void func(bool);
    will make an error if the bool type and int type are the same. That is the reason why by default, the boolean type is defined to a structure.
    
    Work-Around :
    The good behavior will be to analyse the bool type as a language defined type, as char or int.
    

    Unit Testing C++ And C - 3.1c/64 (403) int** parameterHome

    The test script generator creates an int variable instead of int* for a function with an int** parameter.
    
     

    Unit Testing All - 3.1b/53 (350) Wrapping of error messages on PCHome

    On PC platform, when using the EasyWin executables, the Window into which arrives the standard output (Watcom window) 
    does not print correctly the different messages, which are sometimes truncated.
    
     

    Unit Testing C++ And C - 3.1b/32 (243) Arrays dimensioned by expressionsHome

    On RS6000 machines, using xlC C++ compiler, when /usr/include/memory.h is included in the test script, 
    and when DEFINE STUB is used in the test script, a syntactic error occurs.
    It is due to the
    #define MAXFIDSZ        (FHSIZE - sizeof(fsid_t) - sizeof(uint_t))
    which is used after in the declaration of the array
    struct fid {
            uint_t  fid_len;
            char    fid_data[MAXFIDSZ];
    };
    As dimensions of array are analysed, an error occurs.
    
     

    Unit Testing C++ - 3.1b/47 (301) Test script generator for Inline functionsHome

    On Windows NT platform, Unit Testing test script generator does not correctly generate the services for the inline functions
    if the .h and .cc file are not in the same directory.
    
     

    Unit Testing Csql - 3.1b/37 (259) Table owner and table users Home

    If you connect to a table as table owner, and if you update a field, the conclusion in the result file is " UPDATE ".
    If you connect to the same table, but not as the table owner, the conclusion in the result file  is " DELETE " and " INSERT " but never " UPDATE ".
    
     

    Unit Testing C++ And C - 3.1b/31 (232) Recursive Macros and VAR instructionHome

    If in the C code, or in a header included by the C code there is a macro definition as:
    #define field stru->field
    then, in the test script, there could be a line:
    VAR field, init=3.14, ev=....
    Then the generated C code is
    stru->stru->field = 3.14
    which does not compile correctly.
    
    Work-Around :
    The use of recursive macro is not recommended as this is not portable at all.

    Unit Testing All - 3.1a/16 (23) Error in STUB instructionHome

    A syntactic error in a STUB instruction produces a warning instead of an error.