RT-Tester 6.0-6.5.3 now available (maintenance)

A maintenance release is now available for all supported platforms.
Consider updating if you are using Version
or older.

New Features

  1. Test-on-Target C++ Support:
    • prepared templates to be fit for C++ name mangling
    • rtt_tgtprep_stubs now expects signatures including ‘::
      (and replaces it by _CC_ in generated code, except for
      the location of the interface function) – implements (FR #15477)
    • added section on C++ tcalls/tgtstubs in tgt manual
    • rtt_tyco_gen: added ignoring of all __attribute__(...)
      (implements #18180)
  2. Utility rtt-handle-suite.py:
    • added options --runmode-rtt/vts/tms (implements #18002)


  1. Windows version:
    • 64Bit installer: also include the 32bit posix-std libraries – implements #18003
      (can only be used with 32bit windows gcc/g++, see Manual: 8.2 64Bit and 32Bit Projects)
    • Robustness: Windows legacy symlink ‘rtt-test-case.exe
      is optional, compile does not fail if it cannot be created.
  2. Utility rtt-handle-suite.py:
    • fixed formatting issue for ‘failed’ messages (zero-length format)
    • allow to add/remove all test procedures with wild-card ‘*’
    • corrected recognition of test procedure
    • exclude special directory TMPL
    • follow (sym)links when collecting test procedures
  3. Scripts:
    • rtt-clean-testproject: added short options
      -k (--keep-verdict) and -q (--quiet)
    • rtt-compile-test (rtt-gen/upate/run/doc-test):
      give more information, if *.conf file cannot be found (improves on #11116)
  4. Channel Configuration Robustness:
    • corrected WARNING text, if configuring buffer size = 1
      which will only work for sampling ports (improves #17364)
  5. Libraries:
    • new: function bool_t rtt_stublib_type_is_string(const char*)
      decides whether a given type name is treated like
      a string (char*) type, e.g. for stub code generation
    • new: function bool_t rttstr_is_whitespace(char);
    • rttstr_convert_path_pattern_to_current_platform():
      for MinGW, convert path to mixed style (most portable)
  6. License management:
    • rtt-begin-session aborts after a number of failed tries
      that is configurable (option --max-tries);
      for Windows, the number of default attempt is set to 3
      (to avoid multiple pop-ups) – implements #18001
  7. User Manual:
    • In connection with (#16542), corrected documentation of ‘TAG_TRACING_SUM‘ ;
      also corrected rttscan_conf --help here
    • Added section 12.15 Linker Issues with Stubs to warn uses of linkers that may not behave as expected
      (addresses #17980)
    • Corrected section 10.2.5 about the ‘SUT’ keyword
    • Added section 10.2.6 concerning the overriding of *.rts files
    • Added section 12.5.2: Pointer Parameters and @format – Special Case char*
    • Added section 8.3 The Project Timescale and Macros ms, us
      explaining new workaround in rtt_prj_time_scale.h (implements #18179)
    • In 7.2 Execution of Test Procedures, added paragraph on Coverage by Run
    • Consistent usage of ‘test case’ and ‘test procedure’ (implements #17346)
    • added missing documentation of @sigUpdateSignals()
    • explained error return values for @sigWaitFor*()
  8. Template Projects:
    • In default project, added inclusion of listings
      and useful command \LISTFILE{relative/path/to/file}
    • Include update of DEMO suite [V-1.5] : added Coverage by Run examples


    1. Tag tracing:
      • (robustness) corrected potential anonymous TESTERROR (for TAG_TRACING_SUM;yes)
        that MAY occur due to use of freed logfile reference (fixes #18178)
        The problem should occur very rarely under unlikely side-conditions.

        1. for test procedures with unexpected verdicts:
          before rtt-doc-test, remove /testdata/*.tags
        2. (general prevention) In project.rtp, set TAG_TRACING_SUM; no
      • revised handling of @VERDICT_SECTION_IN_RTTDOC__AUTO:
        in the situation where user sets test procedure verdict in *.rttdoc; in some corner cases, a wrong auto-verdict
        got displayed (without affecting the final tc verdict). (fixes #17524, comment ~0039986)
    2. RTS lexing (rttprep_rts):
      • corrected infinite loop in lexing rule – (fixes #18166)
      • rttprep_rts --debug now also dumps the current input
        position to – should help in identifying problems where lexing hangs.
      • skip white-spaces after '(' in @rttCall, so that
        () and ( ) are now equivalent (fixes #18154)
    3. Stub files rttprep_stubs (rttstublib.a):
      • fixed limitation of maximal 314 stubs per file (fixes #18156)
      • corrected treatment of ‘char*‘ similar types (fixes #18070)
    4. Project configuration (rttscan_conf / TESTBED_VERSION_FILE):
      • for Windows version, convert RTT_TESTCONTEXT to
        mixed path before reading file (fixes #18000)