"Fossies" - the Fresh Open Source Software Archive

Member "seed7/doc/chlog.txt" (23 Feb 2021, 523262 Bytes) of package /linux/misc/seed7_05_20210223.tgz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. See also the latest Fossies "Diffs" side-by-side code changes report for "chlog.txt": 05_20210130_vs_05_20210223.

    1 20210223:
    2 - Spelling corrections have been done in several files. Many thanks go
    3   to Jens Schleusener, for sending a source code misspelling report
    4   from Fossies.
    5 - The new library png.s7i has been added. This library supports the
    6   PNG image file format.
    7 - Seed7 has been improved to compile under Android with termux. This
    8   is described in src/read_me.txt.
    9 - A chapter about Unicode characters has been added to the manual.
   10 - The make7.sd7 example program has been improved. The processing of
   11   makefiles in make.s7i has been improved to process every rule just
   12   once. The handling of the option -n (don't execute commands) has
   13   been improved to work in the same way as in other make tools.
   14 - The test program chkbin.sd7 has been improved to to allow two
   15   possible NaN values as result of 0.0 / 0.0.
   16 - The test program chkflt.sd7 has been improved to allow that for some
   17   test cases trunc() and round() either return the correct value
   18   (integer.last) or raise RANGE_ERROR.
   19 - Tests for array bitset have been added to chkarr.sd7.
   20 - Tests for conversion and cardinality have been added to chkset.sd7.
   21 - The functions XChangeProperty() and XMapWindow() have been added to
   22   fwd_x11.c and x11_x.h.
   23 - The makefile mk_clang.mak has been improved to allow the replacement
   24   of system headers (x11_x.h and fwd_term.h). This way compilation
   25   works also without the original headers.
   26 - The warning box created by warn.c had too much width to be readable
   27   in termux. So this width has been reduced.
   28 - In drw_win.c the functions drwXPos() and drwYPos() have been fixed
   29   to return coordinates relative to the parent window.
   30 - The checks for the C compiler option -ftrapv in chkccomp.c have
   31   been improved. Now it is recognized, if integer overflow raises the
   32   signal SIGTRAP. Clang at the ARM processor uses SIGTRAP.
   33 - Changes have been done in sigutl.c to handle SIGTRAP and to raise
   34   OVERFLOW_ERROR in the signal handler (if chkccomp.c has recognized
   35   that an integer overflow raises SIGTRAP).
   36 - Changes have been done in chkccomp.c to support PostgreSQL version
   37   13. Additionally the logic to search for PostgreSQL dlls has been
   38   improved. Now it searches also for the libraries libcrypto and
   39   libssl. Now POSTGRESQL_DLL can be specified, with an absolute path
   40   of libpq.dll, in the makefile (which should echo it to chkccomp.h).
   41 - In the compiler (s7c.sd7) the handling of actual parameters for
   42   formal inout parameters has been improved. Now a struct element can
   43   be used as actual parameter for a formal inout parameter.
   44 - The compiler has been improved to reduce range checks for the
   45   expressions char(number), chr(number) and card(bitset(number)).
   46 - Interpreter and compiler have been improved to support the action
   47   REF_ISTEMP. The function isTemp() has been added to progs.s7i.
   48 - In comp/intrange.s7i the function getIntRange() has been improved
   49   to determine result ranges for INT_ADD and integer constants.
   50 - The compiler has been improved to assure that sigsetjmp() is not
   51   called with a value other than 0 or 1 for the second parameter
   52   (savesigs). According to the specification of sigsetjmp() all
   53   integer values are allowed for the second parameter (savesigs)
   54   and a non-zero value triggers a save of the current signal mask.
   55   ARM / Android / termux decided that just 0 and 1 are valid values
   56   and that any other value triggers a termination of the program
   57   (with SIGABRT).
   58 - The function drwCapture() in drw_win.c has been improved to work
   59   correct, if the screen has been scaled.
   60 - In drw_win.c the functions drwPut() and drwSetTransparentColor()
   61   have been improved such that images with a transparent color work.
   62 - The runtime of drwRgbColor() in drw_x11.c has been reduced by 31%
   63   (measured with gcc and valgrind, when reading a PNG image). This
   64   takes effect if a true color display is used.
   65 - The runtime of drwRtlImage in drw_rtl.c has been reduced by 63%
   66   (measured with gcc and valgrind, when reading a PNG image). The
   67   function memcpy_pixel() uses loop unrolling inspired by Duff's
   68   device.
   69 - The program chkccomp.c has been improved to determing the macro
   70   rgbToPixel() (if X11 graphics is used).
   71 - In exec.c the function exec_expr() has been improved to clear
   72   the TEMP flag for all results.
   73 - The makefiles have been improved to write the name of the make
   74   utility and the name of the makefile to version.h.
   75 
   76 20210130:
   77 - The parser (used by interpreter and compiler to read a program) has
   78   been improved to work correct, if seed7_05.s7i is not included.
   79   Many thanks go to Domingo Alvarez Duarte for pointing out that a
   80   missing seed7_05.s7i include statement causes a parser error.
   81 - The example program mirror.sd7 has been added. This program mirrors
   82   a rectangular screen area in a window.
   83 - The function capturePixmap has been added to graph.s7i. This
   84   function can be used to capture rectangular areas from the screen.
   85 - In the library graph.s7i the function openSubWindow() has been
   86   improved to allow top level windows without window decorations.
   87   This can be done by using the empty window as parent window.
   88 - Chapters about pragmas and compilation errors have been added to the
   89   manual.
   90 - The parser has been improved to work reliable in out of memory
   91   situations. Now the fatal parser error "Out of heap space" does not
   92   terminate the program.
   93 - The minor versions of interpreter and compiler have been increased.
   94   Now interpreter and compiler share the same revision level. Every
   95   compilation of the Seed7 interpreter increases the revision level.
   96 - A definition of VERSION_REVISION_LEVEL has been added to
   97   cc_conf.s7i. This is used in confval.sd7 and s7c.sd7.
   98 - Interpreter and compiler have been improved to support the new
   99   action DRW_CAPTURE.
  100 - In analyze.c the function analyzeProg() has been improved to
  101   catch the "Out of heap space" error and to clean up memory in out
  102   of memory situations. Now the old values of the global variables
  103   prog, interpreter_exception curr_exec_object, curr_argument_list and
  104   trace are restored, when the function is left.
  105 - In analyze.c the functions analyzeFile() and analyzeString() have
  106   been improved to work without setting interpreter_exception. Now
  107   these functions work the same in interpreted and compiled programs.
  108 - In atom.c the function read_atom() has been improved to keep the
  109   data structure consistent in out of memory situations.
  110 - The functions pop_owner() and close_current_stack() have been added
  111   to name.c.
  112 - In name.c the functions free_params(), get_object() and push_name()
  113   have been improved to have an additional 'currentProg' parameter.
  114 - In name.c the function get_object() has been improved to reverse its
  115   changes in case of an error.
  116 - In name.c the handling of errors has been improved in push_name(),
  117   eval_name_list(), inst_list(), inst_object_expr(), find_name(),
  118   search_name(), dollar_parameter() and dollar_inst_list(). In error
  119   situations changes are reversed, memory is freed and stack growing
  120   and shrinking is now done in a consistent way.
  121 - In entutl.c the function copy_params() has been improved to allocate
  122   the parameters first in a list and to assign them later.
  123 - The new functions pop_name_list() and get_entity_node() have been
  124   added to entutl.c.
  125 - In entutl.c the function get_entity() has been improved to handle
  126   error situations (out of memory).
  127 - In entutl.c in the function init_entity() dereferencing NULL is
  128   avoided now, if the memory allocation fails.
  129 - In blnlib.c the function bln_ternary() has been improved to work
  130   correct, if evaluate() returns NULL. This happens if an exception
  131   is triggered inside evaluate().
  132 - Implementations of drwBorder() and drwSetPos() have been added to
  133   drw_emc.c. The functions drwXPos() and drwYPos() have been improved.
  134 - The function drwCapture() has been added to drw_x11.c and drw_win.c.
  135 - The function drwOpenSubWindow() has been improved in drw_x11.c and
  136   drw_win.c to support the creation of unmanaged top level windows
  137   without window decorations (if the parent window is empty).
  138 - The function omitWindowDecorationsAndTaskbarEntry() has been added
  139   to drw_x11.c.
  140 - In flt_rtl.c the function setMantissaAndExponent has been improved
  141   to work without division by DOUBLE_MANTISSA_FACTOR.
  142 - The program chkccomp.c has been improved to write an error message,
  143   if executing a test program fails.
  144 - In error.c the functions read_ustri8_line(), read_and_print_line()
  145   and ustri8_buffer_to_stri() have been improved to work reliable in
  146   out of memory situations.
  147 - In fatal.c the function no_memory() has been improved to do a long
  148   jump to analyzeProg().
  149 - In listutl.c the function append_element_to_list() has been improved
  150   to keep the list_insert_place unchanged in out of memory situations.
  151 - In sctlib.c in the function sct_cat() the code to handle an error
  152   has been improved, to avoid using a pointer that might be invalid
  153   because of a previous realloc(). The function sct_elem() has been
  154   improved to consider that grow_stack() might fail.
  155 - In typeutl.c the function get_varfunc_type() has been improved to
  156   work correct, if new_type() returns NULL. This can happen in out of
  157   memory situations.
  158 - In findid.c the functions clean_idents() and write_idents() have
  159   been refactored to use a progType parameter and to allow NULL
  160   values in the ident tables.
  161 - In flistutl.c the function heap_chunk() has been improved to never
  162   do a realloc() on a memory chunk and to explain why this is done.
  163 - In flistutl.h the macros HEAP_OBJ(), HEAP_L_E(), HEAP_NODE() and
  164   HEAP_FILE() have been fixed to return FALSE in out of memory
  165   situations.
  166 - In hshlib.c the macro isit_not_null() has been added to several
  167   functions to assert that function references and compare results are
  168   not NULL.
  169 - In prclib.c the functions prc_begin(), prc_local(), prc_res_begin(),
  170   prc_res_local(), prc_return(), prc_return2(), prc_varfunc() and
  171   prc_varfunc2() have been improved to handle error situations (out of
  172   memory).
  173 - In prclib.c the macro isit_not_null() has been added to prc_case(),
  174   prc_case_def(), prc_case_hashset() and prc_case_hashset_def(). This
  175   macro checks that the sets after the keyword 'when' are not NULL.
  176 - In identutl.c the function init_idents() has been changed to leave
  177   a failed initialisation as is (this is cleaned up later).
  178 - In prg_comp.c the function prgDestr() has been improved to allow
  179   NULL for elements of the program structure. The function interpret()
  180   has been improved to restore the global variable
  181   interpreter_exception.
  182 - In exec.c the functions getErrInfoFromFailValue() and do_exec_call()
  183   have been added. The function exec_expr() has been improved to
  184   restore the global variable interpreter_exception.
  185 - In executl.c the functions do_destroy(), create_return_object(),
  186   create_local_object(), destroy_local_object() and
  187   destroy_local_init_value() have been improved to handle error
  188   situations (out of memory).
  189 - In match.c the function match_subexpr() has been improved to
  190   handle out of memory situations.
  191 - In runerr.c the functions write_position_info() and
  192   write_call_stack_element() have been improved to recognize valid
  193   data better.
  194 - In runerr.c the functions run_error(), empty_value() and
  195   var_required() have been improved to write the error message only,
  196   if exception tracing is switched on. Now these functions raise
  197   ACTION_ERROR instead of RANGE_ERROR.
  198 - The function freeOptions() has been added to s7.c. The function
  199   raise_error2() has been improved to handle an out of memory
  200   situation.
  201 - In symbol.c the function close_symbol() has been improved to allow
  202   NULL for symbol.name and symbol.striValue.
  203 - In syvarutl.c the function init_sysvar() has been improved to
  204   define a dummy value for SYS_EXPR_TYPE (EXPR_TYPE). This avoids an
  205   error, if the source has no include directive.
  206 - The function printLocObj() has been added to traceutl.c. The
  207   functions prot_list_limited() and trace1() have been improved to
  208   recognize corrupt category fields.
  209 - In cmd_rtl.c code has been moved from cmdReadlink(), cmdFileTypeSL()
  210   and cmdGetcwd() to the new functions doReadLink(), getFileTypeSL()
  211   and doGetCwd() respectively. The new functions use err_info to
  212   report errors instead of raising an exception. The old functions
  213   have been refactored to call the new functions.
  214 - In cmd_rtl.c the function followLink() has been refactored to call
  215   getFileTypeSL() and doReadLink().
  216 - The program levelup.c has been added. This program is called by the
  217   makefile to increase the revision level of interpreter and compiler.
  218 - In comp/expr_utl.s7i the function prepare_win_result() has been
  219   fixed to use drwDestr() instead of winDestr().
  220 - The system declaration for "type" hase been removed from syntax.s7i.
  221 - The makefiles have been adjusted to increase the revision level
  222   (stored in level.h) before the interpreter is compiled. This way
  223   interpreter and compiler get the same revision level.
  224 - Documentation comments have been improved in array.s7i, graph.s7i,
  225   leb128.s7i, analyze.c, cmd_rtl.c, drw_emc.c, drw_win.c, drw_x11.c,
  226   entutl.c, error.c and exec.c.
  227 
  228 20210106:
  229 - The declaration of in-parameters has been changed to work the same
  230   way as all other parameter declarations (val-, ref-, inout-, attr-
  231   and in-var-parameters). Many thanks go to Zachary Menzies for
  232   pointing out a problem with in-parameters and for providing a test
  233   program. The new in-parameters fix this problem.
  234 - The support for function types (func aType and proc) in interpreter
  235   and compiler has been improved.
  236 - The support for Emscripten (a C compiler that generates JavaScript
  237   and WebAssembly) has been improved. The support of Emscripten is
  238   experimental (see also src/read_me.txt).
  239 - The library http_response.s7i has been improved to set the correct
  240   content-type for more file types (css, javascript, wasm, gif, bmp,
  241   pdf). This way the comanche webserver also works better.
  242 - The function getCgiParameters() in cgi.s7i has been improved to
  243   accept also elements without equals sign (in this case value is
  244   assumed to be "").
  245 - The function readPropertyFile8() has been added to the library
  246   propertyfile.s7i. This function processes an UTF-8 encoded property
  247   file.
  248 - In propertyfile.s7i the function readPropertyNameOrValue() has been
  249   changed to work correct for unicode escapes (\u) and for escaped
  250   newlines. An extended unicode escape (\U) has been added also.
  251 - Testcases that check if seek() does clear the EOF flag have been
  252   added to chkfil.sd7.
  253 - The Seed7 parser (used by interpreter and compiler) has been
  254   improved, to recognize if the same syntax is declared twice. In this
  255   case a compile-time error is written.
  256 - The FAQ has been improved to explain the simple profiling of the
  257   Seed7 compiler.
  258 - The simple profiling of the compiler has been improved to recognize,
  259   if a function has been left without taking profiling into account.
  260 - The compiler has been improved to recognize if a raise statement
  261   leaves a function and generates code to make the profiling work
  262   correct (if it has been enabled).
  263 - The recognition of constant expressions in the compiler has been
  264   improved to consider variable functions as variable. The changes
  265   are in comp/const.s7i in two functions named isConstantCall().
  266 - Changes have been done in seed7_05.s7i and integer.s7i such that the
  267   new in-parameters work as expected.
  268 - The interpreter has been improved to support the actions DCL_IN1,
  269   DCL_IN2, TYP_SET_IN_PARAM_REF and TYP_SET_IN_PARAM_VALUE.
  270 - The functions dcl_in1() and dcl_in2() have been added to dcllib.c.
  271 - The functions typ_set_in_param_ref() and typ_set_in_param_value()
  272   have been added to typlib.c.
  273 - Changes in syntax.c and token.c make sure that the new error
  274   SYNTAX_DECLARED_TWICE is recognized.
  275 - In prclib.c the function prc_cpy() has been improved to take into
  276   account that MATCHOBJECT is constant (and the underlying object
  277   is variable).
  278 - In cmd_unx.c the function setenv7() has been improved to work
  279   correct, if a value is enlarged.
  280 - In cmd_unx.c the functions getenv7(), setenv7() and unsetenv7() have
  281   been improved to optionally work case insensitive.
  282 - Changes in cmd_drv.h, cmd_rtl.c and fil_unx.c allow that some
  283   operating system properties are determined at run-time. This is used
  284   for Emscripten.
  285 - The functions setenvForNodeJs() and unsetenvForNodeJs() have been
  286   added to cmd_unx.c. Now setenv() and unsetenv() have also an effect
  287   on the environment used by Node.
  288 - The file drw_emc.c has been added. This file provides graphic access
  289   using browser capabilities. It is used if Seed7 is compiled with
  290   emcc.
  291 - The file pre_js.js has been added. This JavaScript code is included
  292   by Emscripten. It sets up program path and arguments, if the program
  293   runs in the browser.
  294 - In cmd_rtl.c the function systemForNodeJs() has been improved to
  295   return -1, if the command cannot be executed.
  296 - The makefiles mk_emccl.mak and mk_emccw.mak have been improved to
  297   store the environment variables in seed7/bin/emcc_env.ini. The macro
  298   CC_ENVIRONMENT_INI, which defines the path of seed7/bin/emcc_env.ini,
  299   is now written to version.h. This way the Seed7 compiler can be used
  300   without setting up Emscripten.
  301 - Changes have been done in error.c and error.h to introduce the new
  302   errors SYNTAX_DECLARED_TWICE and KIND_OF_IN_PARAM_UNDEFINED. The
  303   error UNEXPECTED_SYMBOL has been replaced with EXPECTED_SYMBOL.
  304 - The functions increaseLevelOfCatchedExceptions() and
  305   decreaseLevelOfCatchedExceptions() have been added to comp/error.s7i.
  306   These functions are used in comp/prc_act.s7i.
  307 - In comp/expr.s7i the function declare_type_if_necessary() has been
  308   improved to take a existing typeCategory of BLOCKOBJECT into account.
  309 - In comp/type.s7i the function getExprResultType() has been improved
  310   to check that the category is a CALLOBJECT.
  311 - Definitions of LINKER_OPT_SPECIAL_LIB and SPECIAL_LIB have been added
  312   to cc_conf.s7i.
  313 - The files s7c.sd7, confval.sd7, cmd_rtl.c, mk_emccl.mak and
  314   mk_emccw.mak have been improved to use the new configuration values.
  315 - The parameter list of the functions cmdSetGroup() and cmdSetOwner()
  316   has been changed in comp/cmd_act.s7i, cmd_drv.h, cmd_unx.c and
  317   cmd_win.c. Now group and owner are constant strings.
  318 - Documentation comments have been added or improved in cc_conf.s7i,
  319   cgi.s7i, csv.s7i, propertyfile.s7i and graph.s7i.
  320 
  321 20201208:
  322 - Answers to two new questions have been added to the FAQ. Answers to
  323   three existing questions have been improved.
  324 - In dialog.s7i the function messageWindow() has been added and the
  325   function isOkay() has been improved. Dialog windows are placed now at
  326   the center of the main window (or screen if there is no main window).
  327 - The functions screenHeight(), screenWidth(), getBorder() and
  328   setCloseAction() have been added to graph.s7i.
  329 - Definitions of while- and repeat-loops with empty loop body have been
  330   added to seed7_05.s7i and syntax.s7i.
  331 - In seed7_05.s7i the new exception CLOSE_ERROR has been introduced and
  332   enumeration types have been improved to support the function rand().
  333 - The calc7 example program has been improved to support the functions
  334   getHttp() and getHttps().
  335 - In sokoban.sd7 the function to read a level number has been improved.
  336 - The programs castle.sd7, gkbd.sd7, klondike.sd7, lander.sd7,
  337   mahjong.sd7, mandelbr.sd7, pairs.sd7, panic.sd7, planets.sd7,
  338   shisen.sd7, sokoban.sd7, sudoku7.sd7, tetg.sd7 and wator.sd7 have
  339   been improved to handle the close button (from the window title bar).
  340 - A boss mode has been added to the castle.sd7, sokoban.sd7, pairs.sd7
  341   and shisen.sd7 example programs.
  342 - Tests for while- and repeat-loops have been added to chkprc.sd7.
  343 - Cosmetic improvements have been done in planets.sd7 and sl.sd7.
  344 - The key KEY_CLOSE has been added to keybd.s7i and keydescr.s7i.
  345 - The support for function types (func aType and proc) in the Seed7
  346   compiler has been improved.
  347 - In drw_win.c the function drwOpen() has been improved to place the
  348   window at the requested position.
  349 - In drw_x11.c the functions drwXPos() and drwYPos() have been improved
  350   to return the position relative to the screen (instead of relative to
  351   the parent window).
  352 - The functions drwBorder(), drwScreenHeight(), drwScreenWidth() and
  353   drwSetCloseAction() have been added to drw_win.c, drw_x11.c and
  354   drw_dos.c.
  355 - In gkb_win.c and gkb_x11.c the function gkbGetc() has been improved
  356   to recognize the close button from the window title bar.
  357 - In gkb_win.c the function gkbKeyPressed() has been improved to handle
  358   the close button from the window title bar.
  359 - The program chkccomp.c has been improved to determine the value
  360   FREAD_WRONG_FOR_WRITE_ONLY_FILES.
  361 - The function XQueryTree has been added to fwd_x11.c and x11_x.h.
  362 - An explanation about C compiler warnings about "passing argument with
  363   different width due to prototype" has been added to src/read_me.txt.
  364 - Documentation comments have been added or improved in dialog.s7i,
  365   graph.s7i, sl.sd7, drwlib.c, drw_win.c and drw_x11.c.
  366 - In several files casts have been introduced to reduce the number of
  367   warnings that are flagged with a historic version of gcc.
  368 - Interpreter and compiler have been improved to support the actions
  369   DRW_BORDER, DRW_SCREEN_HEIGHT, DRW_SCREEN_WIDTH, DRW_SETCLOSEACTION,
  370   PRC_REPEAT_NOOP, PRC_RETURN and PRC_WHILE_NOOP.
  371 
  372 20200929:
  373 - Support for link time optimization has been added. It is available if
  374   Seed7 is compiled with gcc or clang. The Seed7 compiler option -flto
  375   can be used to activate link time optimization.
  376 - Answers to six new questions have been added to the FAQ.
  377 - A chapter about for-loops and containers has been added to the
  378   tutorial.
  379 - The ternary operator a ? b : c has been defined for integer, float,
  380   complex, rational, bigInteger, bigRational, char, string, bstring,
  381   boolean, bin32 and bin64.
  382 - Tests for the ternary operator have been added to chkbig.sd7,
  383   chkbin.sd7, chkbool.sd7, chkbst.sd7, chkchr.sd7, chkflt.sd7,
  384   chkint.sd7 and chkstr.sd7.
  385 - The function rand(low, high) for float has been changed to return a
  386   number in the range [low, high) instead of [low, high]. The range
  387   [low, high) is commonly used by float random number generators.
  388 - Tests for the rand() function have been added to chkflt.sd7.
  389 - The Seed7 compiler has been improved to inline code for the action
  390   FLT_RAND, if the option -oc3 is used and both bounds are constant.
  391 - Definitions of FLOATTYPE_MANTISSA_BITS, FLOATTYPE_EXPONENT_OFFSET,
  392   STMT_BLOCK_IN_PARENTHESES_OK, RAND_MULTIPLIER, RAND_INCREMENT,
  393   CC_OPT_LINK_TIME_OPTIMIZATION and LINKER_OPT_LTO_MANDATORY have been
  394   added to cc_conf.s7i.
  395 - The files confval.sd7 and cmd_rtl.c have been improved to use the new
  396   configuration values.
  397 - Interpreter and compiler have been improved to support the action
  398   BLN_TERNARY.
  399 - In comp/int_act.s7i the functions uintRand(), uintRandMantissa() and
  400   uintRandLimited() are defined as macros now, if the Seed7 compiler
  401   has been called with -oc3.
  402 - In name.c the function close_stack() has been improved to dump the
  403   values of BLOCKOBJECT objects after the values of other objects have
  404   been dumped.
  405 - The program chkccomp.c has been improved to determine the values
  406   FLOAT_EXPONENT_OFFSET, STMT_BLOCK_IN_PARENTHESES_OK,
  407   CC_OPT_LINK_TIME_OPTIMIZATION and LINKER_OPT_LTO_MANDATORY.
  408 - In progs.s7i documentation comments for parseFile(), parseStri() and
  409   execute() have been improved.
  410 - The program chk_all.sd7 has been adjusted to the changes in the
  411   check programs.
  412 
  413 20200830:
  414 - Spelling corrections have been done in several files. Many thanks go
  415   to Jens Schleusener, for sending a source code misspelling report
  416   from Fossies.
  417 - The file README.md, which uses the markdown format, has been added.
  418 - Answers to seven new questions have been added to the FAQ.
  419 - Descriptions of array, hash, set and struct in the manual have been
  420   improved to contain examples of type declaration and usage.
  421 - In array.s7i the functions remove() and insert() have been improved
  422   to avoid copying whole elements.
  423 - The string slice functions have been changed to raise INDEX_ERROR for
  424   negative indices or lengths.
  425 - The array slice functions have been changed to raise INDEX_ERROR for
  426   negative indices or lengths.
  427 - In chkstr.sd7 the tests for string slices have been adjusted to the
  428   new behavior.
  429 - The example program chkidx.sd7 has been added. This program checks
  430   if INDEX_ERROR is correctly raised for string operations.
  431 - The example program chkarr.sd7 has been added. This program checks
  432   if array operations work correct.
  433 - The program chk_all.sd7 has been improved to call and check the new
  434   programs chkidx.sd7 and chkarr.sd7.
  435 - Compiler and interpreter have been improved to support the actions
  436   ARR_INSERT, ARR_INSERT_ARRAY and ARR_REMOVE_ARRAY.
  437 - The compiler has been improved to support call by name parameters
  438   with varfunc instead of func.
  439 - The file comp/arr_act.s7i has been improved to support ARR_INSERT,
  440   ARR_INSERT_ARRAY and ARR_REMOVE_ARRAY.
  441 - The file comp/str_act.s7i has been improved to support the changed
  442   string slice functions.
  443 - The functions arr_insert(), arr_insert_array() and arr_remove_array()
  444   have been added to arrlib.c. These functions work without copying
  445   whole elements. Instead a memmove() is used on a part of the array to
  446   move object records.
  447 - The functions arrInsert(), arrInsertArray() and arrRemoveArray() have
  448   been added to arr_rtl.c. These functions work without copying whole
  449   elements. Instead a memmove() is used on a part of the array to move
  450   64-bit elements.
  451 - The functions addCopiedStriToArray() and addCopiedStriToRtlArray()
  452   in strlib.c respectively str_rtl.c have been improved to scale
  453   better. Now these functions double the array size every time a
  454   realloc() is necessary. In the end the size is reduced to the actual
  455   array size.
  456 - In strlib.c the functions str_head(), str_range(), str_substr() and
  457   str_tail() have been improved to check for INDEX_ERROR.
  458 - In str_rtl.c the function strHeadSlice(), strHead(), strHeadTemp(),
  459   strRangeSlice(), strRange(), strSubstrSlice(), strSubstr(),
  460   strTailSlice() and strTail() have been improved to check for
  461   INDEX_ERROR.
  462 - The function strTailTemp() has been added to str_rtl.c. This function
  463   is used by the compiler to optimize expressions like: s := s[n ..];
  464 - In cmd_rtl.c the functions cmdMkdir(), cmdRemoveFile(),
  465   cmdRemoveTree(), cmdSetATime(), cmdSetFileMode(), cmdSetMTime() and
  466   cmdSymlink() have been improved.
  467 - In cmd_unx.c the memory management of cmdSetGroup() and cmdSetOwner()
  468   has been improved.
  469 
  470 20200727:
  471 - In ut8_rtl.c the function ut8Seek() has been improved such that
  472   a call of ut8Seek() can be directly followed by a statement to write
  473   to the file.
  474 
  475 20200726:
  476 - The library rpm.s7i has been improved to write changes to the
  477   archive file, when the archive is closed.
  478 - The library tar_cmds.s7i has been improved to support Zstandard
  479   compressed tar archives.
  480 - The functions setOwner() and setGroup() have been added to cpio.s7i
  481   and osfiles.s7i.
  482 - The test programs chkbig.sd7, chkbin.sd7, chkflt.sd7, chkhsh.sd7,
  483   chkint.sd7, chkset.sd7 and chkstr.sd7 have been improved to increase
  484   the code coverage of the Seed7 run-time library.
  485 - The example program chkfil.sd7 has been added. This program checks
  486   the correctness of file operations.
  487 - The example program chkbst.sd7 has been added. This program checks
  488   the correctness of bstring functions.
  489 - The program chk_all.sd7 has been improved to call the new programs
  490   chkbst.sd7 and chkfil.sd7. It also has been adjusted to the changes
  491   in the check programs.
  492 - In strifile.s7i the function write() has been improved to use @:=
  493   if a file is overwritten. This is much quicker than the previous
  494   approach, that used several string concatenations.
  495 - The function openTarFileWithMagic() has been added to tar_cmds.s7i.
  496   This function is used by tarTell() and tarXtract().
  497 - In cpio.s7i the function to close the CPIO archive has been changed
  498   to leave the underlying file open.
  499 - In external_file.s7i the function close has been changed to set the
  500   underlying clib file to NULL.
  501 - In gzip.s7i the function to close a gzipFile has been changed to
  502   leave the destination file open.
  503 - The conversion function integer() has been added to bin32.s7i and
  504   bin64.s7i.
  505 - The compiler (s7c.sd7) has been improved (in set_act.s7i) to produce
  506   correct code for the actions SET_CONV1 and SET_CONV3 (independent
  507   if a normal expression or a result expression is converted).
  508 - Interpreter and compiler have been improved to support the actions
  509   CMD_SET_GROUP and CMD_SET_OWNER.
  510 - The functions cmd_set_group() and cmd_set_owner() have been added to
  511   cmdlib.c.
  512 - The functions getGidFromGroup(), getUidFromUser(), cmdSetGroup() and
  513   cmdSetOwner() have been added to cmd_unx.c. The functions
  514   getGroupFromGid() and getUserFromUid() have been improved.
  515 - The functions getSidFromName(), cmdSetGroup() and cmdSetOwner() have
  516   been added to cmd_win.c. The functions getNameFromSid(),
  517   cmdGetGroup() and cmdGetOwner() have been improved.
  518 - In big_rtl.c the functions bigMDivSizeLess() and bigModSizeLess()
  519   have been simplified. A bug triggered by a zero dividend has been
  520   fixed also.
  521 - In flt_rtl.c the function fltRand() has been fixed to work correct
  522   for rand(-Infinity, Infinity).
  523 - In numutl.c the function getDecimalInt() has been improved.
  524 - The function setEmpty() has been removed from set_rtl.c.
  525 - In set_rtl.c the functions setNext() and setToUInt() have been fixed
  526   to work correct.
  527 - In strlib.c and str_rtl.c the function strSplit() has been fixed to
  528   work correct, if the delimiter consists of two or more characters.
  529 - In fil_rtl.c the functions get_mode() and filClose() have been
  530   improved.
  531 - The program chkccomp.c has been improved to determine the values
  532   HAS_GETGRNAM_R, HAS_GETGRNAM, HAS_GETPWNAM_R and HAS_GETPWNAM.
  533 
  534 20200628:
  535 - The new library zstd.s7i has been added. This library supports
  536   Zstandard compressed files.
  537 - The functions getOwner() and getGroup() have been added to cpio.s7i,
  538   osfiles.s7i, ar.s7i, rpm.s7i, tar.s7i, zip.s7i and filesys.s7i.
  539 - The function unsetenv() has been added to the library
  540   environment.s7i. This function deletes a variable from the
  541   environment.
  542 - In bytedata.s7i the function getAsciiz() has been improved.
  543 - The function gets() has been improved in gzip.s7i, iobuffer.s7i,
  544   lzma.s7i, strifile.s7i, subfile.s7i, utf16.s7i, xz.s7i and
  545   string.s7i. Now gets() can be called with a maxLength of
  546   integer.last, without triggering an OVERFLOW_ERROR.
  547 - Several improvents have been done for the library rpm.s7i:
  548   - Now it supports a Zstandard compressed payload.
  549   - A catalog has been added to rpm.s7i. This is necessary allow
  550     writing to an RPM archive. Several functions have been rewritten
  551     to use the catalog instead of file numbers.
  552   - Checks for the payload digest and for file digests have
  553     been added.
  554   - Several RPM tags have been added and the function to write a tag
  555     name has been renamed to rpmtagName().
  556   - The functions getStringArray(), createMinimumOfCatalog(),
  557     createRegister(), getInt(), readCatalogEntry(),
  558     updateIndexEntry(), updateMetadata(), doSettings(), getDigest(),
  559     checkPayloadDigest(), archiveFilePath(), getOwner(), setOwner(),
  560     getGroup(), setGroup(), putFile() and mkdir() have been added.
  561 - The functions setOwner() and setGroup have been added to tar.s7i.
  562 - The library bitdata.s7i has been improved. Now it supports the type
  563   reverseBitStream and functions to create and read reverse bit
  564   streams. Reverse bit streams are used by the Zstandard compression.
  565 - The new exception INDEX_ERROR has been introduced. An INDEX_ERROR
  566   occurs, if an index is used to access an 'array', 'string',
  567   'bstring' or 'ref_list' element beyond the elements that actually
  568   exist. Formerly this triggered a RANGE_ERROR.
  569 - Several files have been adjusted to use INDEX_ERROR instead of
  570   RANGE_ERROR. Checks for INDEX_ERROR have been added to chkexc.sd7
  571   and chkstr.sd7.
  572 - The FAQ has been improved. Now the design principles of Seed7 are
  573   listed. The description how the type of an expression is determined
  574   (bottom up), has been improved also.
  575 - Chapters about the exception RANGE_ERROR and about the suppresson
  576   of exception checks have been added to the manual.
  577 - Several things in the compiler have been improved:
  578   - Index checks can now be suppressed with the option -si.
  579   - The generation of warnings, for a catch with suppressed exception
  580     checks, has been improved.
  581   - Code for the actions INT_BYTES_BE_2_UINT and INT_BYTES_LE_2_UINT
  582     is inlined, if the option -oc3 is used and the argument of the
  583     function is a string slice. This actions are used by the function
  584     bytes2Int().
  585   - Now optimized code for the index access of a ref_list is generated.
  586     This reduces the runtime of an index access by 56% (Measured with
  587     gcc and Valgrind when the compiler compiles bas7). The runtime of
  588     the compiler is reduced by 0.2%.
  589   - Better code for the 'times' operator is generated. Now arrTimes()
  590     is used, if the array element is a simple value type (e.g. an
  591     integer).
  592   - Converting an integer to a bitset and computing the cardinality
  593     of the set is already optimized by the compiler. Now the check for
  594     negative integers can be suppressed with -sr.
  595   - Index accesses for string and bstring have been improved to use
  596     the function getParameterAsVariable().
  597 - Tests for the compiler optimization of bytes2Int() have been added
  598   to chkint.sd7.
  599 - In chkstr.sd7 tests vor @:= with an empty source string (e.g.
  600   stri @:= [1] "") have been added.
  601 - The functions memsetGeneric() and arrTimes() have been added to
  602   arr_rtl.c.
  603 - In arr_rtl.c a check to avoid creating an array with a negative
  604   number of elements has been added to arrMalloc().
  605 - The program chkccomp.c has been improved to determine the values
  606   os_unsetenv, PUTENV_CAN_REMOVE_KEYS, DEFINE_WUNSETENV, HAS_WCSNLEN,
  607   HAS_GETGRGID_R, HAS_GETGRGID, HAS_GETPWUID_R and HAS_GETPWUID.
  608 - The function linkerOptionAllowed() has been added to chkccomp.c.
  609 - The program chkccomp.c has been improved to write the linker option
  610   -rpath in a way that works with modern linkers. The meaning of the
  611   -rpath option has changed and it must be combined with the option
  612   --disable-new-dtags to get the old behavior.
  613 - The functions getGroupFromGid(), getUserFromUid(), cmdGetGroup(),
  614   cmdGetOwner() and cmdUser() have been added to cmd_unx.c.
  615 - The functions wunsetenv(), getNameFromSid(), cmdGetGroup(),
  616   cmdGetOwner() and cmdUser() have been added to cmd_win.c.
  617 - Definition of extern "C" have been added to db_fire.h, db_lite.h,
  618   db_my.h, db_oci.h, db_odbc.h, db_post.h and db_tds.h.
  619 - Interpreter and compiler have been improved to support the actions
  620   CMD_GET_GROUP, CMD_GET_OWNER and CMD_UNSETENV.
  621 
  622 20200531:
  623 - The libraries tar.s7i, cpio.s7i and rpm.s7i have been improved such
  624   that the file system functions follow symbolic links (inside of the
  625   archive).
  626 - The library zip.s7i has been improved to support the functions
  627   setFileMode(), setMTime() and putFile().
  628 - The library ar.s7i has been improved to allow UTF-8 file names and to
  629   support the functions setFileMode(), setMTime(), putFile() and
  630   removeFile().
  631 - The library rpm.s7i has been improved to support a LZMA compressed
  632   payload.
  633 - The library cpio.s7i has been improved such that setFileMode(),
  634   putFile() and mkdir() work correct.
  635 - The library lzma.s7i has been fixed such that xz.s7i can handle
  636   uncompressed chunks in an XZ archive. A bug in the function length()
  637   has been fixed also.
  638 - The new library fileutil.s7i has been added. This library supports
  639   inserting and deleting areas in a file. The function copyFile, which
  640   copies data between open files, has been moved from file.s7i to
  641   fileutil.s7i.
  642 - The function truncate(), which changes the length of a file, has been
  643   added to file.s7i, external_file.s7i, clib_file.s7i, strifile.s7i and
  644   utf16.s7i.
  645 - The library iobuffer.s7i has been improved to allow switching between
  646   reading and writing (and vice versa) as long as seek() is called in
  647   between. The functions flush() and close() have been added and the
  648   functions seek(), tell() and moveLeft() have been improved.
  649 - The function deflate(), which deflates a string has been added to the
  650   library deflate.s7i.
  651 - The function moveLeft() has been improved in strifile.s7i and
  652   stritext.s7i.
  653 - The function timestamp1601 has been added to time.s7i.
  654 - The bas7.sd7 (basic interpreter) example program has been improved.
  655   Support for LINPUT statements, for the function RPT$ and for the
  656   string concatenation operator & has been added. The predefined
  657   subprogram CHAR has been improved. Now PRINT statemens allow a colon
  658   (:) between strings to describe a line break. Now INPUT statements
  659   allow a colon (:) between input prompt and variable list. A dummy
  660   implementation of the predefined subprogram SOUND has been defined.
  661 - In seed7_05.s7i the definition of ::= for the type void has been
  662   changed to use the action ENU_CREATE instead of PRC_NOOP. This avoids
  663   a strange interpreter message (loc not dumped) if a void value is
  664   written.
  665 - Tests in chkint.sd7 have been split into several functions.
  666 - Documentation in the FAQ, the manual and s7c.1 has been improved.
  667 - Interpreter and compiler have been improved to support the new action
  668   FIL_TRUNCATE.
  669 - The compiler has been improved (in comp/inline.s7i in the function
  670   push_inline_func_param) to add a "const" for a parameter definition.
  671   This avoids a compilation error with g++.
  672 - The keyboard driver gkb_x11.c has been improved to to support the
  673   ALT modifier also under macOS.
  674 - Code in sql_tds.c has been refactored. Unused struct fields have been
  675   removed. The function sqlColumnDuration() has been improved.
  676 - In tim_dos.c the function timAwait() has been improved to use
  677   timToOsTimestamp() instead of mkutc() to get the timestamp.
  678 - The function mkutc() has been removed from tim_rtl.c.
  679 - The function XGetKeyboardControl() has been added to fwd_x11.c and
  680   x11_x.h.
  681 - The files fwd_term.c and fwd_term.h have been improved to work also
  682   if termios.h is available.
  683 - The makefiles have been improved to simplify the build system. Now
  684   chkccomp.c includes the file base.h and generates version.h by
  685   copying base.h and appending settings.h. Afterwards chkccomp.c
  686   appends more values to version.h. These values are determined with
  687   test programs. Additionally GET_CC_VERSION_INFO has been replaced by
  688   CC_OPT_VERSION_INFO and CC_VERSION_INFO_FILEDES. The value
  689   C_COMPILER_VERSION is now determined by chkccomp.c.
  690 - The files confval.sd7, cc_conf.s7i, cmd_rtl.c and setpaths.c have
  691   been improved to use the new configuration values.
  692 - In cc_conf.s7i, confval.sd7, s7c.sd7, chkccomp.c, cmd_rtl.c and
  693   os_decls.h the configuration values CC_ERROR_FILDES,
  694   REDIRECT_FILDES_1 and REDIRECT_FILDES_2 have been renamed to
  695   CC_ERROR_FILEDES, REDIRECT_FILEDES_1 and REDIRECT_FILEDES_2
  696   respectively.
  697 - The functions appendFile(), determineCompilerVersion() and
  698   determineFtruncate() have been added to chkccomp.c.
  699 - Documentation comments have been added or improved in array.s7i,
  700   bigint.s7i, integer.s7i, progs.s7i, string.s7i, flt_rtl.c,
  701   ref_data.c, reflib.c, setlib.c, set_rtl.c, sigutl.c and tim_rtl.c.
  702 - Occurrences of the words minimal and maximal have been replaced with
  703   minimum and maximum in several files.
  704 
  705 20200502:
  706 - As suggested by Zachary Menzies a detection of more modifier keys has
  707   been added. E.g.: KEY_SHIFT_LOCK and KEY_NUM_LOCK. These modifier
  708   keys have a state. The state of KEY_SHIFT_LOCK can be retrieved with
  709   buttonPressed(KEYBOARD, KEY_SHIFT_LOCK_ON).
  710 - Several new keys and key combinations such as KEY_PRINT, KEY_PAUSE,
  711   KEY_ALT_LEFT and KEY_SFT_MENU have been added to keybd.s7i. Existing
  712   definitions in keybd.s7i have been refactored. Key names in
  713   keydescr.s7i have been updated.
  714 - The program gkbd.sd7 has been improved to show the new capabilities
  715   of the keyboard interface.
  716 - The bas7.sd7 (basic interpreter) example program has been improved.
  717   Support for the predefined subprograms CHAR, CLEAR, COLOR, HCHAR,
  718   KEY, SCREEN and VCHAR and for the function SEG$ has been added.
  719 - The bitmap font font8x8 has been added. This is a font with 8x8 pixel
  720   used by the TI-99/4A homecomputer.
  721 - The functions line() and column() have been added to pixmap_file.s7i.
  722 - The function replace1() has been added to string.s7i.
  723 - In the manual the chapters about types and the keyboard have been
  724   improved.
  725 - The compiler has been improved to link database libraries only if
  726   they are needed.
  727 - The compiler has been improved to use builtin functions of the C
  728   compiler (if available) to do integer overflow checks. This reduces
  729   the runtime of the xz (lzma2) decompression by 4% (measured with gcc
  730   and valgrind, when decompressing a binary Seed7 package).
  731 - The compiler has been improved to use a better approach to test for
  732   integer overflow of addition and subtraction, if no builtin functions
  733   are available. This reduces the runtime of the xz (lzma2)
  734   decompression by 0.8% (measured with gcc and valgrind, when
  735   decompressing a binary Seed7 package).
  736 - The compiler has been improved to optionally suppress the generation
  737   of checks for integer division by zero with the option -sd.
  738 - The simple function profiling of the Seed7 compiler has been improved
  739   to write the place and the name of the Seed7 function and to avoid
  740   a C compiler error about "too many initializers".
  741 - The compiler has been improved to write a warning if there is a catch
  742   statement for an exception although the checks for this exception
  743   have been suppressed (with the option -s).
  744 - The compiler has been improved to work correct for all corner cases
  745   of the string operations [, mult and @:=.
  746 - Testcases for the operators [, mult and @:= and for the functions
  747   pos() and rpos() have been added to chkstr.sd7.
  748 - Testcases for the exception RANGE_ERROR have been added to
  749   chkbig.sd7. The function bigInteger() and the operators radix, RADIX
  750   and parse are checked now, if they correctly raise RANGE_ERROR.
  751 - Testcases for the exception RANGE_ERROR have been added to
  752   chkint.sd7. The functions bytes() and integer() and the operators
  753   radix, RADIX, sci and parse are checked now, if they correctly raise
  754   RANGE_ERROR.
  755 - Testcases for the exception NUMERIC_ERROR have been added to
  756   chkint.sd7. The operators div, rem, mdiv, mod and ** are checked
  757   now, if they correctly raise NUMERIC_ERROR.
  758 - A lot of testcases has been added to chkint.sd7 and chkovf.sd7 in
  759   the function check_reduced_overflow_checking_for_sums().
  760 - In comp/big_act.s7i the function process_const_big_ipow has been
  761   improved to allow that the check for a negative exponent can be
  762   optionally omitted.
  763 - In chkovf.sd7 the checks for the operators rem and mod have been
  764   improved to allow that the operators return the correct result
  765   instead of raising OVERFLOW_ERROR.
  766 - Index access in comp/str_act.s7i and comp/bst_act.s7i has been
  767   improved to work also for the index integer.first (now the index is
  768   casted to (unsigned) and afterwards 1 is subtracted).
  769 - In comp/intrange.s7i the function getIntRange has been improved to
  770   return better ranges for INT_ABS and INT_NEGATE.
  771 - The keyboard driver gkb_x11.c has been improved to support new keys
  772   and key combinations. Additionally the modifier state is synched now
  773   with the keypresses. This allows reading a modifier key state (e.g.
  774   (control has been pressed) from the moment when the main key (e.g.
  775   the letter A) was pressed.
  776 - The program chkccomp.c has been improved to determine the values
  777   CHECK_INT_DIV_ZERO_BY_ZERO, HAS_BUILTIN_OVERFLOW_OPERATIONS and
  778   SYSTEM_DATABASE_LIBS. The logic to determine the values
  779   CHECK_INT_DIV_BY_ZERO, CHECK_INT_REM_BY_ZERO and
  780   CHECK_INT_REM_ZERO_BY_ZERO has been improved.
  781 - The configuration value CHECK_INT_DIV_ZERO_BY_ZERO,
  782   BUILTIN_ADD_OVERFLOW, BUILTIN_SUB_OVERFLOW, BUILTIN_MULT_OVERFLOW
  783   and SYSTEM_DATABASE_LIBS have been added to cc_conf.s7i, confval.sd7
  784   and cmd_rtl.c.
  785 - Documentation comments have been added or improved in cc_conf.s7i,
  786   encoding.s7i, gzip.s7i, lzma.s7i, pixmap_file.s7i, scanfile.s7i,
  787   sql_base.s7i, string.s7i, xz.s7i, sigutl.c and striutl.c.
  788 
  789 20200405:
  790 - The new library xz.s7i has been added. This library supports XZ
  791   compressed files.
  792 - The new library lzma.s7i has been added. This library supports LZMA
  793   compressed files.
  794 - The library rpm.s7i has been improved to support a XZ compressed
  795   payload.
  796 - The library tar_cmds.s7i and the program tar7.s7i have been improved
  797   to support XZ and LZMA compressed tar archives.
  798 - The library zip.s7i has been improved to support Unicode file names.
  799 - As suggested by Zachary Menzies a detection of modifier keys has been
  800   added. E.g. buttonPressed(KEYBOARD, KEY_SHIFT). Additionally several
  801   new key combinations such as KEY_SFT_MOUSE1 and KEY_CTL_PAD_CENTER
  802   have been added to keybd.s7i.
  803 - The program gkbd.sd7 has been improved to show the new capabilities
  804   of the keyboard interface.
  805 - Interpreter and compiler have been improved, to write a compile time
  806   error, if a numerical escape sequence in a string or char literal
  807   is too big.
  808 - The compiler has been improved to omit overflow checks for the
  809   dividend of the mod operator, if the divisor is a power of two. This
  810   reduces the runtime of the xz (lzma2) decompression by 2.3% (measured
  811   with gcc and valgrind, when decompressing a binary Seed7 package).
  812 - The compiler file comp/intrange.s7i has been added. This file defines
  813   the function getIntRange(), which computes the range of possible
  814   results for several operators (e.g.: div, rem, mdiv, mod, >>) and
  815   functions (e.g.: sqrt, length, pos, rand, log).
  816 - The compiler has been improved to use the function getIntRange() to
  817   omit overflow checks for addition, subtraction, multiplication and
  818   left shift of integer values. This reduces the runtime of the xz
  819   (lzma2) decompression by 0.4% (measured with gcc and valgrind, when
  820   decompressing a binary Seed7 package).
  821 - In the compiler the code generation for the operators div, rem, mdiv,
  822   mod, * and << has been improved to work without catching the
  823   exception OVERFLOW_ERROR.
  824 - The compiler has been improved to allow that a range check is
  825   suppressed with -sr for the action FLT_BITS2SINGLE (convert integer
  826   to single precision float value).
  827 - The compiler has been improved to generate code that writes the error
  828   message of a DATABASE_ERROR, if the exception is uncaught.
  829 - The compiler has been improved to suppress the usage of the C
  830   compiler option CC_OPT_TRAP_OVERFLOW (-ftrapv), if the Seed7 compiler
  831   option -so (suppress overflow checks) is used.
  832 - The makefiles mk_clang.mak, mk_clangw.mak and mk_osxcl.mak have been
  833   improved to define CC_OPT_TRAP_OVERFLOW with the value -ftrapv.
  834 - The functions check_mod_by_power_of_two_optimization() and
  835   check_mod_by_computed_power_of_two_optimization() have been added
  836   to chkint.sd7. This functions check the mod operator regarding
  837   the new compiler optimization for the mod dividend.
  838 - The functions check_reduced_overflow_checking_for_sums(),
  839   check_reduced_overflow_checking_for_mult() and
  840   check_reduced_overflow_checking_for_lshift() have been added to
  841   chkint.sd7 and chkovf.sd7. This functions test the compiler
  842   optimization to reduce overflow checking with getIntRange().
  843 - The libraries aes.s7i, bitdata.s7i, color.s7i, deflate.s7i, draw.s7i,
  844   ico.s7i, msgdigest.s7i, pkcs1.s7i, showtls.s7i and utf16.s7i have
  845   been improved to use the division operators 'mdiv' and 'mod' instead
  846   of 'div' and 'rem'.
  847 - The configuration value CC_OPT_TRAP_OVERFLOW has been introduced in
  848   cc_conf.s7i, confval.sd7, s7c.sd7, chkccomp.c, cmd_rtl.c and
  849   read_me.txt.
  850 - The function write_exception_info() has been added to runerr.c. This
  851   function is called in executl.c.
  852 - The keyboard drivers gkb_win.c and gkb_x11.c have been improved to
  853   support modifier keys and more key combinations.
  854 - Definitions for 31 new key compinations and 9 modifier keys have
  855   been added to keybd.s7i and keydescr.s7i.
  856 - Documentation comments have been improved in ar.s7i, cc_conf.s7i
  857   and csv.s7i.
  858 
  859 20200308:
  860 - The new library cpio.s7i has been added. This library supports cpio
  861   archive files.
  862 - The new library rpm.s7i has been added. This library supports rpm
  863   archive files.
  864 - The new library ar.s7i has been added. This library supports ar
  865   archive files.
  866 - The new library subfile.s7i has been added. This library allows to
  867   open a part of an existing file as read only file.
  868 - The new library filebits.s7i has been added. This library defines
  869   file mode bits used by archive file systems.
  870 - The libraries bin32.s7i and bin64.s7i have been improved to support
  871   case statements for the types bin32 and bin64.
  872 - The tarHeader element 'size' has been renamed to 'fileSize' in
  873   tar.s7i and tar_cmds.s7i.
  874 - Tests for the operator 'conv' and for the functions compare(), str(),
  875   float(), trunc() and round() have been added to chkflt.sd7.
  876 - The program chkccomp.c has been improved to determine the values
  877   MINIMUM_TRUNC_ARGUMENT and MAXIMUM_TRUNC_ARGUMENT.
  878 - Definitions of MINIMUM_TRUNC_ARGUMENT and MAXIMUM_TRUNC_ARGUMENT have
  879   been added to cc_conf.s7i.
  880 - The compiler (s7c) has been improved (in comp/flt_act.s7i) such that
  881   the actions FLT_TRUNC and FLT_ROUND do the correct check for the
  882   exception RANGE_ERROR.
  883 - The database driver sql_oci.c has been improved to support the types
  884   BINARY_FLOAT and BINARY_DOUBLE.
  885 - Tests for FLOAT and DOUBLE fields have been added to chkdb.sd7.
  886 - A definition of the constant GZIP_MAGIC has been added to gzip.s7i.
  887 - In file.s7i and iobuffer.s7i the functions hasNext() and length()
  888   have been changed to use an inout parameter for the file. This fixes
  889   a problem in compiled programs with some file systems where also an
  890   inout parameter is used for the file.
  891 - The file db_oci.h has been improved to define SQLT_BFLOAT,
  892   SQLT_IBFLOAT, SQLT_BDOUBLE and SQLT_IBDOUBLE.
  893 - In fltlib.c the functions flt_trunc() and flt_round() have been
  894   improved to do the correct check for the exception RANGE_ERROR.
  895 
  896 20200209:
  897 - The new database driver sql_tds.c has been added. This driver uses
  898   the Tabular Data Stream (TDS) protocol to transfer data between
  899   database server and client. TDS is used by SQL Server and Sybase.
  900   This driver allows the connection to a SQL Server database from
  901   Linux.
  902 - The new library db_prop.s7i has been added. This library provides a
  903   collection of database properties. 
  904 - The example program chkdb.sd7 has been improved:
  905   - Tests with comments in sql statements have been added.
  906   - Tests that fetch boolean values from numeric fields have been
  907     added.
  908   - Tests for date, time, datetime and timestamp fields have been
  909     added.
  910 - In the library time.s7i the function time() has been improved, to
  911   accept more variants of the ISO 8601 time and date format including
  912   variants with a time zone.
  913 - The interpreter (s7) has been improved to write the error message of
  914   a DATABASE_ERROR, if the exception is not caught.
  915 - In tim_rtl.c the function timUtcFromTimestamp() has been improved to
  916   work without calling gmtime() or gmtime_r() or gmtime_s(). Now the
  917   function always works with a 64-bit signed timestamp. Gmtime() uses
  918   time_t, which can be 32-bit or 64-bit and it can be signed or
  919   unsigned.
  920 - In tim_rtl.c the function timToTimestamp() has been improved to work
  921   without calling mkutc(). This way the function always works with a
  922   64-bit signed timestamp. Mkutc() is also defined in tim_rtl.c and it
  923   uses the system dependent type time_t.
  924 - In tim_rtl.c the functions timToOsTimestamp(), assignTime() and
  925   dateFromDaysSince1900() have been added and the functions
  926   timFromBigTimestamp() and timToBigTimestamp() have been removed.
  927 - In exec.c the functions par_restore() and loc_restore() have been
  928   improved to free unneeded memory, in case an exception has been
  929   raised.
  930 - In executl.c the function destroy_local_object() has been improved to
  931   optionally ignore exceptions.
  932 - The functions leaveExceptionHandling(), saveFailState() and
  933   restoreFailState() have been added to runerr.c. This function is used
  934   in executl.c and prclib.c.
  935 - In numutl.c the functions getDecimalBigRational() and
  936   getDecimalFloat() have been improved to accept both, a decimal point
  937   and a decimal comma.
  938 - In several database drivers the function processStatementStri() has
  939   been improved to replace a comment with a space.
  940 - Interpreter and compiler have been improved to support the actions
  941   SQL_ROLLBACK, SQL_GET_AUTO_COMMIT and SQL_SET_AUTO_COMMIT.
  942 - The functions sqlRollback(), sqlGetAutoCommit() and
  943   sqlSetAutoCommit() have been added to sql_cli.c, sql_lite.c,
  944   sql_my.c, sql_oci.c, sql_post.c and sql_rtl.c.
  945 - In the database driver sql_lite.c the functions sqlBindTime() and
  946   sqlColumnTime() have been improved to support more time and date
  947   formats. The function sqlColumnTime() calls assignTime() to reach
  948   this goal.
  949 - In the database driver sql_my.c the function sqlColumnTime() has
  950   been improved to correct values, if they are outside of the allowed
  951   range.
  952 - The database driver sql_db2.c has been improved to allow that for
  953   the functions SQLExecute() and SQLFetch() SUCCESS_WITH_INFO is
  954   treated as SQL_SUCCESS.
  955 - The database driver sql_post.c has been improved:
  956   - Inserting and selecting time fields is now supported under
  957     different operating systems and compilers.
  958   - The type preparedStmtRecord and the functions freePreparedStmt()
  959     and sqlPrepare() have been improved such that a prepared statement
  960     maintains a dbType reference instead of a connection (PGconn).
  961   - The functions doExecSql() and implicitCommit() have been added.
  962     These functions are used for autocommit and for transaction
  963     handling.
  964 - The database driver sql_oci.c has been improved:
  965   - The function sqlBindTime() has been improved to set the timeZone
  966     and to use a nanosecond as unit for the fraction of a second.
  967     There is also a check for situations in which the function
  968     OCIDateTimeConstruct() fails.
  969   - The function sqlColumnTime() has been improved to use the function
  970     OCIDateTimeGetTimeZoneOffset() to retrieve a timeZone and to use a
  971     nanosecond as unit for the fraction of a second.
  972 - The database driver sql_cli.c has been improved:
  973   - In case of a DATABASE_ERROR exception the native SQL error is
  974     assigned to the errorCode.
  975   - The function freePreparedStmt() has been changed to ignore
  976     possible errors of SQLFreeStmt().
  977   - Binding SQL_BLOB and SQL_CLOB parameters is supported now.
  978   - Retrieving SQL_SS_TIME2 and SQL_XML columns is supported now.
  979   - Retrieving datetime2 columns in sqlColumnTime() has been improved
  980     to use the function assignTime().
  981 - The database include files db_lite.h, db_my.h, db_oci.h and db_odbc.h
  982   have been improved.
  983 - In sql_srv.c the functions connectToServer() and
  984   connectToLocalServer() have been improved to return a boolean value
  985   instead of a SQLRETURN value.
  986 - In cmd_rtl.c the functions cmdSetATime() and cmdSetMTime() have been
  987   improved to use the new function timToOsTimestamp().
  988 - The function determineTdsDefines() has been added to chkccomp.c.
  989 - In exec.c the function suspendInterpreter() has been renamed to
  990   doSuspendInterpreter().
  991 
  992 20191229:
  993 - Spelling corrections have been done in several files. Many thanks go
  994   to Jens Schleusener, for sending a source code misspelling report
  995   from Fossies.
  996 - The memory management has been improved:
  997   - In exec.c the functions res_restore() and exec_action() have been
  998     improved to free unneeded memory, in case an exception has been
  999     raised.
 1000   - In prclib.c the functions prc_block(), prc_block_catch_all() and
 1001     prc_block_otherwise() have been improved to free the
 1002     fail_expression, in case an exception has been caught.
 1003   - In numutl.c the function getDecimalBigRational() has been improved
 1004     to free the temporary string.
 1005   - In sql_rtl.c the function sqlColumnBigRat() has been improved to
 1006     free the old values of numerator and denominator.
 1007 - In sql_base.s7i the function openDatabase() with DB_ODBC and dbPath
 1008   has been improved to use a DSN (data source name), if colon and slash
 1009   are missing. E.g.: openDatabase(DB_ODBC, "anyDsn", "test", "test")
 1010 - The compiler has been improved to support the action PRC_HEAPSTAT.
 1011 - In flistutl.c the functions heapStatistic() and check_heap() have
 1012   been improved to consider processes, sql functions, databases,
 1013   prepared statements and fetched data. The function heap_statistic()
 1014   has been renamed to heapStatistic().
 1015 - In sql_cli.c the functions sqlColumnBigInt(), sqlColumnBigRat(),
 1016   sqlColumnBStri(), sqlColumnFloat() and sqlColumnStri() have been
 1017   improved to check, if the length returned by the database is greater
 1018   than the buffer_length. In this case a DATABASE_ERROR is raised.
 1019 - In sql_cli.c the function setDecimalBigRat() has been improved to
 1020   convert integers to a string without decimal point.
 1021 - The function SQLGetFunctions() has been removed from db_odbc.h,
 1022   sql_cli.c and the makefiles (variable OBJCOPY_PARAMS).
 1023 - In sql_cli.c the element SQLDescribeParam_supported has been removed.
 1024   Instead the function pointer of SQLDescribeParam is checked and the
 1025   result of SQLDescribeParam() is compared with SQL_SUCCESS.
 1026 - In sql_odbc.c the function driverConnect() has been improved to
 1027   search only for a driver, if the driver name is not empty.
 1028 - In sql_odbc.c the function sqlOpenOdbc() has been improved to use
 1029   the dbName as DSN (data source name) only, if no driver and no server
 1030   are given.
 1031 - In sql_post.c the function setupDll() has been improved to call
 1032   dllOpen() instead of a recursive call of setupDll().
 1033 - The new macro ALLOC_RECORD2() has been added to heaputl.h. The macro
 1034   is used in drw_win.c, drw_x11.c, sql_cli.c, sql_fire.c, sql_lite.c,
 1035   sql_my.c, sql_oci.c and sql_post.c.
 1036 - The new macros COUNT_GROW_STRI() and COUNT_SHRINK_STRI() have been
 1037   added to heaputl.h. This macros are currently empty. They are planned
 1038   for a heap statistic concerning unused chars in strings with
 1039   capacity.
 1040 - In chkccomp.c several improvements have been done. In
 1041   determineFireDefines() a search for the Firebird home directory has
 1042   been added. In determineDb2Defines() the environment variable
 1043   DB2_HOME is used now, to determine the Db2 home directory. In
 1044   determineConsoleDefines() and determineSqlServerDefines() the list
 1045   of DLLs has been improved.
 1046 - The heap statistic for strings has been improved to use the string
 1047   capacity instead of the string size.
 1048 - The file config.h has been changed to define the macros
 1049   USE_ALTERNATE_NEXT_CHARACTER, USE_INFILE_BUFFER, USE_CHUNK_ALLOCS,
 1050   USE_ALTERNATE_CHUNK_ALLOCS and USE_MAXIMUM_MALLOC_CHECK always. Now
 1051   these macros can have a value of 0 or 1.
 1052 
 1053 20191215:
 1054 - The database libraries sql_srv.c and sql_cli.c have been improved to
 1055   allow the connection to a SQL Server database from Linux. The library
 1056   libtdsodbc.so is used to do the actual communication with the
 1057   database.
 1058 - The build system of Seed7 has been improved. Logic regarding X11,
 1059   ncurses and the databases has been moved from the makefiles to
 1060   chkccomp.c.
 1061 - The build for Linux has been improved to work even if essential
 1062   header files (for X11 or ncurses) are missing. This should only be
 1063   used, if it is impossible to install the development packages of X11
 1064   or ncurses.
 1065 - The example program chkdb.sd7 has been improved to do tests for SQL
 1066   Server.
 1067 - In the FAQ the explanation of "What is necessary to compile Seed7
 1068   with database connections", has been improved.
 1069 - In chkccomp.c the functions findIncludeFile(), findStaticLib(),
 1070   findLinkerOption(), listDynamicLibs() and determineConsoleDefines()
 1071   have been added.
 1072 - In chkccomp.c the functions determineEnvironDefines(),
 1073   determineStatFunctions(), determineX11Includes(),
 1074   determineMySqlDefines(), determineSqliteDefines(),
 1075   determinePostgresDefines(), determineOdbcDefines(),
 1076   determineOciDefines(), determineFireDefines(), determineDb2Defines(),
 1077   determineSqlServerDefines(), determineIncludesAndLibs() and main()
 1078   have been improved.
 1079 - The files fwd_term.c and fwd_term.h have been added. The functions in
 1080   fwd_term.c forward calls to a shared terminfo library.
 1081 - The files con_inf.c, kbd_inf.c, kbd_poll.c, trm_cap.c and trm_inf.c
 1082   have been improved to work with fwd_term.c and fwd_term.h.
 1083 - The file fwd_x11.c has been added. The functions in fwd_x11.c forward
 1084   X11 calls to a shared X11 library. Fwd_x11.c is used, if it is not
 1085   possible to link to a static X11 library.
 1086 - The file x11_x.h has been added. This file is used, if no X11 include
 1087   file can be found.
 1088 - The files drw_x11.c and gkb_x11.c have been improved to work with
 1089   x11_x.h and x11_x.h.
 1090 - The makefiles have been adjusted to work with the new build system.
 1091 - The program warn.c has been added. This program writes a warning, if
 1092   header files of X11 or ncurses are missing.
 1093 - Documentation has been added to read_me.txt.
 1094 - In dll_win.c the function dllOpen() has been improved to assure, that
 1095   a path to a DLL uses a backslash as path delimiter. This is required
 1096   by the function LoadLibrary().
 1097 - The files bin/call_cl.bat and bin/call_lib.bat have been removed.
 1098 
 1099 20191117:
 1100 - Support for mice with forward and back button has been added to the
 1101   Seed7 run-time library. Many thanks go to Zachary Menzies, for
 1102   driving my focus towards mice with additional buttons.
 1103 - Support for the C compiler from Visual Studio 2019 has been added.
 1104   Many thanks go to Alexander Yu. Vlasov for pointing out compilation
 1105   problems with Visual Studio 2019 and for investigating the problems.
 1106 - Interpreter and compiler have been improved to support DB2 and SQL
 1107   Server databases.
 1108 - In the manual the chapter about the database abstraction API has been
 1109   improved.
 1110 - The compiler has been improved to optimize the function replace()
 1111   (action STR_REPL). Special functions (strChRepl() and strChChRepl())
 1112   are used, if the searched or the replaced string consist of one
 1113   character. This works even, if a character is converted to a string
 1114   with the function str().
 1115 - Testcases for replace() have been added to chkstr.sd7.
 1116 - The program bigfiles.sd7 has been improved to search for the biggest
 1117   directories additionally to the biggest files.
 1118 - The libraries keybd.s7i and keydescr.s7i have been improved to
 1119   support KEY_MOUSE_FWD and KEY_MOUSE_BACK.
 1120 - The library sql_base.s7i and the programs db7.sd7 and sql7.sd7 have
 1121   been improved to support DB_DB2 and DB_SQL_SERVER.
 1122 - In striutl.c the function stri_to_standard_path() has been improved,
 1123   to do a smarter mapping from a DOS/Windows path to the Seed7 standard
 1124   path representation.
 1125 - In osfiles.s7i the functions makeParentDirs() and convDosPath() have
 1126   been improved. Now convDosPath() and stri_to_standard_path() use the
 1127   same algorithm to map from a DOS/Windows path to the Seed7 standard
 1128   path representation.
 1129 - The function strChChRepl() has been added to str_rtl.c.
 1130 - The program chkccomp.c has been improved to define the macros
 1131   REMOVE_REATTEMPTS, SETENV_ALLOWS_KEY_WITH_EQUALS_SIGN and
 1132   GETENV_ALLOWS_KEY_WITH_EQUALS_SIGN.
 1133 - The functions determineDb2Defines() and determineSqlServerDefines()
 1134   have been added to chkccomp.c.
 1135 - The names of database DLLs (shared libraries) has been moved from
 1136   the makefiles to chkccomp.c.
 1137 - The database driver sql_odbc.c has been refactored to be based on
 1138   sql_cli.c. Most of the contents of sql_odbc.c has been moved to
 1139   sql_cli.c and sql_odbc.c now includes sql_cli.c.
 1140 - The new database drivers sql_db2.c (for DB2) and sql_srv.c (for SQL
 1141   Server) have been added. Like sql_odbc.c this drivers also include
 1142   sql_cli.c.
 1143 - In cmd_rtl.c the function cmdChdir() has been improved to use an
 1144   extended length path only, if it is absolutely necessary. In Windows
 1145   an extended length path starts with \\?\ and can have a length
 1146   greater equal 260. Many subprocesses cannot handle a current working
 1147   directory with an extended length path.
 1148 - The makefiles mk_msvc.mak and mk_clangw.mak have been improved to
 1149   write INI files with all environment variables. The INI files are
 1150   seed7/bin/cl_env.ini and seed7/bin/clangenv.ini. This INI files
 1151   contain the environment variables necessary to use the C compiler.
 1152 - The program setpaths.c has been improved to optionally write a
 1153   definition of the macro CC_ENVIRONMENT_INI to version.h. The macro
 1154   CC_ENVIRONMENT_INI defines the path of seed7/bin/cl_env.ini or
 1155   seed7/bin/clangenv.ini.
 1156 - Support for the configuration values CC_ENVIRONMENT_INI and
 1157   DATABASE_LIB has been added to cc_conf.s7i and cmd_rtl.c (in
 1158   cmdConfigValue()).
 1159 - The function unsetenv7() has been added to cmd_unx.c.
 1160 - In gkb_x11.c and gkb_x11.c the functions gkbGetc() and
 1161   gkbKeyPressed() have been improved to support KEY_MOUSE_FWD and
 1162   KEY_MOUSE_BACK. Additionally the macro TRACE_EVENTS, to optionally
 1163   trace events has been introduced.
 1164 - The makefiles have been improved to create the new library s7_db.a
 1165   (s7_db.lib), which contains all database drivers.
 1166 - The files sql_cli.c (former sql_odbc.c) and sql_fire.c have been
 1167   improved to reduce the number of C compiler warnings.
 1168 - In sql_cli.c (former sql_odbc.c) the function setDbErrorMsg() has
 1169   been improved to work for database error messages with Unicode
 1170   characters. The function wstri_to_cstri8() has been added to do the
 1171   conversion.
 1172 - The file db_odbc.h has been improved to define wide character
 1173   functions instead of ASCII functions. This was needed by sql_srv.c
 1174   because it links dynamically to sqlsrv32.dll, which only defines
 1175   wide character functions.
 1176 
 1177 20191020:
 1178 - The support for Emscripten has been improved to allow the compilation
 1179   of Seed7 programs.
 1180 - Improvements have been done in sql_odbc.c to support the connection
 1181   with a DB2 database.
 1182 - Testcases for pos() and rpos() have been added to chkstr.sd7.
 1183 - The compiler has been improved to optimize the functions pos() and
 1184   rpos() (actions STR_POS, STR_RPOS, STR_CHPOS, STR_RCHPOS).
 1185 - The program setwpath.c has been improved to work correct in more
 1186   situations (E.g.: If no PATH variable exists, if the path to be added
 1187   is a substring of an existing path, if the first path in the PATH
 1188   variable is to be removed, if there is only on path in the PATH
 1189   variable and this path is to be removed).
 1190 - In fil.unx.c the function setupFiles() has been improved to mount the
 1191   file systems for Emscripten and node.js with a better strategy.
 1192 - In sql_odbc.c the function sqlStmtColumnName() has been improved to
 1193   work with one call of SQLColAttributeW(), if the length of the column
 1194   name is below a limit. Additionally a parameter of NULL as
 1195   destination for the name has be replaced by a valid address. The
 1196   usage of NULL triggered an error with DB2.
 1197 - The configuration value LINKED_PROGRAM_EXTENSION has been added to
 1198   cc_conf.s7i. The linker produces a file with the extension defined by
 1199   LINKED_PROGRAM_EXTENSION. Usually LINKED_PROGRAM_EXTENSION is
 1200   identical to EXECUTABLE_FILE_EXTENSION. Except for Emscripten where,
 1201   the value is ".js".
 1202 - The makefiles mk_emccl.mak and mk_emccw.mak have been improved to
 1203   define LINKED_PROGRAM_EXTENSION.
 1204 - The compiler (s7c.s7i), the function getProgramName() in arr_rtl.c,
 1205   the function cmdConfigValue() in cmd_rtl.c and the program chkccomp.c
 1206   have been improved to use LINKED_PROGRAM_EXTENSION.
 1207 - In chkccomp.c the function determineEnvironDefines() has been
 1208   improved to determine, if getenv() works case sensitive. A definition
 1209   of GETENV_IS_CASE_SENSITIVE, with a value of 0 or 1, is written to
 1210   version.h.
 1211 - The function getSearchPathDelimiter() has been added to cmd_rtl.c.
 1212   This function is used if SEARCH_PATH_DELIMITER is 0. In this case
 1213   the search path delimiter must be determined at run-time.
 1214 - The function systemForNodeJs() has been added to cmd_rtl.c. This
 1215   function is used for Emscripten and node.js as replacement for the
 1216   C run-time library function system().
 1217 - The files sql_fire.c, sql_lite.c, sql_my.c, sql_oci.c, sql_odbc.c
 1218   and sql_post.c have been improved to work correct, if no database
 1219   include file could be found. Normally this should not happen,
 1220   because Seed7 can provide its own database include files.
 1221 - The functions getenv7() and setenv7() have been added to cmd_unx.c.
 1222   This functions are used for Emscripten, because of a limitation in
 1223   the Emscripten implementations of getenv() and setenv().
 1224 - Documentation comments have been improved in external_file.s7i,
 1225   file.s7i, leb128.s7i, scanfile.s7i, scanstri.s7i and string.s7i.
 1226 - Comments explaining the usage of undefined behavior have been added
 1227   to arrlib.c, bstlib.c, set_rtl.c and strlib.c.
 1228 
 1229 20190919:
 1230 - A chapter about the database abstraction API has been added to the
 1231   manual.
 1232 - In the manual the chapters about primitive actions and about the
 1233   foreign function interface have been improved.
 1234 - An explanation of the Seed7 installer and about the download of Seed7
 1235   have been added to the FAQ.
 1236 - The new library ico.s7i has been added. This library supports the ICO
 1237   image file format.
 1238 - The library browser.s7i has been improved to be more robust regarding
 1239   network events.
 1240 - The database drivers have been improved to raise a DATABASE_ERROR,
 1241   if the database library could not be found. The error message of the
 1242   DATABASE_ERROR contains the name of the missing DLL respectively
 1243   shared object library.
 1244 - Documentation comments have been improved in 85 library/include files
 1245   (*.s7i). Wrong usages of the word "when" have been replaced by "if".
 1246 - Documentation comments have been improved in 96 C source files.
 1247   Wrong usages of the word "when" have been replaced by "if".
 1248 - Texts in 9 Seed7 programs (*.sd7) and in a lot of documentation files
 1249   have been improved. Wrong usages of the word "when" have been
 1250   replaced by "if".
 1251 
 1252 20190819:
 1253 - A definition of SQL_DRIVER_NOPROMPT has been added to db_odbc.h.
 1254   Many thanks go to Brett Senior for pointing out a fatal compilation
 1255   error in sql_odbc.c, when compiling Seed7 version 2019-08-18 under
 1256   Debian Linux.
 1257 - The example program chkdb.sd7 has been improved to write better
 1258   error messages.
 1259 - In reflib.c the function ref_select() has been improved to work
 1260   correct, if a derived struct overrides an element of the parent
 1261   struct.
 1262 
 1263 20190818:
 1264 - Interpreter and compiler have been improved to work correct, if a
 1265   derived struct overrides an element of the parent struct. Many thanks
 1266   go to Zachary Menzies, for reporting this error and for providing a
 1267   test program.
 1268 - In the FAQ the explanation, why Seed7 uses UTF-32, has been improved.
 1269   An explanation of the database abstraction layer, which provides an
 1270   database independent API, has also been added to the FAQ.
 1271 - In the manual the chapter about the deprecated function
 1272   removeAnyFile() has been replaced by a chapter about the function
 1273   removeTree().
 1274 - The program db7.sd7 (Database Inspector) has been improved to quote a
 1275   table name from the catalog when doing a select.
 1276 - The program sql7.sd7 has been improved to allow the execution of SQL
 1277   statements from a file. The function getSqlStatement has been added,
 1278   which reads a semicolon terminated SQL statement from a file.
 1279 - The library tar.s7i has been improved to accept extended headers with
 1280   meta data (PAX format) also when a tar file is opened as file system
 1281   with openTar(). The function readMinimumOfHead has been improved to
 1282   do this.
 1283 - A code page for JIS X 0201 encoding has been added to charsets.s7i.
 1284 - The program err.sd7 has been improved to contain test cases, where
 1285   UTF-16 surrogate characters and non Unicode characters are written as
 1286   Seed7 string escape sequences.
 1287 - In sql_oci.c the function sqlOpenOci() has been improved to allow
 1288   opening a database with host name, port and database name. This way a
 1289   database can be opened without an entry in tnsnames.ora. The type
 1290   connectDataRecord and the function setupConnectData() have been added
 1291   to sql_oci.c.
 1292 - The functions sqlOpenMy (in sql_my.c) and sqlOpenPost (in sql_post.c)
 1293   have been improved to allow opening a database with host name, port
 1294   and database name. Now host, port and dbName are parameters. Before
 1295   the functions split the parameter dbName into host and database name.
 1296   Specifying a port was not possible.
 1297 - In sql_odbc.c the function sqlOpenOdbc() has been improved to allow
 1298   opening a database with ODBC driver name, server name and database
 1299   name. This way a database can be opened without specifying a data
 1300   source in the ODBC Data Source Administrator (in the Control Panel).
 1301   The type connectDataRecord and the functions getRegularName(),
 1302   wstriSearchCh(), wstriSearch(), connectToServer(), connectToDriver()
 1303   and driverConnect() have been added to sql_odbc.c. A definition of
 1304   SQL_NEED_DATA has been added to db_odbc.h.
 1305 - In sql_rtl.c the function sqlErrMessage() has been improved to allow
 1306   database error messages encoded in UTF-8.
 1307 - The function sqlOpen() has been removed from sql_rtl.c.
 1308 - The function width() has been added to string.s7i and seed7_05.s7i.
 1309   This function computes the sum of the character widths in a string.
 1310   A character width can be 0 (for control characters), 1 (for normal
 1311   printable characters) and 2 (for fullwidth characters, e.g. KANJI).
 1312 - The library console.s7i has been improved to use the function
 1313   width(), to work correct with fullwidth characters (where the width
 1314   of a character is 2).
 1315 - Documentation comments have been improved in sql_base.s7i,
 1316   bytedata.s7i, unicode.s7i, integer.s7i and str_rtl.c.
 1317 - Interpreter and compiler have been improved to support the new
 1318   actions SQL_OPEN_FIRE, SQL_OPEN_LITE, SQL_OPEN_MY, SQL_OPEN_OCI,
 1319   SQL_OPEN_ODBC and SQL_OPEN_POST. The support for the action SQL_OPEN
 1320   has been removed.
 1321 - The program chkccomp.c and the makefiles mk_mingw.mak, mk_mingc.mak,
 1322   mk_msys.mak and mk_nmake.mak have been changed to avoid the warning
 1323   "unknown conversion type character 'l' in format", when compiling
 1324   with the MinGW C compiler. The macro FORMAT_LL_TRIGGERS_WARNINGS is
 1325   used to avoid the usage of the format length modifier ll.
 1326 - In error.c the function print_stri has been improved to write UTF-16
 1327   surrogate characters or non Unicode characters as Seed7 string escape
 1328   sequences.
 1329 - The unused functions con_beep() and con_setfont() have been removed
 1330   from con_con.c and con_win.c.
 1331 - The new macro ESC_SEQUENCE_MAX_LEN has been defined in striutl.h.
 1332   This macro is used in error.c and str_rtl.c to define the local
 1333   buffer escapeBuffer.
 1334 - Changes have been done in stat_win.c and stat_win.c to reduce the
 1335   number of MinGW C compiler warnings.
 1336 - Log functions have been added or improved in sctlib.c, sql_fire.c,
 1337   sql_my.c, sql_oci.c, sql_odbc.c and sql_post.c.
 1338 
 1339 20190714:
 1340 - The library tls.s7i has been improved to support elliptic curve
 1341   diffie hellman key exchange.
 1342 - The new library elliptic.s7i has been added. This library supports
 1343   elliptic curve cryptography (ECC). The library defines:
 1344   - Several named curves,
 1345   - Functions to add, double and multiply curve points.
 1346   - Functions for fast multiplication with jacobian coordinates.
 1347   - Functions to encode and decode curve points.
 1348   - Functions to sign and verify messages with the ECDSA.
 1349 - The functions emsaPkcs1V15Encoding, emsaPkcs1V15Decoding,
 1350   rsassaPkcs1V15Encrypt and rsassaPkcs1V15Decrypt have been added to
 1351   the library pkcs1.s7i.
 1352 - In x509cert.s7i the function getAlgorithmIdentifier has been improved
 1353   to accept algorithm identifiers without algorithm parameters.
 1354 - A version of the function createX509Cert, that creates a certificate
 1355   with keys for elliptic curve cryptography, has been added.
 1356 - The new library showtls.s7i had been added. This library defines
 1357   functions to show TLS messages. It can be used to debug tls.s7i.
 1358 - The library tar.s7i has been improved to accept extended headers with
 1359   meta data (PAX format). Now path and linkpath meta data is accepted.
 1360 - A new version of the function bytes() has been added to bytedata.s7i.
 1361   This function converts a bigInteger to a string of bytes with a given
 1362   length.
 1363 - Checks for the multiplication operators * and *:= with factors of
 1364   1 and -1 have been added to chkint.sd7.
 1365 - Checks for the operator 'lpad0' have been added to chkint.sd7.
 1366 - Checks for NaN have been added to chkflt.sd7.
 1367 - In the compiler (in comp/const.s7i) the action FLT_MOD has been added
 1368   to the list of pure function actions.
 1369 - The compiler has been improved to optimize the actions FLT_REM (in
 1370   comp/flt_act.s7i) and INT_LPAD0 (in comp/int_act.s7i).
 1371 - A corner case of the multiplication operator *:= has been fixed in
 1372   the compiler (process_const_int_mult_assign() in comp/int_act.s7i).
 1373   The bug occurred in the overflow checking code, when an array element
 1374   was multiplied with *:= -1. Multiplications of normal variables and
 1375   parameters with *:= and multiplications with other factors except -1
 1376   were not affected by this bug.
 1377 - Documentation comments have been improved in cc_conf.s7i and
 1378   pkcs1.s7i.
 1379 - In con_win.c the functions kbdKeyPressed() and kbdGetc() have been
 1380   improved to ignore mouse movement and button press events.
 1381 - The program chkccomp.c has been improved to have a more detailed
 1382   check for POW_OF_NAN_OKAY.
 1383 - In fltlib.c checks for 0.0 have been improved in flt_div() and
 1384   flt_div_assign().
 1385 - In flt_rtl.c preprocessor if statements have been improved to check
 1386   for !FLOAT_NAN_COMPARISON_OKAY in fltLog(), fltLog10() fltLog2() and
 1387   fltPow().
 1388 
 1389 20190610:
 1390 - The library float.s7i has been improved to support the float
 1391   operators 'rem' (floating-point remainder) and 'mod' (floating-point
 1392   modulo).
 1393 - The program chkflt.sd7 has been improved to check floating-point
 1394   literals and the new operators 'rem' and 'mod'. The tests for the
 1395   operator ** have been improved also.
 1396 - Compiler and interpreter have been improved to work correct, even
 1397   when the C functions fmod(), exp(), ldexp(), frexp() and sqrt() do
 1398   not work 100% correct.
 1399 - The program chkccomp.c has been improved to detect weaknesses of
 1400   numeric functions. These weaknesses happen when handling with NaN,
 1401   Infinity or when other special cases occur.
 1402 - A new version of the function timAwait() has been added to tim_unx.c.
 1403   This function is used when AWAIT_WITH_NANOSLEEP is defined.
 1404 - The makefiles mk_emccl.mak and mk_emccw.mak have been improved to
 1405   define AWAIT_WITH_NANOSLEEP instead of AWAIT_WITH_SELECT.
 1406 - Interpreter and compiler have been improved to support the actions
 1407   FLT_MOD and FLT_REM.
 1408 - In the compiler (in comp/flt_act.s7i) a corner case of the action
 1409   FLT_IPOW (when CHECK_FLOAT_DIV_BY_ZERO is TRUE and the exponent is
 1410   negative and the base is zero (0.0 or -0.0)) has been fixed.
 1411 - The configuration values FLOAT_COMPARISON_OKAY, FMOD_FUNCTION_OKAY,
 1412   EXP_FUNCTION_OKAY, LDEXP_FUNCTION_OKAY and FREXP_FUNCTION_OKAY have
 1413   been added to cc_conf.s7i. The configuration values
 1414   NAN_COMPARISON_OKAY and FREXP_INFINITY_NAN_OKAY have been removed.
 1415 - The functions fltDecompose(), fltExp(), fltLdexp(), fltMod() and
 1416   fltRem() have been added to flt_rtl.c. These functions are used, when
 1417   the corresponding C functions frexp(), exp(), ldexp() and fmod() do
 1418   not work 100% correct.
 1419 - In flt_rtl.c the functions fltEq(), fltGe(), fltGt(), fltLe() and
 1420   fltLt() have been improved. These improvements help, when the
 1421   comparison of float or double values does not work 100% correct.
 1422 - In flt_rtl.c the functions fltPow(), getMantissaAndExponent(),
 1423   setMantissaAndExponent() and fltSqrt() have been improved. These
 1424   improvements help, when the underlying C functions pow(), frexp(),
 1425   ldexp() and sqrt() do not work 100% correct.
 1426 - The program chkccomp.c has been improved to define the macros
 1427   FLOAT_NAN_COMPARISON_OKAY, FLOAT_ZERO_COMPARISON_OKAY,
 1428   SQRT_OF_NAN_OKAY, SQRT_OF_NEGATIVE_OKAY, EXP_OF_NAN_OKAY,
 1429   LDEXP_OF_NAN_OKAY, FREXP_SUBNORMAL_OKAY, FMOD_DIVIDEND_NAN_OKAY,
 1430   FMOD_DIVISOR_NAN_OKAY, FMOD_DIVIDEND_INFINITY_OKAY,
 1431   FMOD_DIVISOR_INFINITY_OKAY and FMOD_DIVISOR_ZERO_OKAY.
 1432 - In cmd_rtl.c the function cmdConfigValue has been improved to support
 1433   the config values FLOAT_COMPARISON_OKAY, EXP_FUNCTION_OKAY,
 1434   FMOD_FUNCTION_OKAY, LDEXP_FUNCTION_OKAY and FREXP_FUNCTION_OKAY.
 1435 - Definitions of the macros FLOAT_COMPARISON_OKAY, SQRT_FUNCTION_OKAY,
 1436   EXP_FUNCTION_OKAY, LDEXP_FUNCTION_OKAY, FREXP_FUNCTION_OKAY and
 1437   FMOD_FUNCTION_OKAY have been added to common.h
 1438 - Documentation comments have been improved in intlib.c, int_rtl.c,
 1439   match.c, str_rtl.c, keybd.s7i and vectorfont.s7i.
 1440 - In comp/int_act.s7i the variable quotient_name has been renamed to
 1441   remainder_name.
 1442 
 1443 20190523:
 1444 - In match.c the function substitute_params() has been fixed to copy
 1445   parameters with expressions instead of calling do_create(). For
 1446   expressions do_create() just creates a reference to the expression
 1447   and this leads later to a double free of the expression. Many thanks
 1448   go to Anton Lobach, for reporting this error and for providing a test
 1449   program.
 1450 - The library blowfish.s7i, with Blowfish cipher support, has been
 1451   added.
 1452 - The functions column() and line() have been added to the library
 1453   console.s7i.
 1454 - The bas7.sd7 (basic interpreter) example program has been improved.
 1455   Support for the keyword ENDIF has been added.
 1456 - The compiler (s7c.sd7) has been improved (in set_act.s7i) to optimize
 1457   the expression card(bitset(number)).
 1458 - The functions toBase and fromBaseToBigInt have been added to
 1459   encoding.s7i. This functions encode and decode bigInteger numbers
 1460   with a positional numeric system.
 1461 - Conversion functions have been added to bitsetof.s7i and bitset.s7i.
 1462 - Checks for the function card() have been added to chkset.sd7.
 1463 - Interpreter and compiler have been improved to support the actions
 1464   CON_COLUMN, CON_LINE, SET_CONV1, SET_CONV3, SET_SCONV1 and
 1465   SET_SCONV3. The support for the actions SET_CONV and SET_SCONV has
 1466   been removed.
 1467 - The libraries bitsetof.s7i and bitset.s7i have been adjusted, to use
 1468   the new actions.
 1469 - In con_inf.c the function conWrite() has been improved to change the
 1470   cursor position, when the characters '\n', '\r' and '\b' are written.
 1471 - In con_win.c the function conCursor() has been improved, to hide the
 1472   cursor, when it is called with FALSE. The function conOpen() has been
 1473   changed, to set the cursor position to (1, 1) and to hide the cursor.
 1474 - The functions conColumn() and conLine() have been added to con_rtl.c,
 1475   con_inf.c, con_win.c, con_wat.c and con_emc.c.
 1476 - In set_rtl.c the functions setIConv() and setSConv() have been
 1477   improved. Now setIConv() raises RANGE_ERROR for negative numbers and
 1478   setSConv() raises RANGE_ERROR, when a negative integer would be
 1479   returned.
 1480 - Documentation has been improved in console.s7i, string.s7i,
 1481   con_inf.c, con_win.c
 1482 - The debug trace mechanism in analyze.c and dcllib.c has been
 1483   improved.
 1484 - A call of dlerror() has been added in dll_unx.c.
 1485 - In traceutl.c the function prot_list_limited() has been introduced.
 1486 
 1487 20190506:
 1488 - The utility program bigfiles.sd7 has been added. Bigfiles is an
 1489   utility program to search for big files. This is useful, when the
 1490   disk is almost full and files must be removed to get more space.
 1491 - The utility program sydir7.sd7 has been improved. Now it supports the
 1492   option -n, which assures that no changes are done.
 1493 - The program db7.sd7 (Database Inspector) has been improved to write
 1494   an error message, when reading the catalog of database tables fails.
 1495 - The program chkbitdata.sd7 has been added. This program checks
 1496   functions from the bitdata.s7i library.
 1497 - In the FAQ the explanation, how Seed7 is compiled, has been improved.
 1498 - The description of several conversion functions in the manual has
 1499   been improved.
 1500 - The function ripemd160 has been added to msgdigest.s7i. This function
 1501   computes a message digest with the RIPEMD-160 algorithm.
 1502 - The functions toBase58, fromBase58, toBase and fromBase have been
 1503   added to encoding.s7i. This functions support Base58 encoding and
 1504   similar other encodings with a positional numeric system.
 1505 - The functions putBitLsb, putBitsLsb, getBitMsb, getBitsMsb, putBitMsb
 1506   and putBitsMsb have been added to bitdata.s7i. This functions read
 1507   and write bits from and to a file.
 1508 - The new library leb128.s7i has been added. This library supports the
 1509   conversion of integers to and from LEB128 encoding. LEB128 is a
 1510   variable-length encoding for integers. It is used e.g. by the DWARF
 1511   debug file format and by WebAssembly.
 1512 - Tests for the functions leb128ToInt(), uLeb128ToInt(), leb128() and
 1513   uLeb128() have been added to chkint.sd7.
 1514 - The library make.s7i has been improved to avoid a makefile rule
 1515   recursion.
 1516 - The function hex2Bytes has been added to bytedata.s7i. This function
 1517   converts a string with hexadecimal digits to a string of bytes.
 1518 - The function reverse has been added to string.s7i and seed7_05.s7i.
 1519 - The function tableNamesCommand has been added to sql_base.s7i.
 1520 - Conversion functions have been added to char.s7i.
 1521 - In big_rtl.c the function uBigMult has been changed to be faster,
 1522   when the size of factor2 is 1.
 1523 - In con_inf.c code to copy the environment for Emscripten and node.js
 1524   has been added. This code is deactivated, because of a limitation
 1525   in the Emscripten implementations of getenv() and setenv().
 1526 - The makefiles have been improved to copy the file version.h to a
 1527   name that corresponds to the makefile. E.g.: The makefile
 1528   mk_linux.mak copies version.h to vers_linux.h. This helps comparing
 1529   different version.h files.
 1530 - Documentation has been added to chkccomp.c and read_me.txt.
 1531 - The prototype of the function refCatParse has been changed in
 1532   ref_data.c, ref_data.h and ref_act.s7i. The compiler (s7c.sd7) has
 1533   been changed to add a cast in the function init_set_constants().
 1534   In sql_odbc.c casts have been added. This changes avoid C++
 1535   compilation errors.
 1536 - Calls of logFunction and logError have been added in con_inf.c,
 1537   dll_unx.c and dll_win.c.
 1538 
 1539 20190407:
 1540 - The program db7.sd7 (Database Inspector) has been improved to use a
 1541   scrollable list of tables instead of radio buttons for the selection
 1542   of a table.
 1543 - The example program findchar.sd7 has been added. Findchar is an
 1544   utility program to search for specific characters in files.
 1545 - The new library iobuffer.s7i has been added. This library supports
 1546   buffering of files.
 1547 - The new library mixarith.s7i has been added. This library supports
 1548   mixing of arithmetic operations between numeric types.
 1549 - The file type fileInTar has been added to the library tar.s7i. This
 1550   file type allows that a specific file from a tar archive can be
 1551   opened. The functions open, getc, gets, eof, hasNext, length, seek,
 1552   tell, and openFileInTar have been added to support the file type
 1553   fileInTar.
 1554 - The functions skipClassicComment and getSimpleStringLiteral have been
 1555   added to the libraries scanfile.s7i and scanstri.s7i.
 1556 - The makefile mk_emccl.mak has been added. This makefile supports
 1557   compiling with the emcc C compiler from Emscripten under Linux. The
 1558   support of Emscripten is experimental (see also src/read_me.txt).
 1559 - The deprecated functions float2Bits and bits2Float have been removed
 1560   from bin32.s7i and bin64.s7i. The functions bin32(), bin64() and
 1561   float() can be used instead, to convert between float and bits in
 1562   IEEE 754 representation.
 1563 - In the programs chkbig.sd7, chkovf.sd7, chkset.sd7 and chkstr.sd7
 1564   large functions have been split into smaller functions. This avoids
 1565   Stack errors with Emscripten.
 1566 - Tests for allowed field names and CLOB fields have been added to
 1567   chkdb.sd7. The functions create, testFieldNames and testClobField
 1568   have been added to chkdb.sd7.
 1569 - The primitive actions BIG_PARSE, BST_PARSE, FLT_PARSE and INT_PARSE
 1570   have been renamed to BIG_PARSE1, BST_PARSE1, FLT_PARSE1 and
 1571   INT_PARSE1 respectively. This actions parse the first argument
 1572   instead of the third argument. The libraries bigint.s7i, bstring.s7i,
 1573   float.s7i and integer.s7i have been improved to use the new actions.
 1574 - In several libraries the 'parse' operator has been changed to call
 1575   a function with the name of the type.
 1576 - In fil.unx.c the function setupFiles has been improved to correctly
 1577   mount the file system root for emscripten and node.js.
 1578 - In sql_fire.c, sql_my.c the support for BLOB and CLOB fields has been
 1579   improved.
 1580 - In sql_oci.c, sql_odbc.c and sql_post.c the function
 1581   processStatementStri() has been improved to accept strings enclosed
 1582   in single quotes (') and double quotes (").
 1583 - The files db_fire.h and sql_fire.c have been changed to define the
 1584   database client functions with the calling convention __stdcall.
 1585 - The files db_post.h, db_lite.h, sql_post and sql_lite.c have been
 1586   changed to define the database client functions with the calling
 1587   convention __cdecl.
 1588 - The database driver sql_fire.c has been improved:
 1589   - The function getClob() has been added. This function is used by
 1590     sqlColumnStri() to get a CLOB.
 1591   - The function sqlBindStri() has been improved to work for CLOBs
 1592     and to raise RANGE_ERROR for BLOBs.
 1593   - The function sqlColumnStri() has been improved to work for BLOBs
 1594     and CLOBs.
 1595   - The function sqlColumnBStri() has been improved to work for BLOBs
 1596     and to raise RANGE_ERROR for CLOBs.
 1597   - The function sqlStmtColumnName() has been improved to assume that
 1598     the name of a column is encoded with UTF-8.
 1599 - The database driver sql_my.c has been improved:
 1600   - The function processStatementStri() has been improved. In strings
 1601     delimited with single quotes (') backslashes (\) are optionally
 1602     replaced with double backslashes (\\). Strings delimited with
 1603     double quotes (") are converted into strings, that are delimited
 1604     with a backtick (`).
 1605   - The function setupResultColumn() has been improved to distinguish a
 1606     BLOB from a CLOB.
 1607   - The function sqlColumnStri() has been improved to work for BLOBs
 1608     and CLOBs.
 1609   - The function sqlColumnBStri() has been improved to work for BLOBs
 1610     and to raise RANGE_ERROR for CLOBs.
 1611   - The function determineIfBackslashEscapes has been introduced. This
 1612     function determines, if a backslash is used as escape character in
 1613     string literals. In this case processStatementStri() will double
 1614     escaping backslashes in string literals.
 1615 - The database driver sql_odbc.c has been improved:
 1616   - The management of buffer memory in bind functions has been improved
 1617     for the data types SQL_DECIMAL, SQL_NUMERIC, SQL_CHAR, SQL_VARCHAR,
 1618     SQL_LONGVARCHAR, SQL_WCHAR, SQL_WVARCHAR, SQL_WLONGVARCHAR,
 1619     SQL_BINARY, SQL_VARBINARY and SQL_LONGVARBINARY.
 1620 - The database driver sql_post.c has been improved:
 1621   - The function setupDll has been improved to open the dll
 1622     libeay32.dll, when necessary.
 1623   - In the function sqlBindStri() the binding of a field with the type
 1624     BYTEAOID (used for BLOB data) has been improved, to work correct,  
 1625     when the string contains a zero byte ('\0;').
 1626   - The function sqlColumnBigRat() has been improved to process fields
 1627     with the type FLOAT8OID as double instead of float.
 1628 - The program chkccomp.c has been improved. Now the C compiler used to
 1629   compile chkccomp.c can be different from the C compiler checked by
 1630   chkccomp.c. E.g.: For Emscripten chkccomp.c is compiled with gcc,
 1631   but the checked C compiler is emcc.
 1632 - In chkccomp.c the function determineFseekFunctions has been improved
 1633   to check fseek() and ftell() without access to the local files.
 1634 - In chkccomp.c the functions to configure access to PostgreSql,
 1635   Oracle and Firebird databases has been improved.
 1636 - In chkccomp.c code to determine NULL_DEVICE, HAS_CDECL, HAS_STDCALL,
 1637   INTPTR_T_DEFINED, PRINTF_ROUNDING, LINE_DIRECTIVE_ACCEPTS_UTF8,
 1638   HAS_SETJMP and HAS_SIGSETJMP has been added or improved.
 1639 - The file sigutl.c has been improved to work correct, when neither
 1640   signal() nor sigaction() are present.
 1641 - Log functions have been added or improved in con_emc.c, con_inf.c,
 1642   sql_my.c, sql_post.c and timlib.c.
 1643 - Experimental code has been added to con_emc.c.
 1644 
 1645 20190303:
 1646 - The makefile mk_tcc_l.mak has been added. This makefile supports
 1647   compiling with the tcc C compiler under Linux.
 1648 - The makefile mk_tcc_w.mak has been added. This makefile is
 1649   experimental and supports compiling with the tcc C compiler under
 1650   Windows.
 1651 - The example program brainf7.sd7 has been added. Brainf7 is a
 1652   Brainfuck interpreter.
 1653 - The example program hilbert.sd7 has been added. Hilbert displays a
 1654   Hilbert curve.
 1655 - The example program queen.sd7 has been added. Queen solves the n
 1656   queen problem.
 1657 - The example program spigotpi.sd7 has been added. Spigotpi writes
 1658   digits of PI with a spigot algorithm.
 1659 - The new library csv.s7i has been added. This library supports
 1660   converting to and from comma-separated values (CSV).
 1661 - Several improvements in the Seed7 compiler (s7c) have been done:
 1662   - In flt_act.s7i the function to process FLT_ISNAN has been improved
 1663     to make sure, that the argument of the isnan() macro never contains
 1664     preprocessor directives (e.g. #line directives). Some C compilers
 1665     do not allow preprocessor directives in the argument list of a
 1666     macro. Many thanks go to Alexander Vlasov for reporting this
 1667     problem and for his help to find a solution.
 1668   - In comp/str_act.s7i the function optimize_str_cat has been improved
 1669     to assign the constant parts of strConcatN() outside of the actual
 1670     expression. This might open possibilities to optimize the
 1671     expression.
 1672   - The function process_forward_declaration in the compiler (s7c) has
 1673     been improved to avoid, that a prototype of a forward declared
 1674     function, is written twice.
 1675   - The function process_dynamic_param_implements has been improved to
 1676     generate a switch-statement instead of an if-then-else chain.
 1677     Additionally double entries are avoided now.
 1678   - The function process_const_func_call has been improved to assign
 1679     c_params.temp_assigns to c_expr.temp_assigns instead of
 1680     c_expr.temp_decls.
 1681   - The function processFuncValue has been improved to define the type
 1682     and the function of the actual name parameter only once (with
 1683     defineActualFuncParam()). A redefinition could happen when
 1684     functions, that call functions with name parameters, are inlined.
 1685   - The handling of the option -te (trace exceptions) has been
 1686     improved.
 1687   - The function process_const_func_declaration() has been improved to
 1688     request, that for functions using the result mechanism the result
 1689     is returned, when possible, as c_expr.expr_result. This way
 1690     process_return_value() does not need to copy this string values.
 1691     E.g. When the result of intStrToBuffer(), chrCLitToBuffer(),
 1692     chrStrMacro(), strHeadSlice(), chrStrMacro() or strTailSlice() is
 1693     used as the result value of a user defined function.
 1694   - The function defineFunctype has been added and the function
 1695     getAnyParamToTempAssigns has been improved to provide addresses
 1696     of plain INTOBJECT, FLOATOBJECT, CHAROBJECT, STRIOBJECT and
 1697     BSTRIOBJECT values. In this case the address is taken from a
 1698     temporary variable.
 1699   - In write_file_head() and init_type_constants() the creation of type
 1700     constants has been improved.
 1701 - The functions skip() and copyFile() have been added to file.s7i.
 1702 - The function makeParentDirs() has been added to osfiles.s7i.
 1703 - In cli_cmds.s7i the function doMkdirCmd has been improved to call
 1704   the new function makeParentDirs().
 1705 - In tar_cmds.s7i the functions tarXtract and tarCreate have been
 1706   improved to avoid, that the whole file is read into a string. This
 1707   avoids a MEMORY_ERROR, when the file does not fit into a string.
 1708 - The function tarXtract has been improved to extract empty regular
 1709   files and to create non-existing parent directories (with
 1710   makeParentDirs())
 1711 - In gzip.s7i the functions openGzipFile(), close() and write() have
 1712   been improved, to write the compressed data in blocks with a maximum
 1713   size. This avoids a MEMORY_ERROR, when huge files are compressed.
 1714 - In gzip.s7i the function openGunzipFile has been changed to have a
 1715   file as parameter instead of a string. This way it is not necessary
 1716   to read the whole compressed data into a string.
 1717 - A variant of the function readGzipHeader has been added to gzip.s7i.
 1718 - A variant of the function getAsciiz has been added to bytedata.s7i.
 1719 - A variant of the function crc32 has been added to crc32.s7i.
 1720 - The program ftp7.sd7 has been improved to support the commands
 1721   !ls -l, !dir, !ls, !pwd, !mkdir and !rmdir.
 1722 - The function noCtrlChars has been removed from db7.sd7 and sql7.sd7
 1723   and added to seed7_05.s7i.
 1724 - The program chkchr.sd7 has been has been improved to check the
 1725   functions literal() and c_literal().
 1726 - Tests for the function str(), when str() assigned to a variable and
 1727   when str() is called via a function, have been added to chkint.sd7.
 1728 - Tests for aString[.. pos], aString[pos ..], aString[pos1 .. pos2],
 1729   aString[pos len length], when they are called via a function, have
 1730   been added to chkstr.sd7.
 1731 - The example program chkdb.sd7 has been improved to test decimal and
 1732   numeric fields with negative values.
 1733 - In x509cert.s7i the constant stdCertificate has been improved to
 1734   have a new validity (until end of 2021).
 1735 - The program chkccomp.c has been improved to determine, if
 1736   preprocessor directives are allowed in the argument list of a macro
 1737   invocation (DIRECTIVES_IN_MACRO_ARGUMENTS_OK).
 1738 - In fil_rtl.c the functions filBigLng() and filLng() have been
 1739   improved to determine the file length always with os_fseek and
 1740   os_ftell. This guarantees that the correct length is returned, when
 1741   data is written to a file and it has not been flushed.
 1742 - The function ftelli64Ext() has been added to fil_win.c. This
 1743   function is used when fseeki64() is available and ftelli64() is
 1744   missing. Either fgetpos() or _telli64() is used to implement
 1745   ftelli64Ext().
 1746 - Calls of logFunction have been added in ref_data.c and typ_data.c.
 1747 - In sql_my.c the function sqlBindDuration() has been improved.
 1748 - In sql_odbc.c the function getNumericAsCStri() has been added.
 1749 - In sql_odbc.c the function getNumericFloat() has been improved to 
 1750   convert a SQL_NUMERIC_STRUCT to a double via the decimal
 1751   representation.
 1752 - In sql_post.c the functions getNumericAsCStri(), getNumericAsStri()
 1753   and getNumericAsFloat have been improved.
 1754 - The program chkccomp.c has been improved to define the macros
 1755   'os_isatty' and 'os_fileno', when the functions isatty() and
 1756   fileno() are not available.
 1757 - A definition of 'isatty' and 'fileno' has been added to os_decls.h.
 1758 - The mechanism to check for stack overflow has been improved. By
 1759   default the mechanism is deactivated.
 1760 
 1761 20190126:
 1762 - The program db7.sd7 (Database Inspector 7) has been improved to
 1763   provide a list of tables and a possibility to view table contents
 1764   from this list.
 1765 - The program tar7.sd7 and the library tar.s7i have been improved to
 1766   support Unicode file names.
 1767 - The function setupParameters() in sql_fire.c, sql_lite.c, sql_my.c,
 1768   sql_oci.c, sql_odbc.c and sql_post.c has been improved to avoid
 1769   calling malloc(0). Depending on the run-time library malloc(0) may
 1770   return NULL, which would wrongly trigger a MEMORY_ERROR. The
 1771   improvement recognizes this situation and avoids calling malloc(0).
 1772   Other places in the database drivers, where malloc(0) could be called
 1773   have been fixed also.
 1774 - The database driver sql_fire.c has been improved:
 1775   - Now the cursor of a prepared statement is closed (with
 1776     isc_dsql_free_statement), when a parameter is bound to it.
 1777   - The opening of a database now appends the extensions .fdb and .gdb,
 1778     when trying to open the database.
 1779 - The database driver sql_my.c has been improved:
 1780   - The function processEscapesInStatement has been renamed to
 1781     processStatementStri. Now it removes comments from the statement
 1782     string.
 1783   - The local variable 'param' has been introduced in the parameter
 1784     binding functions. This improves readability by avoiding many
 1785     accesses to the param_array.
 1786   - The local variable 'columnData' has been introduced in the column
 1787     accessing functions. This improves readability by avoiding many
 1788     accesses to the result_array.
 1789   - The function sqlColumnFloat has been improved to accept integer
 1790     fields with all sizes.
 1791 - The database driver sql_oci.c has been improved:
 1792   - Now there is a check if all parameters of a prepared statement are
 1793     bound. This check takes place when a prepared statement is
 1794     executed.
 1795   - The function processBindVarsInStatement has been renamed to
 1796     processStatementStri. Now it removes comments from the statement
 1797     string and determines the number of bind parameters.
 1798   - The functions setupParameters and allParametersBound have been
 1799     added and the function resizeBindArray has been removed.
 1800   - The function getFloat has been improved to convert a SQLT NUMBER
 1801     to a double via the decimal representation.
 1802   - The bind functions have been improved to check, that a parameter
 1803     with the given index exists.
 1804   - The bind functions have been improved to allow that the same
 1805     parameter can be bound again with a different bind function (e.g.
 1806     as integer instead of a bigInteger).
 1807   - The function sqlBindStri has been improved to preserve trailing
 1808     blanks in a string.
 1809   - The local variable 'param' has been introduced in the parameter
 1810     binding functions. This improves readability by avoiding many
 1811     accesses to the param_array.
 1812   - The local variable 'columnData' has been introduced in the column
 1813     accessing functions. This improves readability by avoiding many
 1814     accesses to the result_array.
 1815 - The database driver sql_odbc.c has been improved:
 1816   - The maximum number of concurrent activities is determined. If the
 1817     number of concurrent activities is limited the function
 1818     sqlExecute() fetches all results and stores them in a prefetch
 1819     buffer. This way several prepared statements can be used in
 1820     parallel even when the ODBC driver does not support concurrent
 1821     activities.
 1822   - The structure resultDescrRecord has been introduced. It contains
 1823     the result properties of a prepared statement column. The structure
 1824     resultDataRecord has been reduced to just contain the actual
 1825     data buffer and length of a result field.
 1826   - The functions freeFetchData, freeFetch, freePrefetched and
 1827     processStatementStri have been added. The function
 1828     processStatementStri removes comments from the statement string.
 1829     This avoids problems with some ODBC drivers.
 1830   - The functions bindResultColumn, bindResult, copyNonBlobBuffers,
 1831     moveBlobBuffers, copyFetchData, prefetchOne, prefetchAll and
 1832     doFetch have been added.
 1833   - Now the cursor of a prepared statement is closed (with
 1834     SQLFreeStmt), when a parameter is bound to it.
 1835   - The function sqlColumnFloat has been improved to accept integer
 1836     fields with all sizes.
 1837 - The database driver sql_post.c has been improved:
 1838   - The function processBindVarsInStatement has been renamed to
 1839     processStatementStri. Now it removes comments from the statement
 1840     string.
 1841   - The local variable 'param' has been introduced in the parameter
 1842     binding functions. This improves readability by avoiding many
 1843     accesses to the param_array.
 1844   - The function sqlColumnFloat has been improved to accept integer
 1845     fields with all sizes.
 1846 - The example program chkdb.sd7 has been improved. Now it tests several
 1847   corner cases with empty databases, empty statements, comments and
 1848   literals. The tests with integer fields retrieve the fields now also
 1849   as floats.
 1850 - Interpreter and compiler have been improved to support the new
 1851   actions SQL_DRIVER, STR_FOR_KEY and STR_FOR_VAR_KEY.
 1852 - The library forloop.s7i has been improved to use the new actions
 1853   STR_FOR_KEY and STR_FOR_VAR_KEY.
 1854 - Checks for string for loops have been added to chkstr.sd7.
 1855 - The library sql_base.s7i has been improved to support the new
 1856   functions driver() and getTableNames(). The function getTableNames
 1857   returns a list of user table names.
 1858 - The function sqlDriver has been added to sql_rtl.c.
 1859 
 1860 20190107:
 1861 - A chapter about the handling of errors in interpreter and run-time
 1862   library has been added to the manual.
 1863 - The new database driver sql_fire.c has been added. This driver
 1864   provides database access functions for Firebird/InterBase.
 1865 - The database drivers sql_lite.c, sql_my.c, sql_odbc.c and sql_post.c
 1866   have been improved to check that all parameters of a prepared
 1867   statement are bound. This check takes place when a prepared statement
 1868   is executed.
 1869 - The bind functions in sql_lite.c and sql_my.c have been improved to
 1870   check, that a parameter with the given index exists.
 1871 - The bind functions of sql_my.c and sql_odbc.c have been improved to
 1872   allow that the same parameter can be bound again with a different
 1873   bind function (e.g. as integer instead of a bigInteger).
 1874 - The database driver sql_lite.c has been improved:
 1875   - The function sqlBindBigRat has been improved to convert a
 1876     bigRational to a double via the decimal representation.
 1877   - The functions sqlColumnBigInt and sqlColumnInt have been improved
 1878     to accept blob values with a decimal content that ends with ".0".
 1879   - The function sqlColumnFloat has been improved to accept integer
 1880     values.
 1881   - The function sqlExecute has been improved to reset a prepared
 1882     statement, when necessary.
 1883 - The database driver sql_my.c has been improved:
 1884   - Medium and large blobs are supported now.
 1885   - The function sqlColumnStri() has been improved to read BLOB data.
 1886   - The function processEscapesInStatement() has been introduced. This
 1887     function assures that string literals in prepared statements do not
 1888     allow backslash escape sequences (e.g. \n or \t). This way a
 1889     backslash in a SQL statement has no special meaning (like it is
 1890     common practice in all other SQL databases).
 1891   - The function sqlExecute() has been improved to call
 1892     mysql_stmt_store_result(). This way the complete result set is
 1893     buffered on the client. Doing so avoids the "Commands out of sync"
 1894     error (e.g. which is triggered (without mysql_stmt_store_result()),
 1895     when a new statement is prepared before all data of an old
 1896     statement is fetched).
 1897   - The function resizeBindArray() has been removed.
 1898 - The database driver sql_odbc.c has been improved:
 1899   - The function SQLGetTypeInfo is used to determine if the driver
 1900     supports the type SQL_WCHAR.
 1901   - It is recognized when the function SQLDescribeParam() is missing
 1902     and reasonable default values are used instead.
 1903   - The function SQLFreeStmt() is used now without the precondition
 1904     fetchOkay or fetchFinished.
 1905   - The function setupParameterColumn has been introduced. This
 1906     function allocates memory for parameter buffers.
 1907   - One call of SQLDescribeCol() is used to determine the properties of
 1908     result columns instead of many calls of SQLColAttribute().
 1909   - Blob result data is now recognized by data type (SQL_LONGVARCHAR,
 1910     SQL_WLONGVARCHAR or SQL_LONGVARBINARY) instead of data length.
 1911   - The bind functions have been improved to use a switch depending
 1912     on the data type.
 1913   - Calls of SQLBindParameter() have been changed to use parameters
 1914     determined with SQLDescribeParam().
 1915   - At several places switch statements depending on the c_type are
 1916     used.
 1917   - The function sqlColumnDuration has been improved to accept a
 1918     duration in a VARCHAR field.
 1919   - Experimental code to search for an ODBC driver has been added (but
 1920     it is deactivated for now).
 1921 - The database driver sql_post.c has been improved:
 1922   - The function setupParameterColumn() has been introduced. This
 1923     function allocates memory for parameter buffers. The buffers are
 1924     part of the bindDataRecord.
 1925   - The conversion of the internal NUMERIC representation to integer,
 1926     float, bigInteger and bigRational values has been improved. Now
 1927     sqlColumnInt() and sqlColumnFloat() can also read NUMERIC data.
 1928   - The functions getNumericAsCStri(), getNumericAsStri(),
 1929     getNumericAsInt(), getNumericAsBigInt(), getNumericAsBigRat()
 1930     and getNumericAsFloat() have been added.
 1931   - The function sqlColumnStri() has been improved to read BLOB data.
 1932   - The memory management has been improved to recognize out of memory
 1933     situations reliable.
 1934   - The handling of exceptions has been improved.
 1935 - The function literal() has been added to bigint.s7i, bigrat.s7i,
 1936   boolean.s7i, bstring.s7i, duration.s7i and time.s7i.
 1937 - The function integer (it converts a bigInteger to an integer) has
 1938   been added to bigint.s7i.
 1939 - The function string (it converts a bstring to a string) has
 1940   been added to bstring.s7i.
 1941 - The example program chkdb.sd7 has been improved to test the
 1942   functionality of a database with much more detail. Chkdb.sd7 now
 1943   supports parameters to specify the database to be checked.
 1944 - The programs sql7.sd7 and db7.sd7 has been improved to support
 1945   Firebird/Interbase databases.
 1946 - The tests of shift operators have been improved in chkbig.sd7.
 1947 - The program chkccomp.c has been improved to determine the settings
 1948   for directory access and for the database driver sql_fire.c.
 1949 - An #if instruction has been added to dir_win.c, soc_none.c and
 1950   soc_rtl.c, such that the object file can always be linked.
 1951 - The function stri_to_cstri8_buf() has been changed to work without
 1952   err_info parameter.
 1953 - Experimental code, to avoid the gmp error "overflow in mpz type" for
 1954   shift operations, has been added to big_gmp.c.
 1955 - In big_rtl.c, big_gmp.c and big_drv.h the functions bigToInt16(),
 1956   bigToInt32() and bigToInt64() have been changed to have the
 1957   additional parameter err_info.
 1958 - The function setupBig() has been added to big_rtl.c and big_gmp.c.
 1959   Additionally interpreter and compiler have been improved to call
 1960   setupBig().
 1961 - Documentation comments have been improved in integer.s7i,
 1962   sql_base.s7i, big_gmp.c, big_rtl.c, sql_rtl.c, intlib.c, int_rtl.c
 1963   and striutl.c
 1964 - The file soc_dos.c has been renamed to soc_none.c.
 1965 
 1966 20181125:
 1967 - In sql_odbc.c the handling of blobs has been improved. Selects with
 1968   normal and blob fields work now independent from the order of fields.
 1969   The functions resizeBindArray() and getClob() have been removed. The
 1970   functions setupParameters(), getBlob(), getData() and fetchBlobs()
 1971   have been added and the function getWCLob() has been improved.
 1972 - In sql_odbc.c the handling of time values has been improved to
 1973   support the sql type datetime2 and times with fractions of a second.
 1974   The functions sqlBindTime() and sqlColumnTime() have been improved.
 1975 - In sql_odbc.c the binding of bigRational and null values has been
 1976   improved. The functions sqlBindBigRat() and sqlBindNull() have been
 1977   improved.
 1978 - In the library duration.s7i the function str() and the operator
 1979   'parse' have been improved to use P[nY][nM][nD][T[nH][nM][n[.n]S]] as
 1980   format for the string representation of a duration.
 1981 - In dir_rtl.c the function dirRead() has been improved to use the
 1982   functions conv_from_os_stri() and os_stri_strlen() instead of
 1983   os_stri_to_stri(). This reduces the runtime of dirRead() by 2%
 1984   (measured with gcc and valgrind, when reading 1532 directories).
 1985 - In the compiler (in comp/const.s7i) the actions BST_PARSE, FLT_PARSE
 1986   and INT_PARSE have been added to the list of special actions.
 1987 - The function duration(), which converts a string to a duration value,
 1988   has been added to duration.s7i.
 1989 - The function time(), which converts a string to a time value, has
 1990   been added to time.s7i. Additionally parsing of time literals has
 1991   been improved to support negative years.
 1992 - The function bstring(), which converts a string to a bstring value,
 1993   has been added to bstring.s7i.
 1994 - The function rand(), which computes a pseudo-random time in a given
 1995   range, has been added to time.s7i.
 1996 - Tests for the function float(), which converts a string to a float
 1997   value, have been added to chkflt.sd7.
 1998 - The program chkccomp.c has been improved to determine INT64_SIZE
 1999   (the size of __int64), HAS_LLABS, HAS_ABS64, STRINGIFY_WORKS,
 2000   HAS_GMTIME_R and HAS_GMTIME_S.
 2001 - Documentation comments have been added or improved in sockbase.s7i,
 2002   fil_rtl.c, fil_unx.c, fil_win.c, soclib.c and soc_rtl.c.
 2003 - In heaputl.c the function growStri() has been improved to have a
 2004   smarter behavior in the case when malloc() returns NULL.
 2005 - The functions sqlBindDuration and sqlColumnDuration have been
 2006   improved in sql_lite.c, sql_my.c, sql_oci.c, sql_odbc.c and
 2007   sql_post.c.
 2008 - The parameter time_zone has been added to the function sqlBindTime()
 2009   in sqllib.c, sql_rtl.h, sql_rtl.c, sql_drv.h, sql_lite.c, sql_my.c,
 2010   sql_oci.c, sql_odbc.c, sql_post.c and comp/sql_act.s7i.
 2011 - A function to bind a duration value to a prepared statement has been
 2012   added to the library sql_base.s7i.
 2013 - The example program chkdb.sd7 has been improved to check inserting
 2014   and selecting time and duration values into and from a database.
 2015 - In sql_lite.c the function sqlColumnTime() has been improved.
 2016 - In sql_post.c the functions sqlBindTime() and sqlColumnTime() have
 2017   been improved.
 2018 - The functions stringify() and conv_wstri_buf_to_cstri() have been
 2019   added to striutl.c.
 2020 - In tim_rtl.c the functions mkutc() and unchecked_mkutc() have been
 2021   improved to work with negative years.
 2022 - The function timUtcFromTimestamp() has been added to tim_rtl.c.
 2023 
 2024 20181014:
 2025 - Simple function profiling has been added to the compiler. Profiling
 2026   is enabled, when programs are compiled with the option -p. When
 2027   programs with profiling are executed they write profiling information
 2028   to the file profile_out, when they terminate.
 2029 - An explanation of the compiler option -p (simple profiling) has been
 2030   added to the FAQ.
 2031 - The function str_dd_mm_yy has been added to the library time.s7i.
 2032 - In chkflt.sd7 the tests for the operator ** (with an exponent of NaN)
 2033   have been improved.
 2034 - Documentation comments have been improved in integer.s7i, intlib.c,
 2035   int_rtl.c, tim_unx.c and tim_win.c.
 2036 - In hsh_rtl.c the function hshIdxEnterDefault has been simplified to
 2037   use fewer parameters. Usages of hshIdxEnterDefault in gkb_win.c,
 2038   gkb_x11.c, pol_sel.c, pol_unx.c, ref_data.c and typ_data.c have been
 2039   adjusted to the reduced number of parameters.
 2040 - In int_rtl.c the performance of the function intParse has been
 2041   improved (when two's complement integers are used).
 2042 - In pcs_unx.c the function pcsStart has been improved to work correct
 2043   when stdin, stdout or stderr are not redirected.
 2044 - In flt_rtl.c the function fltPow() has been improved to work correct,
 2045   when the base is zero and the exponent is NaN.
 2046 - The program chkccomp.c has been improved to check the function pow()
 2047   with more test cases.
 2048 - In striutl.c the function heapAllocOsStri() has been refactored to
 2049   return the allocated string instead of using a pointer to a string
 2050   variable. This opens the possibility to optimize usages of the macro
 2051   os_stri_alloc().
 2052 - The definition of WITH_SQL has been removed from the makefiles and
 2053   added to the file config.h instead.
 2054 - The file config.h has been changed to define the macros WITH_FLOAT,
 2055   WITH_REFERENCE, WITH_DRAW, WITH_STATISTIC, WITH_COMPILATION_INFO and
 2056   WITH_TYPE_CHECK always.
 2057 - The function timMicroSec in tim_unx.c and tim_win.c has been changed
 2058   to be useable for the simple profiling.
 2059 
 2060 20180821:
 2061 - In fil_dos.c in the function setupFiles the handling of ctrl-c has
 2062   been improved such that ctrl-c is sent immediate (without the need to
 2063   press return afterwards). Additionally redirected stdin, stdout and
 2064   stderr files are switched to binary mode now.
 2065 - In the compiler (in comp/const.s7i) the actions BIN_XOR, ENU_ICONV2,
 2066   ENU_ORD2, INT_ICONV1 and INT_ICONV3 have been added to the list of
 2067   special actions.
 2068 - The batch files bin/call_gcc.bat and bin/call_ar.bat have been
 2069   improved to set environment variables with the command 'set'. This
 2070   is necessary to execute them successfully under Wine.
 2071 - The description of log, log10 and log2 in the manual has been
 2072   improved.
 2073 - In flt_rtl.c the functions fltLog, fltLog10 and fltLog2 have been
 2074   added. This functions are based on the original functions log(),
 2075   log10() and log2() and work according to IEEE 754.
 2076 - The configuration values LOG_FUNCTION_OKAY, LOG10_FUNCTION_OKAY and
 2077   LOG2_FUNCTION_OKAY have been added to cc_conf.s7i.
 2078 - The configuration value HAS_LOG2 has been removed from cc_conf.s7i.
 2079 - The compiler (s7c) has been improved to use the functions fltLog,
 2080   fltLog10 and fltLog2.
 2081 - In comp/inline.s7i the functions push_inline_func_param,
 2082   pop_inline_func_param, push_inline_proc_param and
 2083   pop_inline_proc_param have been improved to support inline functions
 2084   with 'attr' parameters.
 2085 - The example program diff7.sd7 has been improved.
 2086 - Documentation comments have been improved in math.s7i and tar.s7i.
 2087 - In chkflt.sd7 the tests for the operators 'parse' and 'sci' and for
 2088   the function str() have been improved.
 2089 - The program chkccomp.c has been improved to define the macros
 2090   POW_OF_NEGATIVE_OKAY, LOG_OF_NAN_OKAY, LOG_OF_ZERO_OKAY,
 2091   LOG_OF_NEGATIVE_OKAY, LOG10_OF_NAN_OKAY, LOG10_OF_ZERO_OKAY,
 2092   LOG10_OF_NEGATIVE_OKAY, LOG2_OF_NAN_OKAY, LOG2_OF_ZERO_OKAY,
 2093   LOG2_OF_NEGATIVE_OKAY, MEMCMP_RETURNS_SIGNUM and
 2094   WMEMCMP_RETURNS_SIGNUM.
 2095 - In chkccomp.c the function determineFseekFunctions has been improved
 2096   to make tests that actually use fseek() and ftell().
 2097 - Calls of logFunction have been added in cmd_rtl.c, str_rtl.c,
 2098   strlib.c and striutl.c.
 2099 - In bstlib.c the function bst_cmp() has been improved to be based on
 2100   bstCmp().
 2101 - The functions strCompare(), str_cmp() and bstCmp() have been
 2102   improved to use different code depending on MEMCMP_RETURNS_SIGNUM
 2103   and WMEMCMP_RETURNS_SIGNUM.
 2104 - In s7c.sd7 the function canTakeAddress has been improved to return
 2105   FALSE for a CONSTENUMOBJECT.
 2106 
 2107 20180708:
 2108 - The operating system DOS is supported (with DJGPP) again. The tests
 2109   have been done with Dosbox and Dosemu.
 2110 - In the compiler (in comp/const.s7i) the actions BIN_AND and BIN_OR
 2111   have been added to the list of special actions. This way the
 2112   functions rotLeft and rotRight (from bin32.s7i and bin64.s7i) are
 2113   implemented as inline functions. This reduces the runtime of sha256
 2114   (from msgdigest.s7i) by 44% (measured with gcc and valgrind, when
 2115   reading data from 200 https connections). The cpu-time of the whole
 2116   test program was reduced by 17%.
 2117 - In msgdigest.s7i the functions md4, md5, sha1, sha224 and sha256
 2118   have been improved to use an index for words instead of an index
 2119   for chunks. This simplifies the conversion to 32-bit words.
 2120 - In comp/action.s7i the function process_action has been improved to
 2121   use a case-statement instead of multiple if-statements. This reduces
 2122   the runtime of process_action by 39% (measured with gcc and valgrind,
 2123   when the compiler compiles itself). The runtime of the compiler is
 2124   reduced by 2.5%.
 2125 - The contents of the libraries enable_input.s7i and enable_output.s7i
 2126   have been moved to the library enable_io.s7i.
 2127 - The library comp/expr_util.s7i has been renamed to comp/expr_utl.s7i.
 2128 - The program chkccomp.c has been improved to search 64-bit functions
 2129   for fseek() and ftell(). The findings are stored in version.h with
 2130   the macros _FILE_OFFSET_BITS, OS_OFF_T_SIZE, os_off_t, os_fseek and
 2131   os_ftell.
 2132 - In chkflt.sd7 the tests for float shift and logarithm of 0.0 have
 2133   been improved.
 2134 - The file src/read_me.txt has been updated.
 2135 - In chkccomp.c the functions isNullDevice, initializeNullDevice,
 2136   determineStatFunctions, determineOsFunctions and numericProperties
 2137   have been improved.
 2138 - The program chkccomp.c has been improved to work for PostgreSQL
 2139   versions 9.6, 10 and 11.
 2140 - In cmd_rtl.c the function getOsCwd has been improved to assure that
 2141   PATH_DELIMITER is used as path delimiter.
 2142 - In flt_rtl.c the functions fltDigits and fltSci have been improved,
 2143   to work correct, when printf() with format %f and %e and a huge
 2144   precision crashes. Additionally fltSci() has been improved to work
 2145   correct, when the number of exponent digits written with format %f is
 2146   not fixed.
 2147 - In con_wat.c the functions kbdShut and conWrite have been improved
 2148   and the functions term_descr_equal, tcset_term_descr, kbd_init,
 2149   doWriteConsole and doCPuts have been added.
 2150 - The functions handleIntSignal, readCharChkCtrlC and filPipe have been
 2151   added to fil_dos.c.
 2152 - The function drwConvPointList has been added to drw_dos.c.
 2153 - The definitions of volumeListType, IS_VOLUME_LIST and
 2154   openVolumeList() have been moved from dir_win.h to the new file
 2155   vol_drv.h
 2156 - In traceutl.c the function prot_cstri has been improved to optionally
 2157   write the string via conWrite.
 2158 - The functions striCharsAsUnquotedCStri, isShortFileName, findDot,
 2159   toShortFileName, copyFileName and mapLongFileNamesToShort have been
 2160   added to striutl.c. The function mapLongFileNamesToShort can be used
 2161   to convert a path with long file names to a path with 8.3 file names.
 2162 - The program setwpath.c has been improved to set the search path of
 2163   the current user, when setting the path for all users fails.
 2164 - The program sudo.c has been improved to execute the command without
 2165   privileges, when executing the command as administrator fails.
 2166 - The functions gets (in tls.s7i), doGetsFromTerminal (in fil_rtl.c),
 2167   ut8Gets (in ut8_rtl.c) and socGets (in soc_rtl.c) have been improved
 2168   to return an empty string immediately, when the requested length is
 2169   zero.
 2170 - Calls of logFunction have been added in fil_rtl.c, prclib.c and
 2171   striutl.c.
 2172 - Calls of logError have been added in infile.c.
 2173 - The files dll_dos.c, pcs_dos.c and vol_drv.h have been added.
 2174 - Definitions of _FILE_OFFSET_BITS, os_off_t, os_fseek and os_ftell
 2175   have been removed from the makefiles.
 2176 - The makefiles mk_djgpp.mak and mk_djgp2.mak have been improved, such
 2177   that DOS (with DJGPP) is supported again.
 2178 - Documentation comments have been improved in sql_base.s7i, cipher.s7i
 2179   and sql_rtl.c.
 2180 
 2181 20180601:
 2182 - The library tls.s7i has been improved to support the server_name
 2183   extension and to process handshake messages, that extend over several
 2184   tls message records. Additionally TLS version 1.2 is used now.
 2185 - The library x509cert.s7i has been improved to accept a validity with
 2186   times in GeneralizedTime data elements (additionally to times in
 2187   UTCTime data elements).
 2188 - The library browser.s7i has been improved to support calling Safari
 2189   under Mac OS X.
 2190 - Tests for the functions environment(), getenv() and setenv() have
 2191   been added to chkcmd.sd7.
 2192 - A test that checks the sorting of an array of strings has been added
 2193   to chkstr.sd7. This checks the compare() function for strings.
 2194 - The compiler s7c has been improved to create better code for the
 2195   option -tf (trace functions). Now the trace functions are added after
 2196   the declarations (such that older C compilers will accept this also).
 2197 - In chkflt.sd7 tests for NaN have been grouped together.
 2198 - In chkovf.sd7 tests for the binomial coefficient have been split into
 2199   groups.
 2200 - The program chkccomp.c has been improved to define the macros
 2201   LIMITED_CSTRI_LITERAL_LEN, LIMITED_ARRAY_LITERAL_LEN,
 2202   DECLARE_OS_ENVIRON, USE_GET_ENVIRONMENT, INITIALIZE_OS_ENVIRON,
 2203   DEFINE_WGETENV, DEFINE_WSETENV, os_environ, os_getenv, os_setenv,
 2204   os_putenv, DELETE_PUTENV_STRING, DEFINE_WSTATI64_EXT,
 2205   DEFINE_STRUCT_STATI64_EXT, DEFINE_FSTATI64_EXT, os_lstat, os_stat,
 2206   os_fstat, os_stat_struct, os_fstat_struct, HAS_SELECT and HAS_MMAP.
 2207 - In int_rtl.c the macro DECIMAL_DIGITS has been improved to work with
 2208   unsigned numbers.
 2209 - In str_rtl.c the function strCmpGeneric() has been changed back to
 2210   the old behaviour. Now strCmpGeneric() and strCompare() have again
 2211   the same behaviour. It has turned out that sorting an array of
 2212   strings worked wrong, when the program was compiled.
 2213 - In pcs_win.c the function prepareCommandLine has been improved and
 2214   the function copyQuotedPart has been added. Now the command line
 2215   created for CreateProcessW() has fewer quoted parameters. Now
 2216   parameters that contain a space or a quotation (") or a control
 2217   character or a character beyond ASCII are quoted. All other parameters
 2218   are not quoted.
 2219 - Definitions of USE_MMAP, os_environ, os_fstat, DEFINE_WSTATI64_EXT,
 2220   os_lstat, os_stat, os_stat_orig, os_stat_struct, os_fstat_struct,
 2221   DEFINE_WSETENV, os_setenv, os_putenv and USE_DIRENT have been removed
 2222   from the makefiles.
 2223 - In several files usages of USE_MMAP have been replaced by usages of
 2224   HAS_MMAP.
 2225 - The file read_me.txt has been updated.
 2226 - In chkccomp.c the functions checkForLimitedArrayLiteralLength() and
 2227   determineStatFunctions() have been added and the functions
 2228   determineEnvironDefines() and determineBigIntDefines() have been
 2229   improved. Now the test for the GMP library enforces static linking.
 2230 - The macros DEFINE_MATHERR_FUNCTION and DEFINE__MATHERR_FUNCTION have
 2231   been improved to define if matherr() or _matherr() should be defined.
 2232 - Log functions have been improved in big_gmp.c, big_rtl.c and
 2233   int_rtl.c.
 2234 
 2235 20180513:
 2236 - In the manual descriptions of the binomial coefficient and of several
 2237   conversion functions have been improved.
 2238 - The bas7.sd7 (basic interpreter) example program has been improved to
 2239   use case statements with strings.
 2240 - The operator &:= has been added to the libraries bitsetof.s7i and
 2241   bitset.s7i.
 2242 - The function rand() has been added to the library hashsetof.s7i. This
 2243   function returns a random element from a hash set.
 2244 - The compiler (s7c) has been improved to generate code that uses
 2245   memcpy or memmove to copy and create arrays of simple value types
 2246   (e.g. array integer). The destruction of arrays of simple value types
 2247   has also been simplified.
 2248 - The compiler has been improved to optimize the action SET_RAND.
 2249 - The compiler optimizations for the actions SET_DIFF, SET_UNION and
 2250   SET_UNION_ASSIGN has been improved.
 2251 - In the compiler (in comp/const.s7i) the actions BLN_ICONV1,
 2252   BLN_ICONV3, CHR_ICONV3 and SET_RAND have been added to the list of
 2253   special actions. The compiler implements functions, which just call
 2254   one of the special actions as inline functions.
 2255 - Interpreter and compiler have been improved to support the actions
 2256   HSH_RAND_KEY and SET_INTERSECT_ASSIGN.
 2257 - Tests for the functions card() and rand() for the type set of string
 2258   have been added to chkset.sd7.
 2259 - Tests for intersection assignments ( &:= ) have been added to
 2260   chkset.sd7.
 2261 - In s7c.sd7 the code to call C compiler and linker has been
 2262   refactored.
 2263 - The compiler has been improved (in comp/prc_act.s7i) to use the
 2264   function hshIdxDefault0() instead of hshIdxWithDefault() for case
 2265   statements with hashsets.
 2266 - The code generation of the compiler has been improved to trigger the
 2267   signal SIGFPE with a call of triggerSigfpe().
 2268 - The compiler has been improved to insert diagnostic line information
 2269   (e.g.: #line 64 "logfile.s7i") into code for the actions ARR_CPY,
 2270   BLN_AND, BLN_OR, ITF_CPY, PRC_IF, PRC_IF_ELSIF, PRC_IF_NOOP
 2271 - The compiler has been improved to insert diagnostic line information
 2272   for inlined functions.
 2273 - The configuration values in cc_conf.s7i have been improved.
 2274   SWITCH_WORKS_FOR_INT64TYPE, CC_OPT_OPTIMIZE_1, CC_OPT_OPTIMIZE_2 and
 2275   CC_OPT_OPTIMIZE_3 have been added. SYSTEM_DB_LIBS has been renamed
 2276   to ADDITIONAL_SYSTEM_LIBS. HAS_SIGACTION, SIGNAL_RESETS_HANDLER and
 2277   DO_SIGFPE_WITH_DIV_BY_ZERO have been removed.
 2278 - The program chkccomp.c has been improved. Now it determines the name
 2279   of the NULL device (/dev/null or NUL:), the system socket library
 2280   (unix sockets or winsocket), the method to read directories, the
 2281   bigInteger implementation used (big_rtl.c or big_gmp.c) and the
 2282   support for switch statements with 64-bit values.
 2283 - Documentation comments have been added or improved in bigint.s7i,
 2284   integer.s7i, bitsetof.s7i, bitset.s7i, hashsetof.s7i, cc_conf.s7i,
 2285   fil_rtl.c, dir_drv.h, cmd_rtl.c, set_rtl.c, str_rtl.c and striutl.c.
 2286 - In set_rtl.c the function setIntersect() has been improved to create
 2287   a smaller intersection result, if possible.
 2288 - In set_rtl.c the function setIntersectAssign has been added.
 2289 - In setlib.c the function set_intersect_assign has been added.
 2290 - In hsh_rtl.c the functions get_helem_elem, get_hash_elem, hshRand
 2291   and hshIdxDefault0 have been added.
 2292 - In hshlib.c the functions get_helem_elem, get_hash_elem and
 2293   hsh_rand_key have been added.
 2294 - In gkb_x11.c and gkb_win.c the function find_window() has been
 2295   improved to use hshIdxDefault0() instead of hshIdxWithDefault().
 2296 - In big_gmp.c the function bigDivRem has been improved to initialize
 2297   the remainder.
 2298 - In str_rtl.c and strlib.c the function strelem_memcmp has been
 2299   renamed to memcmp_strelem.
 2300 - In str_rtl.c the function strCmpGeneric has been changed to avoid
 2301   calls of memcmp_strelem(), when the string sizes differ. This
 2302   differs from the behaviour of strCompare, but the difference is not
 2303   important, because strCmpGeneric() is only used for string
 2304   comparisons of hash keys (in compiled programs).
 2305 - In striutl.c the function conv_to_cstri has been rewritten to return
 2306   the C string, when the function succeeds, and to work without the
 2307   parameter err_info.
 2308 - In striutl.c the function stri_to_bstriw has been rewritten to use
 2309   an err_info parameter.
 2310 - In striutl.c the functions with loop unrolling inspired by Duff's
 2311   device have been rewritten.
 2312 - In striutl.c the loops in conv_to_cstri, stri_to_cstri and
 2313   conv_to_os_stri have been optimized.
 2314 - The macro castIntTypeForSwitch has been introduced to support C
 2315   compilers, that do not support switch statements with 64-bit values.
 2316 - Definitions of NULL_DEVICE, USE_GETADDRINFO, USE_WINSOCK and
 2317   BIGINT_LIB_DEFINE have been removed from the makefiles.
 2318 
 2319 20180401:
 2320 - The new library logfile.s7i has been added. It defines the interface
 2321   logFile. A logFile works like a normal file unless the log file
 2322   has the value STD_NULL. When a logFile has the value STD_NULL string
 2323   expressions written to the logFile are not evaluated. This reduces
 2324   the overhead, when logging is turned off.
 2325 - The bas7.sd7 (basic interpreter) example program has been improved.
 2326   The logging is now done via the new logFile type. This improves the
 2327   performance, when no logging is done. Several DATA statements in one
 2328   line are processed correctly now. Support for IF GOSUB and DISPLAY
 2329   statements and for the function COMMAND$ has been added.
 2330 - Tests of nested bigInteger for loops have been added to chkbig.sd7.
 2331 - A test with the assignment of a hash variable to itself have been
 2332   added to chkhsh.sd7.
 2333 - Tests of the replace function have been added to chkstr.sd7.
 2334 - In striutl.c the functions conv_from_os_stri, cstri8_to_stri and
 2335   cstri8_buf_to_stri have been improved. Now they call realloc()
 2336   only, when the size has changed. This improves the performance of
 2337   conv_from_os_stri by 32% (measured with gcc and valgrind, when
 2338   reading a directory).
 2339 - In str_rtl.c the function strUtf8ToStri has been improved to call
 2340   realloc() only, when the size has changed.
 2341 - In cmd_rtl.c the functions add_stri_to_array and
 2342   complete_stri_array have been renamed to addStriToRtlArray and
 2343   completeRtlStriArray respectively. The renamed functions have also
 2344   been improved to work with a simpler parameter list. Together with
 2345   the improvement of conv_from_os_stri this improves the performance
 2346   of cmdLs by 14% (measured with gcc and valgrind, when reading a
 2347   directory).
 2348 - In cmdlib.c the function cmd_ls has been rewritten to be based on
 2349   cmdLs. The functions cmp_mem and read_dir have been removed.
 2350 - In cmdlib.c the main loop in the function toArrayType has been
 2351   optimized for performance.
 2352 - In str_rtl.c the function add_stri_to_array has been renamed to
 2353   addCopiedStriToRtlArray and the function completeRtlStriArray has
 2354   been introduced. The code of addCopiedStriToRtlArray has also been
 2355   improved to work with a simpler parameter list.
 2356 - In strlib.c the function add_stri_to_array has been renamed to
 2357   addCopiedStriToArray and the functions freeStriArray and
 2358   completeStriArray have been introduced. The code of
 2359   addCopiedStriToArray has also been improved to work with a simpler
 2360   parameter list.
 2361 - The compiler has been improved to optimize the action HSH_CONTAINS,
 2362   when the hash table is constant and contains one element.
 2363 - In the compiler (in comp/const.s7i) the actions BLN_ORD, CHR_ICONV1,
 2364   CHR_ORD and INT_ODD have been added to the list of special actions.
 2365   The compiler implements functions, which just call one of the
 2366   special actions as inline functions. This allows optimizations for
 2367   the boolean and char random number generator.
 2368 - The compiler (s7c) has been improved (in comp/destr.s7i) to define
 2369   interface destructors, which take all possible implementation
 2370   types into account. Additionally a switch statement is used instead
 2371   of an if-then-else chain. Double entries are also avoided now.
 2372 - The function strChRepl has been added to str_rtl.c.
 2373 - The compiler has been improved to use strChRepl instead of strRepl,
 2374   to optimize split operations.
 2375 - Unnecessary function parameters have been removed in several
 2376   include files of the compiler.
 2377 - In flt_rtl.c the function doubleToCharBuffer has been improved to
 2378   determine the integer value of the exponent without calling
 2379   strtol().
 2380 - The function freeRtlStriArray has been added to arr_rtl.c.
 2381 - Several #define flags in pol_sel.c have been improved.
 2382 - The macro CSTRI_LITERAL_TO_STRI has been defined in striutl.h and
 2383   used in analyze.c, arr_rtl.c, cmd_rtl.c, cmd_unx.c, infile.c,
 2384   pcs_unx.c and pcs_win.c.
 2385 - Calls of logError have been added to functions in cmd_rtl.c,
 2386   con_inf.c, prclib.c, soc_rtl.c, tim_dos.c, tim_rtl.c, tim_unx.c and
 2387   tim_win.c.
 2388 - Documentation comments have been added or improved in cmdlib.c,
 2389   int_rtl.c and tim_rtl.c.
 2390 
 2391 20180304:
 2392 - In fil_rtl.c and ut8_rlt.c the functions filLineRead, filWordRead,
 2393   ut8LineRead and ut8WordRead have been improved to use
 2394   getc_unlocked() instead of getc(). This way the performance of the
 2395   functions has been improved by a factor of 2 (filLineRead has been
 2396   measured with gcc and valgrind).
 2397 - In listutl.c the performance of the function copy_list has been
 2398   improved by 15% (measured with gcc and valgrind).
 2399 - In getf.s7i the performance of the function readf has been improved
 2400   by a factor of 4 (measured with gcc and valgrind).
 2401 - The functions free_helem and free_hash in hshlib.c have been
 2402   improved to stop searching for helems as soon as the last helem
 2403   has been freed. This improves the performance of free_hash by 36%
 2404   (measured with gcc and valgrind).
 2405 - Code to avoid an error with the assignment of a hash variable to
 2406   itself (e.g.: aHash := aHash;) has been added to hshlib.c and
 2407   hsh_rtl.c.
 2408 - In fil_rtl.c the function read_and_alloc_stri and filGets have been
 2409   improved to have less usages of err_info and num_of_chars_read.
 2410 - In soc_rtl.c the function receive_and_alloc_stri has been improved
 2411   to have less usages of err_info and better logError messages.
 2412 - In hsh_rtl.c and hshlib.c the function create_hash has been
 2413   improved to use memset to initialize empty hash tables.
 2414 - The functions bstCmp, genericCmp, ptrCmp, rflCmp and typCmp have
 2415   been improved to use a result variable named signumValue.
 2416 - Interpreter and compiler have been improved to support the actions
 2417   ACT_ICONV1, ACT_ICONV3, INT_ICONV1, INT_ICONV3 and REF_HSHLENGTH.
 2418 - The libraries integer.s7i, bin32.s7i, bin64.s7i, category.s7i and
 2419   graph.s7i have been improved to use the new primitive actions.
 2420 - The function boolean(), which converts a string to a boolean value,
 2421   has been added to boolean.s7i.
 2422 - The function char(), which converts a string to a char value, has
 2423   been added to char.s7i.
 2424 - The function float(), which converts a string to a float value, has
 2425   been added to float.s7i.
 2426 - The compiler has been improved to support the actions ACT_GEN and
 2427   TYP_VARFUNC.
 2428 - The compiler now uses the function process_call_by_name_expr to
 2429   create code for loop conditions, loop bodies and other call by name
 2430   parameters.
 2431 - The functions process_match and process_inline_param have been
 2432   added to the compiler.
 2433 - The compiler has been improved to implement functions, which just
 2434   call one of the special actions HSH_CONTAINS, HSH_EXCL, HSH_INCL,
 2435   HSH_KEYS, SET_BASELIT, SET_CONV, SET_ELEM, SET_EXCL, SET_INCL,
 2436   SET_NOT_ELEM, as inline functions. This allows optimizations for
 2437   the types set of char and set of string.
 2438 - The compiler has been improved to optimize the action HSH_CONTAINS,
 2439   when the hash table is constant.
 2440 - The compiler optimizations for the actions SET_ELEM and
 2441   SET_NOT_ELEM have been improved.
 2442 - A test, that checks for-loops over hash tables, has been added to
 2443   chkhsh.sd7.
 2444 - Set membership tests for char and string have been added to
 2445   chkset.sd7.
 2446 - Functions to handle inline parameters have been moved from s7c.sd7
 2447   to the new file comp/inline.s7i.
 2448 - The program chkccomp.c has been improved to determine the presence
 2449   of the functions flockfile(), funlockfile() and getc_unlocked().
 2450 - The function match_object3 has been added to match.c. This function
 2451   assures that BLOCKOBJECT and ACTOBJECT objects are always preceded
 2452   by a MATCHOBJECT.
 2453 - The action RFL_SETVALUE has been ranamed to RFL_SET_VALUE.
 2454 - Several C run-time library functions (in *lib.c files) have been
 2455   renamed such that action name and function name correspond to each
 2456   other.
 2457 
 2458 20180107:
 2459 - Interpreter and compiler have been improved to allow support
 2460   for case statements with hashsets in the when parts. This allows
 2461   e.g. case statements with string, bigInteger, type and other
 2462   expressions.
 2463 - Several discrepancies between s7 and s7c have been fixed. Many
 2464   thanks go to "tipd bmp" who sent a example programs to show the
 2465   discrepancies. Thanks also for finding a bug in the manual. 
 2466 - The following type conversion functions from integer have been
 2467   introduced: bigInteger(), bigRational(), bitset(), boolean(),
 2468   char(), float(), rational() and complex(). This fits to the
 2469   existing conversion functions bin32() and bin64().
 2470 - The files bigrat.s7i, filesys.s7i, int_act.s7i, s7c.sd7, chkdb.sd7,
 2471   dnafight.sd7, printpi1.sd7, printpi2.sd7 and savehd7.sd7 have been
 2472   adjusted to use bigInteger() instead of the conv operator to
 2473   convert an integer to a bigInteger.
 2474 - The function bigRational, which converts a string to a bigRational
 2475   number, has been added to bigrat.s7i.
 2476 - The function rational, which converts a string to a rational
 2477   number, has been added to rational.s7i.
 2478 - In rational.s7i the operator 'parse' has been improved to convert
 2479   a string with a decimal number to a rational number.
 2480 - The functions float2Bits and bits2Float in bin32.s7i and bin64.s7i
 2481   are deprecated and will be removed in a future version. The
 2482   functions bin32(), bin64() and float() can be used instead to
 2483   convert between float and bits in IEEE 754 representation.
 2484 - The programs bas7.sd7 and chkbin.sd7 have been changed to use the
 2485   functions bin32(), bin64() and float() instead of float2Bits and
 2486   bits2Float.
 2487 - Definitions of the operators |:= and &:= have been added to
 2488   hashsetof.s7i.
 2489 - The library seed7_05.s7i has been improved to support case
 2490   statements which consist just of an otherwise part.
 2491 - The program chkprc.sd7 has been improved to check integer and char
 2492   case statements with otherwise part.
 2493 - The program chkprc.sd7 has been improved to check string,
 2494   bigInteger and float case statements with and without otherwise
 2495   part.
 2496 - The program chkbig.sd7 has been improved to check the bigInteger()
 2497   conversion function.
 2498 - The program chkflt.sd7 has been improved to check the float()
 2499   conversion function.
 2500 - Interpreter and compiler have been improved to support the actions
 2501   BIG_ICONV1, BIG_ICONV3, BLN_ICONV1, BLN_ICONV3, CHR_ICONV1,
 2502   CHR_ICONV3, FLT_ICONV1, FLT_ICONV3, SET_ICONV1, SET_ICONV3 and
 2503   REF_ALLOC_VAR.
 2504 - The handling of CONSTENUMOBJECT and VARENUMOBJECT objects in
 2505   s7c.sd7 has been improved.
 2506 - The functions initCaseLabelsOfWhen, initCaseLabelsOfCase and
 2507   initCaseLabels have been added to s7c.sd7.
 2508 - In biglib.c the function big_div_rem has been improved to generate
 2509   quotient and remainder as variable elements.
 2510 - The function getConstant has been added to comp/const.s7i.
 2511 - The functions getGenericValueOfVariableObject and
 2512   getParameterAsVariable have been added to comp/expr_util.s7i.
 2513 - The logError error messages in fil_rtl.c have been improved.
 2514 - The function refAllocVar has been added to ref_data.c.
 2515 - Documentation comments have been added or improved in bin32.s7i,
 2516   bin64.s7i, sql_base.s7i, propertyfile.s7i, bitset.s7i, browser.s7i,
 2517   bitsetof.s7i, actlib.c, arr_rtl.c, big_gmp.c, big_rtl.c, binlib.c,
 2518   cmdlib.c, drw_rtl.c, flt_rtl.c, set_rtl.c, sql_lite.c, sql_my.c,
 2519   sql_oci.c, sql_odbc.c, sql_post.c, sql_rtl.c
 2520 
 2521 20170915:
 2522 - The example program klondike.sd7 has been added. Klondike is a
 2523   solitaire game.
 2524 - The example program sydir7.sd7 has been improved to use fewer calls
 2525   of fileTypeSL.
 2526 - In flt_rtl.c the function fltCmp has been improved to work correct,
 2527   when NAN_COMPARISON_OKAY is FALSE.
 2528 - Checks in chkbig.sd7 for div, rem, divRem, mdiv and mod have been
 2529   structured into more areas.
 2530 - The reference counting of window objects in drwlib.c and drw_rtl.c
 2531   has been improved. When the usage_count has been initialized with
 2532   zero the window will not be freed by reference counting. This is
 2533   used by the empty window.
 2534 - In drw_win.c and drw_x11.c the function drwEmpty has been changed
 2535   to create an empty window that is not freed by reference counting.
 2536 - The compiler s7c.sd7 has been improved to use drwCreate, when a new
 2537   window value is created.
 2538 - In read_me.txt the description of macros defined in version.h has
 2539   been improved.
 2540 - In stat_win.c the function wstati64Ext has been improved, to use
 2541   fewer calls of GetFileAttributesExW() and _wstati64().
 2542 - In cc_conf.s7i the description of the configuration value
 2543   NAN_COMPARISON_OKAY has been improved.
 2544 - In duration.s7i several parameter names have been changed.
 2545 - The test for NAN_COMPARISON_OKAY in chkccomp.c has been improved.
 2546 
 2547 20170807:
 2548 - Experimental support to compute quotient and remainder of a
 2549   bigInteger with the operator divRem has been added to the library
 2550   bigint.s7i.
 2551 - The function str in bigrat.s7i has been improved to use the new
 2552   operator divRem.
 2553 - The program ide7.sd7 has been improved to ignore an attempt to kill
 2554   a non-existing process.
 2555 - Support for a for-loop that loops over all values of an enumeration
 2556   has been added to forloop.s7i.
 2557 - Support for a for-loop which loops a given number of times has been
 2558   added to forloop.s7i.
 2559 - Syntax definitions for the divRem operator and the new for-loops
 2560   have been added to syntax.s7i.
 2561 - Checks for the divRem operator have been added to chkbig.sd7.
 2562 - Interpreter and compiler have been improved to support the action
 2563   BIG_DIV_REM.
 2564 - The function bigDivRem has been added to big_gmp.c.
 2565 - The function big_div_rem has been added to biglib.c.
 2566 - The performance of the function uint32LeastSignificantBit() has
 2567   been improved by 15% (measured with gcc and valgrind when all
 2568   unsigned 32-bit values are computed).
 2569 - The performance of the function uint64LeastSignificantBit() has
 2570   been improved by 10% (measured with gcc and valgrind when
 2571   4294967294 random unsigned 64-bit values are computed).
 2572 - In set_rtl.c the functions bitsetNonZero() and setIsEmpty() have
 2573   been improved.
 2574 - The function memchr_strelem() has been added to striutl.c. This
 2575   function uses loop unrolling inspired by Duff's device. This
 2576   function is used when sizeof(wchar_t) != 4 holds. In case
 2577   sizeof(wchar_t) == 4 holds (wchar_t has the same size as the
 2578   Seed7 characters) the macro memchr_strelem is defined as wmemchr.
 2579 - In lib/comp/create.s7i the function process_sct_alloc has been
 2580   improved. Now it can be used as expression.
 2581 - In big_rtl.c the functions basicRadix2To36 and binaryRadix2To36
 2582   have been improved to use the parameter 'digits' instead of the
 2583   parameter 'upperCase'.
 2584 - The functions bigCmp, chrCmp and fltCmp have been improved.
 2585 - The program chkccomp.c has been improved to check if system()
 2586   returns the correct result of the process.
 2587 - The program chkccomp.c has been improved to determine if isatty()
 2588   or _isatty() should be used.
 2589 - The functions type_value_call_obj and getValue have been added to
 2590   executl.c. The function getValue determines the default value of
 2591   a type.
 2592 - The program setpaths.c has been improved to use preprocessor macros
 2593   only when they are defined.
 2594 - The program setwpath.c has been improved to include direct.h when
 2595   USE_DIRWIN is defined.
 2596 
 2597 20170702:
 2598 - The performance of the function bigStr() in big_rtl.c has been
 2599   improved by a factor of 2.7 (measured with gcc and valgrind when
 2600   str(123456789_**12345) is computed). Now A binary method is used to
 2601   convert large bigInteger numbers to a string.
 2602 - The performance of the function bigRadix2To36() in big_rtl.c has
 2603   been improved by a factor of 7.3 (measured with gcc and valgrind
 2604   when 123456789_**12345 radix 7 is computed). Now A binary method is
 2605   used to convert large bigInteger numbers to a string.
 2606 - The compiler (s7c.sd7) has been improved to create destructors for
 2607   local DATABASEOBJECTs and SQLSTMTOBJECTs.
 2608 - The database driver sql_odbc.c has been improved to support the
 2609   type SQL_BIT.
 2610 - The database driver sql_odbc.c has been improved to close the
 2611   the database only after all prepared statements have been freed.
 2612 - Support to read BLOBs (Binary large objects) and wide character
 2613   CLOBs (Character large objects) from an ODBC database has been
 2614   added to sql_odbc.c. SQL_DATA_AT_EXEC is used to flag BLOBs and
 2615   CLOBs for the buffer types SQL_CHAR, SQL_VARCHAR, SQL_LONGVARCHAR,
 2616   SQL_WCHAR, SQL_WVARCHAR, SQL_WLONGVARCHAR, SQL_BINARY,
 2617   SQL_VARBINARY and SQL_LONGVARBINARY.
 2618 - The function bigInteger(string), which converts a string to a
 2619   bigInteger number, has been added to bigint.s7i.
 2620 - Checks that test the conversion of a bigInteger to a string (with
 2621   the function str() and the operators RADIX and radix) have been
 2622   added to chkbig.sd7.
 2623 - The example program db7.sd7 has been improved to list column
 2624   headers even when no line was found.
 2625 - The functions getConversionDivisor, basicToStri, binaryToStri,
 2626   basicRadix2To36, binaryRadix2To36, uBigDivRem1, bigDivRem1,
 2627   bigDivRemSizeLess and bigDivRem have been added to big_rtl.c.
 2628 - The program chkccomp.c has been improved to have better checks for
 2629   utime and fileno.
 2630 - Documentation about the macros used have been added to chkccomp.c.
 2631 - In src/read_me.txt descriptions of C_COMPILER, C_COMPILER_SCRIPT,
 2632   CC_FLAGS and LINKER have been improved.
 2633 
 2634 20170530:
 2635 - The example program db7.sd7 has been added. Db7 is a Database
 2636   inspector with browser interface.
 2637 - In array.s7i the function insert has been improved to insert an
 2638   array of elements.
 2639 - In browser.s7i the function close has been improved to ignore an
 2640   error when the browser has already closed the socket.
 2641 - In browser.s7i the new function display (with the browser as first
 2642   argument) has been introduced. The old function (with the browser
 2643   as second argument) is deprecated and will be removed in a future
 2644   version.
 2645 - In cgidialog.s7i the parameters of the function dialogTable have
 2646   been improved. Now the column headers can be specified and a two
 2647   dimensional array of strings can be used to specify the content.
 2648 - The compiler has been improved to use the function bigAbsTemp to
 2649   optimize bigInteger expressions.
 2650 - Checks that test if the function abs works correct have been added
 2651   to chkbig.sd7.
 2652 - The picture on_off_pic has been added to pic16.s7i and pic32.s7i.
 2653 - Tests for the function abs have been added to chk_all.sd7.
 2654 - The program ide7.sd7 has been improved to use the new version of
 2655   the function display.
 2656 - The function bigAbsTemp has been added to big_rtl.c and big_gmp.c.
 2657 - In big_gmp.c errors in bigFromUInt64 and bigLowerBits64 have been
 2658   fixed.
 2659 - The makefiles have been improved to avoid unnecessary includes
 2660   and defines in chkccomp.h.
 2661 
 2662 20170501:
 2663 - The example program diff7.sd7 has been added. This program compares
 2664   two files line by line.
 2665 - The example program hd.sd7 has been added. This program writes a
 2666   hexdump of a given file.
 2667 - The functions sha384 and sha512 have been added to msgdigest.s7i.
 2668 - The compiler has been improved to optimize expressions like
 2669   bin64(aBigExpression mod aPowerOfTwo).
 2670 - The library vectorfont.s7i has been improved to allow scaling of
 2671   vector fonts.
 2672 - The dialog element passwordField has been added to cgidialog.s7i.
 2673   The passwordField dialog element allows entering a password without
 2674   readable echo.
 2675 - The function readPassword has been added to editline.s7i.
 2676 - In array.s7i the for-until loops for arrays have been improved to
 2677   work correct, when the until-condition uses the for variable.
 2678 - In cli_cmds.s7i the functions getCommandParameter,
 2679   getUnixCommandParameter and getDosCommandParameter has been
 2680   improved to recognize when a closing quote is missing.
 2681 - In cli_cmds.s7i in the function processCommand the handling of
 2682   external commands with redirection of stdin has been improved.
 2683 - The functions xyArray and scale have been added to graph.s7i.
 2684 - In seed7_05.s7i the exception DATABASE_ERROR has been introduced.
 2685 - The programs sql7.sd7 and chkdb.sd7 have been improved to use the
 2686   new exception DATABASE_ERROR.
 2687 - A parse operator for dbCategory has been added to sql_base.s7i.
 2688 - The pictures return_pic and right_arrow_pic have been added to
 2689   pic32.s7i and pic16.s7i.
 2690 - The function checkBinBinaryWithBigMod has been added to chkbin.sd7.
 2691   This function checks the optimizations done with expressions like
 2692   bin64(aBigExpression mod aPowerOfTwo).
 2693 - In tls.s7i the type securityParameters has been renamed to
 2694   tlsParameters. The functions showMsg and showMsgType have been
 2695   renamed to showTlsMsg respectively showTlsMsgType.
 2696 - In tls.s7i the generation of CLIENT_HELLO, SERVER_HELLO,
 2697   CERTIFICATE, SERVER_HELLO_DONE, CLIENT_KEY_EXCHANGE,
 2698   CHANGE_CIPHER_SPEC, FINISHED, ALERT and APPLICATION_DATA messages
 2699   has been improved.
 2700 - In int_act.s7i the types addSubElementType and
 2701   addSubElementListType have been renamed to addSubIntElementType
 2702   respectively addSubIntListType.
 2703 - In the compiler (in big_act.s7i, function process_const_big_mod)
 2704   the handling of the bigInteger mod operator, when the divisor is a
 2705   power of two, has been improved. Now a temporary result is freed.
 2706 - In the compiler (in big_act.s7i, function process_const_big_mult)
 2707   the handling of the bigInteger multiplication with a negated power
 2708   of two has been improved. Now a temporary result is freed.
 2709 - The functions generateAddSubParamList and evaluateConstants have
 2710   been added to comp/big_act.s7i. 
 2711 - The function optimize_bin_binary_of_big_mod has been added to the
 2712   compiler (in bin_act.s7i). This function optimizes the expression
 2713   bin64(aBigNumber mod aPowerOfTwo) to
 2714   bigLowerBits64(aBigNumber) & ord(pred(aPowerOfTwo)).
 2715   This optimization converts to bin64 earlier. This allows the usage
 2716   of cheap bin64 operations instead of bigInteger operations.
 2717 - The functions optimizeAddSubElement and optimizeAddSubList have
 2718   been added to comp/bin_act.s7i.
 2719 - In big_rtl.c the performance of the functions bigFromUInt32 and
 2720   bigFromUInt64 has been improved.
 2721 - The function bigLowerBits64 has been added to big_rtl.c and
 2722   big_gmp.c. This function is used by the compiler to optimize
 2723   expressions like bin64(aBigNumber mod aPowerOfTwo).
 2724 - The program chkccomp.c has been improved to check for the presence
 2725   of snprintf() and vsnprintf().
 2726 - The functions sql_eq_db, sql_eq_stmt, sql_ne_db and sql_ne_stmt
 2727   have been added to sqllib.c.
 2728 - Interpreter and compiler have been improved to support the actions
 2729   DRW_CONVPOINTLIST, SQL_CMP_DB, SQL_CMP_STMT, SQL_EQ_DB,
 2730   SQL_EQ_STMT, SQL_ERR_CODE, SQL_ERR_DB_FUNC, SQL_ERR_LIB_FUNC,
 2731   SQL_ERR_MESSAGE, SQL_NE_DB and SQL_NE_STMT.
 2732 - Support for the action DRW_CONVPOINTLIST has been added to
 2733   drwlib.c, drwlib.h, drw_win.c and drw_x11.c.
 2734 - A definition of snprintf has been added to fil_win.c.
 2735 - The function list_length has been added to listutl.c.
 2736 - The new files sql_base.c and sql_base.h have been added. This
 2737   files contain definitions of dbLibError, dbInconsistentMsg and
 2738   dbError. The makefiles have been adjusted to use sql_base.c.
 2739 - The database drivers sql_lite.c, sql_my.c, sql_oci.c, sql_odbc.c
 2740   and sql_post.c have been improved to write database errors to the
 2741   struct dbError. The content of dbError can be obtained with the
 2742   actions SQL_ERR_CODE, SQL_ERR_DB_FUNC, SQL_ERR_LIB_FUNC and
 2743   SQL_ERR_MESSAGE.
 2744 - The functions sqlErrCode, sqlErrDbFunc, sqlErrLibFunc and
 2745   sqlErrMessage have been added to sql_rtl.c
 2746 - The handing of local variables has been changed in blockutl.c
 2747   (improved function get_local_var_list) and prclib.c (new functions
 2748   process_local_decl and evaluate_local_decls). Instead of executing
 2749   the local declarations as a whole they are now executed line by
 2750   line. This change might be useful for future improvements.
 2751 
 2752 20170328:
 2753 - A chapter about signals has been added to the manual.
 2754 - The handling of ctrl-c (respectively the signal SIGINT), when s7 or
 2755   s7c are used with the option -ts, has been improved:
 2756   - A dialog offers several possibilities: Continue, terminate,
 2757     trigger SIGFPE or raising an exception.
 2758   - If the program was waiting for an input at the console the input
 2759     can be entered again.
 2760   - Under windows signal handler and the program that waits for an
 2761     input are synchronized now.
 2762 - The library aes.s7i with AES (Advanced Encryption Standard) cipher
 2763   support has been improved to support key lengths of 192 and 256
 2764   bits.
 2765 - The library tls.s7i has been improved to support the cipher suits
 2766   TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA256 and
 2767   TLS_RSA_WITH_AES_256_CBC_SHA256.
 2768 - The performance of the function bigMultAssign in big_rtl.c has been
 2769   improved by a factor of 22 (measured with gcc and valgrind when
 2770   big1 := 123456789_**123456; big1 *:= 123456789_**123456; is
 2771   computed). Now Karatsuba multiplication is used to compute *:= .
 2772 - The functions wildcardMatch and findMatchingFiles have been moved
 2773   from cli_cmds.s7i to the new library wildcard.s7i.
 2774 - The function flush has been added to pixmap_file.s7i.
 2775 - The signal handling of interpreted and compiled programs has been
 2776   unified. Now the signal handling is done in sigutl.c.
 2777 - Sigutl.c has been moved from the library s7_comp.a to the run-time
 2778   library seed7_05.a.
 2779 - Code to generate signal handling functions has been removed from
 2780   s7c.sd7.
 2781 - The functions kbdKeyPressed and kbdGetc in con_win.c have been
 2782   rewritten to use Win32 functions (PeekConsoleInputW and
 2783   ReadConsoleInputW) instead of functions from conio.h (kbhit and
 2784   getch). The include directive for conio.h has been removed.
 2785 - Code to use conio.h has been moved from con_win.c to con_con.c.
 2786 - In fil_win.c the function stdinReady has been added and calls of
 2787   kbhit have been replaced by calls of stdinReady. The include of
 2788   conio.h has been removed.
 2789 - Checks that test if NaN is returned as error value for math
 2790   functions have been added to chkflt.sd7.
 2791 - Checks that test if sqrt of a negative number raises NUMERIC_ERROR
 2792   have been added to chkbig.sd7 and chkint.sd7.
 2793 - Checks for sqrt have been added to chkint.sd7.
 2794 - Checks for *:= have been added to chkbig.sd7.
 2795 - The configuration value SQRT_FUNCTION_OKAY has been added to
 2796   cc_conf.s7i.
 2797 - The program esc2qte.c has been improved to avoid generating output
 2798   with a newline character inside a quoted part.
 2799 - The function readChar has been renamed to readCharChkCtrlC and
 2800   moved from fil_rtl.c to fil_unx.c and fil_win.c.
 2801 - The function readCharFromTerminal has been added to fil_rtl.c.
 2802   This function allows to re-enter the input, when a program is
 2803   resumed after a ctrl-c.
 2804 - The functions doLineRead and doWordRead have been removed from
 2805   fil_rtl.c. The content of this functions has been moved to
 2806   filLineRead respectively filWordRead.
 2807 - The function fltSqrt has been added to flt_rtl.c. This function
 2808   checks for negative arguments. This avoids a bug of MinGW-w64 where
 2809   sqrt(-2.0) returns -2.0 instead of NaN.
 2810 - The configuration value SQRT_FUNCTION_OKAY has been added to
 2811   cc_conf.s7i.
 2812 - The compiler (s7c) has been improved to use fltSqrt when
 2813   SQRT_FUNCTION_OKAY is FALSE.
 2814 - The functions sqlCpyDbGeneric, sqlCpyStmtGeneric,
 2815   sqlCreateDbGeneric, sqlCreateStmtGeneric, sqlDestrDbGeneric and
 2816   sqlDestrStmtGeneric have been added to sql_rtl.c.
 2817 - The function suspendInterpreter has been added to exec.c.
 2818 - The function uncaught_exception has been added to runerr.c.
 2819 - In executl.c the functions old_do_create, do_create, do_destroy,
 2820   old_do_copy and do_copy have been improved. Now the functions write
 2821   a message about an uncaught exception, when the function fails and
 2822   exception tracing is switched on.
 2823 - The file stat_drv.h has been improved to optionally define the
 2824   st_mode macros and the struct stati64Ext.
 2825 - In stat_win.c the function fstati64Ext has been improved to use
 2826   os_fstat_orig or for work without os_fstat_orig.
 2827 - In chkccomp.c the code that searches for the MySql include file
 2828   has been fixed.
 2829 - The program chkccomp.c has been improved to define the macros
 2830   likely, unlikely, NORETURN, INTPTR_T_DEFINED, FLOAT_ZERO_DIV_ERROR,
 2831   FREXP_INFINITY_NAN_OKAY and LIMITED_CSTRI_LITERAL_LEN always.
 2832 - The program chkccomp.c has been improved to define the macro
 2833   DIGRAPH_SEQUENCES_ARE_REPLACED.
 2834 - The file config.h has been changed to define the macros
 2835   WITH_STRI_CAPACITY, ALLOW_STRITYPE_SLICES, ALLOW_BSTRITYPE_SLICES,
 2836   WITH_LIST_FREELIST, WITH_NODE_FREELIST, WITH_FILE_FREELIST,
 2837   STACK_LIKE_ALLOC_FOR_OS_STRI, FLOATTYPE_DOUBLE,
 2838   MAP_ABSOLUTE_PATH_TO_DRIVE_LETTERS, FORBID_DRIVE_LETTERS and
 2839   EMULATE_ROOT_CWD always.
 2840 - At several places #ifdef has been replaced by #if to adopt to the
 2841   macros that are always defined.
 2842 - Documentation comments have been added or improved in big_rtl.c,
 2843   con_cap.c, con_con.c, con_cur.c, con_dos.c, con_rtl.c, con_tcp.c,
 2844   intlib.c, asn1.s7i and wildcard.s7i.
 2845 
 2846 20170305:
 2847 - The performance of the function bigIPow in big_rtl.c has been
 2848   improved by a factor of 15 (measured with gcc and valgrind when
 2849   bitLength(123456789_**123456) is computed). Now Karatsuba
 2850   multiplication and Karatsuba squaring is used to compute the power.
 2851 - The performance of the function uBigMult in big_rtl.c has been
 2852   improved by 22% (measured with gcc and valgrind).
 2853 - The compiler has been improved to optimize expressions like:
 2854     stri := stri & ....
 2855     stri := stri[pos ..];
 2856     stri := lower(stri);
 2857     stri := upper(stri);
 2858   The optimization avoids an unnecessary copy of the string result of
 2859   the right hand side expression.
 2860 - The code generated by the compiler for the action STR_FOR has been
 2861   improved. Now correct code is generated, when the for-statement
 2862   loops over a string expression.
 2863 - The library seed7_05.s7i has been improved to support if-statements
 2864   with omitted statement after the keyword 'then'.
 2865 - The functions getFile and putFile have been added to osfiles.s7i.
 2866 - The bas7.sd7 (basic interpreter) example program has been improved.
 2867   Support for the commands FILES and LOAD has been added.
 2868 - Test cases for the power operator (**) and the operators div, rem,
 2869   mdiv and mod have been added to chkbig.sd7.
 2870 - Test cases for the new string optimizations done by the compiler
 2871   have been added to chkstr.sd7.
 2872 - Interpreter and compiler have been improved to support the action
 2873   PRC_IF_NOOP.
 2874 - The new library http_response.s7i has been added. It contains
 2875   support for HTTP responses.
 2876 - The comanche webserver has been improved to work with the new
 2877   library http_response.s7i.
 2878 - In big_rtl.c the functions bigIPow and bigIPowN have been improved
 2879   to use uBigSquareK and uBigMultK instead of uBigSquare and
 2880   uBigMultIntoHelp.
 2881 - In big_rtl.c an improved version of uBigDigitMult has been added and
 2882   an older deactivated (but faster) version of uBigMult has been
 2883   reactivated.
 2884 - In str_rtl.c the function strHeadTemp has been improved to avoid a
 2885   heap corruption for the strange corner case that shrinking a memory
 2886   area fails. Additionally this can only happen with the new compiler
 2887   optimization that generates the expression:
 2888     aString = strHeadTemp(aString, anIndex);
 2889 - The functions uBigMultIntoHelp and uBigSquare have been removed from
 2890   big_rtl.c
 2891 - In flt_rtl.c the functions fltDgts and fltSci have been improved to
 2892   work correct, when printf() does not have a fixed maximum for the
 2893   float precision.
 2894 - The program chkccomp.c has been changed such that several test
 2895   programs link with SYSTEM_LIBS, when wide variants of system file
 2896   functions are tested.
 2897 - The test programs of chkccomp.c, which determine BOOLTYPE,
 2898   FLOAT_ZERO_DIV_ERROR, PRINTF_FMT_E_MAXIMUM_FLOAT_PRECISION and
 2899   PRINTF_FMT_F_MAXIMUM_FLOAT_PRECISION have been improved.
 2900 - The test programs of chkccomp.c, which determine database include
 2901   files have been improved to use something from the include file.
 2902   This way the correct include file is selected when a C compiler just
 2903   warns about a missing include file instead of flagging an error.
 2904 
 2905 20170129:
 2906 - The new library filesys.s7i has been added. It defines the interface
 2907   fileSys. Files of TAR, ZIP and JAR archives and files from FTP and
 2908   the operating system can be accessed via the fileSys interface. The
 2909   file system changes are work in progress.
 2910 - The libraries tar.s7i, zip.s7i, ftp.s7i and osfiles.s7i have been
 2911   adjusted to implement the new interface fileSys.
 2912 - Definitions of the types fileType, filePermission and fileMode have
 2913   been moved from osfiles.s7i to the new library filesys.s7i.
 2914 - A definition of the file system osFiles has been added to
 2915   osfiles.s7i.
 2916 - In ftp.s7i the interface ftpFileSys has been added. This interface
 2917   extends fileSys with the functions listDir, getActiveMode,
 2918   setActiveMode, getAsciiTransfer and setAsciiTransfer.
 2919 - The functions retrieve and store have been removed from ftp.s7i and
 2920   the function open (to open a file) has been added.
 2921 - The new library ftpserv.s7i has been created. This library allows,
 2922   that the back end of an FTP server is also a file system. Most of
 2923   the contents of ftpserv.s7i has been moved from ftpserv.sd7.
 2924 - The functions setUpHead, tarTell, tarXtract and tarCreate have been
 2925   moved from tar.s7i to the new library tar_cmds.s7i.
 2926 - The conversion functions bin32 and float have been added to
 2927   bin32.s7i. This functions convert values between single precision
 2928   float and bin32.
 2929 - The conversion functions bin64 and float have been added to
 2930   bin64.s7i. This functions convert values between double precision
 2931   float and bin64.
 2932 - The functions getBitLsb and getBitsLsb have been added to
 2933   bitdata.s7i. This functions read bits from a file in the direction
 2934   from LSB (least significant bit) to MSB (most significant bit).
 2935 - The operator |:= has been added to the libraries bitsetof.s7i and
 2936   bitset.s7i.
 2937 - The type void has been improved to allow writing a void value.
 2938   This allows that calc7.sd7 can execute procedures.
 2939 - The new library inflatefile.s7i has been added. It allows to
 2940   uncompress data from a file with the Inflate algorithm. In contrast
 2941   to inflatefile.s7i the functions from inflate.s7i assume that the
 2942   compressed data is in a string.
 2943 - A test of the tar header checksum has been added to tar.s7i.
 2944 - A support for long link paths has been added to tar.s7i.
 2945 - The function readMinimumOfHead has been added to tar.s7i. With this
 2946   function opening a tar archive can be done faster.
 2947 - The functions fileMode and getMTime in zip.s7i have been improved
 2948   to recognize modes and times from different operating systems.
 2949 - In zip.s7i the function rposOfMagic has been improved to work with
 2950   one call of seek() and one gets(). This way the function is faster,
 2951   when the file is not a ZIP file.
 2952 - In zip.s7i the functions get_local_header, get_central_header and
 2953   get_end_of_central_directory have been improved to read the fixed
 2954   size part of the header with one statement and to convert the data
 2955   afterwards. This improves the performance of get_central_header by
 2956   about 10%.
 2957 - In zip.s7i a map of extra header fields has been introduced.
 2958 - In zip.s7i the function getContent has been renamed to getFile.
 2959   Additionally the function has been improved to work when the local
 2960   header does not contain the compressed size. In this case the new
 2961   library inflatefile.s7i is used.
 2962 - The function timestamp1601ToTime has been added to time.s7i.
 2963 - A test for the operator |:= has been added to chkset.sd7.
 2964 - The function filGets in fil_rtl.c has been improved to recognize a
 2965   request to read zero characters earlier. This improves this special
 2966   case a little bit, without a negative effect on the normal case.
 2967 - The function uintCard has been added to int_rtl.c.
 2968 - The computation of the mode in the function fileAttr2UnixMode in
 2969   stat_win.c has been improved.
 2970 - The program ftp7.sd7 has been improved to work with the new
 2971   ftpFileSys interface.
 2972 - The program ftpserv.sd7 has been improved to work with the new
 2973   library ftpserv.s7i.
 2974 - In seed7_05.s7i the function to convert an integer to a string with
 2975   a given base has been improved.
 2976 - Interpreter and compiler have been improved to support the actions
 2977   BIN_CARD, SET_UNION_ASSIGN and STR_FOR.
 2978 - In the compiler (s7c) the generation of inline code for the actions
 2979   STR_RANGE and STR_SUBSTR has been improved. When some parameters are
 2980   constant checks can be done at compile-time instead of run-time.
 2981 - In drw_x11.c the function redraw() has been improved and the new
 2982   function setupBackup() has been added. This changes have been done
 2983   to handle EXPOSE events correctly, when backing store has the value
 2984   WhenMapped.
 2985 - In runerr.c the functions continue_question, run_error, empty_value
 2986   and var_required have been changed to allow the replacement of the
 2987   current exception with a new one.
 2988 - The function str_for has been added to strlib.c.
 2989 
 2990 20161231:
 2991 - The function toArray has been added to the libraries bitset.s7i,
 2992   bitsetof.s7i and hashsetof.s7i. This function creates an array
 2993   with all values from a given set.
 2994 - Experimental functions to access TAR and ZIP archives as file system
 2995   have been added to tar.s7i and zip.s7i. This is work in progress, so
 2996   the API might change.
 2997 - The compiler has been improved to work correctly with a C++ compiler
 2998   back end (Now it uses strRaiseError instead of intRaiseError) for the
 2999   code generated for BIN_RADIX and INT_RADIX.
 3000 - The compiler has been improved to use sigaction(), when available
 3001   (HAS_SIGACTION is TRUE).
 3002 - The compiler has been improved to reactivate the signal handler,
 3003   when necessary (SIGNAL_RESETS_HANDLER is TRUE).
 3004 - Test cases for the parse function with whitespace and control
 3005   characters have been added to chkbig.sd7.
 3006 - in big_gmp.c the functions bigParse and bigParseBased have been
 3007   improved, to raise RANGE_ERROR when whitespace characters are in the
 3008   string.
 3009 - The configuration values HAS_SIGACTION and SIGNAL_RESETS_HANDLER
 3010   have been added to cc_conf.s7i.
 3011 - The program chkccomp.c has been improved to define
 3012   SIGNAL_RESETS_HANDLER.
 3013 - The function checkMoveDirectory has been removed from chkccomp.c.
 3014 - In several files the literal 8 has been replaced by CHAR_BIT, when 8
 3015   refers to the number of bits is a char.
 3016 - Several integer literals have been replaced by defined constants.
 3017 - Documentation comments have been added or improved in bitset.s7i,
 3018   bitsetof.s7i, hashsetof.s7i, cc_conf.s7i, ftp.s7i, tar.s7i, zip.s7i,
 3019   arrlib.c, arr_rtl.c, big_rtl.c, conlib.c, dll_unx.c, dll_win.c,
 3020   fillib.c, fil_rtl.c, heaputl.c, hshlib.c, hsh_rtl.c, numlit.c,
 3021   numutl.c, pcs_unx.c, pcs_win.c, pol_dos.c, pollib.c, pol_sel.c,
 3022   pol_unx.c, sctlib.c, setlib.c, set_rtl.c, str_rtl.c and typlib.c.
 3023 
 3024 20161204:
 3025 - A description, how compiler optimizations can reduce the potential
 3026   of integer overflow, has been added to the manual.
 3027 - Documentation comments have been improved in cc_conf.s7i,
 3028   integer.s7i, int_rtl.c, stat_win.c and tim_win.c.
 3029 - The compiler has been improved to optimize expressions, where
 3030   several terms are added or subtracted in combination with the
 3031   functions succ or pred. It is possible to combine adjacent constant
 3032   terms at compile time. This simplifies overflow checks.
 3033 - The compiler has been improved to optionally generate programs,
 3034   that trace function calls. This is activated with the option -tf.
 3035 - Checks have been added to chkint.sd7, where several terms are added
 3036   in combination with the functions succ or pred.
 3037 - The functions wstati64Ext (in stat_win.c) and alternate_utime (in
 3038   tim_win.c) have been improved to avoid the strange time adjustments
 3039   of windows for Daylight Saving Time: For the same file different
 3040   times are retrieved respectively set in summer and winter. Now the
 3041   times do not depend on the time when they are retrieved or set.
 3042 - In stat_win.c a check for wildcards in a path has been removed from
 3043   wstati64Ext.
 3044 - The performance of dirRead in dir_rtl.c has been improved by 10%
 3045   (measured with gcc and valgrind). A smarter check for the
 3046   directories . and .. reduces the CPU time used.
 3047 - In cmd_rtl.c the functions remove_dir and copy_dir have been
 3048   improved with a smarter check for the directories . and .. to
 3049   reduce the CPU time used.
 3050 - The function getSearchPath in cmd_rtl.c has been improved to work
 3051   correctly, when there is no environment variable named PATH.
 3052 - Definitions of macros to check the st_mode field of struct stat
 3053   (e.g. S_ISDIR, S_ISREG, etc.) have been moved from fil_rtl.h to
 3054   stat_drv.h.
 3055 - The program chkccomp.c has been improved to work correct, when
 3056   C compiler options are separated by linefeeds (\n). In this case the
 3057   linefeeds are replaced by spaces. The linefeeds are used in
 3058   cc_conf.s7i to allow the definition of SYSTEM_DB_LIBS as an array of
 3059   database libraries.
 3060 - In sudo.c the call of ShellExecute() has been replaced by a call of
 3061   ShellExecuteA().
 3062 - A definition of FMT_T, a printf format for time_t values, has been
 3063   added to common.h.
 3064 - The makefile mk_clangw.mak has been improved to use the library
 3065   extension ".lib".
 3066 - Calls of logFunction and logError have been added or improved in
 3067   cmd_rtl.c, cmd_win.c, gkb_win.c, flt_rtl.c, int_rtl.c, pcslib.c,
 3068   reflib.c, rfllib.c, stat_win.c and tim_win.c.
 3069 - In dir_rtl.c the function readVolumeName has been improved to
 3070   consider only directories as volumes.
 3071 - In int_rtl.c the functions uint_mult, uint2_mult and uint2_add
 3072   have been renamed to uintMult, uint2Mult and uint2Add respectively.
 3073 - In stat_win.c the functions filetime_to_unixtime and
 3074   fileattr_to_unixmode have been renamed to fileTime2UnixTime and
 3075   fileAttr2UnixMode respectively.
 3076 - In tim_win.c the function alternate_utime has been improved to
 3077   avoid calling os_utime_orig, because the utime functions of Windows
 3078   do different time adjustments for the same time in summer and
 3079   winter.
 3080 
 3081 20161031:
 3082 - The examples about multiple dispatch in the FAQ and in the manual
 3083   have been changed.
 3084 - In dir_win.c the functions opendir and wopendir have been improved
 3085   to work correctly, when a volume is empty. FindFirstFile returns
 3086   INVALID_HANDLE_VALUE, when the path refers to an empty volume
 3087   (a directory that does not contain the . and .. directories).
 3088   After FindFirstFile fails GetFileAttributesEx is used to recognize
 3089   empty volumes.
 3090 - In stat_win.c the function wstati64Ext has been improved to
 3091   recognize empty volumes correctly. Now GetFileAttributesEx is used
 3092   instead of FindFirstFile to get information about a file.
 3093 - The function openVolumeList has been moved from cmd_win.c and
 3094   cmd_unx.c to dir_win.c.
 3095 - The definition of volumeListType has been moved from cmd_drv.h to
 3096   dir_win.h.
 3097 - In str_rtl.c the function strAppendN has been improved to work
 3098   correctly, when an appended string is identical to the destination
 3099   or a slice of it. There was already code to handle this case, but
 3100   this code could access freed memory in rare situations.
 3101 - The makefiles mk_nmake.mak and mk_msvc.mak have been changed to
 3102   include the file 'macros' before the macro SYSTEM_DB_LIBS is used.
 3103 - Rand functions have been added to bin32.s7i and bin64.s7i.
 3104 - The compiler has been improved to optimize the float shift
 3105   operators << and >> .
 3106 - Documentation comments have been improved in float.s7i,
 3107   integer.s7i, osfiles.s7i, big_gmp.c, big_rtl.c, bstlib.c and
 3108   bst_rtl.c.
 3109 
 3110 20161002:
 3111 - Definitions of float shift operators << and >> have been added to
 3112   float.s7i (A << B is equivalent to A * 2.0 ** B and A >> B is
 3113   equivalent to A / 2.0 ** B).
 3114 - Checks for the operators << and >> have been added to chflt.sd7.
 3115 - Interpreter and compiler have been improved to support the primitiv
 3116   actions FLT_LSHIFT and FLT_RSHIFT.
 3117 - The example program find7.sd7 has been added. This program is an
 3118   utility to search for files and file contents.
 3119 - Documentation comments have been added to arrlib.c, biglib.c,
 3120   blnlib.c, bstlib.c, fillib.c, pcslib.c, prclib.c, prglib.c and
 3121   strlib.c.
 3122 
 3123 20160831:
 3124 - The Seed7 runtime library has been improved to allow paths longer
 3125   than PATH_MAX (260) characters under Windows.
 3126 - The program sydir7.sd7 has been improved. Now it is avoided to copy
 3127   a file, when source and destination differ only by date. The
 3128   option -c has been added. With -c the source is copied and files
 3129   that are missing in the source are removed from the destination.
 3130 - The function readVolumeName in dir_rtl.c has been improved to allow
 3131   extended length paths (This paths exist under Windows and have a
 3132   prefix of \\?\ ).
 3133 - The functions opendir and wopendir in dir_win.c have been improved
 3134   to allow paths longer than 260.
 3135 - In the library seed7_05.s7i the undocumented function xalloc has
 3136   been removed.
 3137 - The function printArgv has been added to arr_rtl.c to improve the
 3138   logging.
 3139 - The program chkccomp.c has been improved to write settings to
 3140   always use the directory functions from dir_win.c under Windows.
 3141 - The function adjustCwdForShell has been added to cmd_rtl.c. This
 3142   function sets the current working directory to something acceptable
 3143   by cmd.exe.
 3144 - In stat_win.c the function wstati64 has been renamed to wstati64Ext
 3145   and improved to call the original stat function, when possible.
 3146 - The new file stat_drv.h has been added. In this file a prototype
 3147   of wstati64Ext is defined when necessary.
 3148 - The program wrdepend.c has been improved to work correctly, when
 3149   the INCLUDE_OPTIONS macro contains newline characters.
 3150 - Calls of logFunction have been added to arr_rtl.c, cmd_rtl.c,
 3151   dir_rtl.c, executl.c, fil_rtl.c, pcs_win.c, runerr.c, sctlib.c,
 3152   sigutl.c, stat_win.c and striutl.c.
 3153 - Calls of logError have been added to arrlib.c, blnlib.c, cmd_rtl.c,
 3154   conlib.c, dir_win.c, drwlib.c, enulib.c, fil_rtl.c, itflib.c,
 3155   lstlib.c, prclib.c, reflib.c and striutl.c.
 3156 
 3157 20160731:
 3158 - The bas7.sd7 (basic interpreter) example program has been improved.
 3159   Support for CVD, CVDMBF, CVS, CVSMBF, HPLOT, MKD$, MKDMBF$, MKS$,
 3160   MKSMBF$, PLOT, SCREEN, SHARED and VARPTR$ has been improved.
 3161   Creating Cga, Ega and Vga images from arrays has been improved to
 3162   work also for float and double arrays.
 3163 - The functions bin32, compare, hashCode, float2Bits, bits2Float,
 3164   float2MbfBits and mbfBits2Float have been added to bin32.s7i. The
 3165   functions fourBytesLeToBin32 and fourBytesBeToBin32 have been
 3166   removed (The new function bin32 can be used instead).
 3167 - The functions bin64, compare, hashCode, float2Bits, bits2Float,
 3168   float2MbfBits and mbfBits2Float have been added to bin64.s7i. The
 3169   functions eightBytesLeToBin64 and eightBytesBeToBin64 have been
 3170   removed (The new function bin64 can be used instead).
 3171 - The program chkbin.sd7 has been added. This program checks the
 3172   correctness of the functions float2Bits, bits2Float, float2MbfBits,
 3173   mbfBits2Float, str, radix and RADIX.
 3174 - Checks for the function decompose have been added to chkflt.sd7.
 3175 - The compiler has been improved to optimize expressions where several
 3176   terms are added or subtracted. It is possible to combine adjacent
 3177   constant terms at compile time. This simplifies overflow checks.
 3178 - The compiler has been improved to store NaN values as bin64
 3179   literals.
 3180 - The calc7 example program has been improved to support bin32 and
 3181   bin64 functions.
 3182 - The function decompose and the type floatElements have been added
 3183   to the library float.s7i. The function decompose splits a float into
 3184   a normalized fraction and an integral exponent for 2. The result
 3185   of decompose uses the type floatElements.
 3186 - The function integer (it converts a string to an integer) has been
 3187   added to integer.s7i.
 3188 - In the library seed7_05.s7i the undocumented function xalloc has
 3189   been replaced by the function create.
 3190 - The functions uintCmp and uintCmpGeneric have been added to
 3191   int_rtl.c.
 3192 - The configuration value FREXP_INFINITY_NAN_OKAY has been added to
 3193   cc_conf.s7i.
 3194 - The primitive action FLT_A2TAN has been renamed to FLT_ATAN2 in
 3195   interpreter, compiler and runtime library.
 3196 - Documentation comments have been improved in bitdata.s7i, arrlib.c,
 3197   binlib.c, bstlib.c, bst_rtl.c, fillib.c, kbdlib.c, literal.c.
 3198 - Interpreter and compiler have been improved to support the primitiv
 3199   actions BIN_CMP, FLT_BITS2DOUBLE, FLT_BITS2SINGLE, FLT_DECOMPOSE,
 3200   FLT_DOUBLE2BITS and FLT_SINGLE2BITS.
 3201 - The program chkccomp.c has been improved to define
 3202   FREXP_INFINITY_NAN_OKAY and to work for PostgreSQL version 9.5.
 3203 
 3204 20160630:
 3205 - The bas7.sd7 (basic interpreter) example program has been improved.
 3206   Support for CVSMBF, CVDMBF, FLASH, FRE, GR, HGR, HOME, HTAB,
 3207   INVERSE, NORMAL, TEXT, PR# and VTAB has been added. Support for
 3208   CLEAR, COLOR, GET, INPUT, LOG, SQR and RUN has been improved.
 3209   Some keywords can now be used as label.
 3210 - Documentation comments have been added or improved in several files.
 3211 - Definitions of the operator @:= have been added to bitset.s7i,
 3212   bitsetof.s7i and hashsetof.s7i.
 3213 - The compiler has been improved optimize expressions like
 3214   factor*base**exponent when the base is a power of two.
 3215 - In x509cert.s7i the constant stdCertificate has been improved to
 3216   have a new validity (until end of 2017).
 3217 - In drw_win.c the function privateConsole has been improved to
 3218   determine a private console window (A cmd.exe console that was
 3219   invoked implizit when the program started) more reliable. This
 3220   avoids that an already existing console (from which the program was
 3221   started) is accidentally hidden.
 3222 - The function redraw in drw_x11.c has been improved to ignore NULL
 3223   windows (EXPOSE events can arrive after a window has been freed).
 3224 - The function drwFree in drw_x11.c has been improved to free also the
 3225   backup pixmap.
 3226 - Compiler and interpreter have been improved to support the action
 3227   REF_ALLOC_INT.
 3228 - Checks for factor*base**exponent when the base is a power of two
 3229   have been added to chkflt.sd7.
 3230 - Checks with several summands in a chain and checks of the
 3231   subtraction of integer.first have been added to chkint.s7i.
 3232 - First steps have been done for a compiler optimization of adding
 3233   and subtracting several summands in a chain.
 3234 - Occurrences of nodeValue and MDULEOBJECT have been removed from
 3235   interpreter and runtime library.
 3236 - The function prg_find has been removed from prglib.c.
 3237 - The function ref_find has been removed from reflib.c.
 3238 - The support for the actions PRG_FIND and REF_FIND has been removed
 3239   from the interpreter.
 3240 - Function and variable definitions in setpaths.c and wrdepend.c have
 3241   been changed to static definitions.
 3242 
 3243 20160531:
 3244 - Documentation comments have been added or improved in many files.
 3245 - The compiler (s7c) has been improved to start C compiler and linker
 3246   direct and not via a shell (except when the compiler must be started
 3247   with a script).
 3248 - The program chkccomp.c has been improved to use consecutive numbers
 3249   for test program files.
 3250 - The program chkccomp.c has been improved to show the progress of the
 3251   tests done.
 3252 - The experimental function startProcess, with files to redirect, has
 3253   been added to process.s7i.
 3254 - The functions childStdIn, childStdOut and childStdErr have been
 3255   added to process.s7i.
 3256 - The function shellParameters has been added to shell.s7i.
 3257 - The function noEmptyStrings has been added to seed7_05.s7i.
 3258 - A conv operator to convert an interface object to a specific
 3259   implementation type has been added to seed7_05.s7i.
 3260 - The compiler (s7c) has been improved to support the new conv
 3261   operator defined in seed7_05.s7i.
 3262 - In cc_conf.s7i the configuration values CC_OPT_DEBUG_INFO,
 3263   CC_FLAGS, LINKER_FLAGS, SYSTEM_LIBS, SYSTEM_CONSOLE_LIBS,
 3264   SYSTEM_DRAW_LIBS and SYSTEM_DB_LIBS have been changed to be arrays
 3265   of strings instead of strings.
 3266 - In cc_conf.s7i the configuration values CALL_C_COMPILER_FROM_SHELL,
 3267   CC_ERROR_FILDES, REDIRECT_FILDES_1, REDIRECT_FILDES_2 and
 3268   NULL_DEVICE have been added.
 3269 - In cc_conf.s7i the configuration value REDIRECT_C_ERRORS has been
 3270   removed.
 3271 - Interpreter and compiler have been improved to support the actions
 3272   PCS_CHILD_STDERR, PCS_CHILD_STDIN, PCS_CHILD_STDOUT, FIL_PIPE and
 3273   FIL_OPEN_NULL_DEVICE.
 3274 - The function analyzeProg in analyze.c has been improved to have less
 3275   usages of the global variable prog.
 3276 - The functions in chkccomp.c have been changed to static functions.
 3277 - The program chkccomp.c has been improved to define
 3278   POPEN_SUPPORTS_CLOEXEC_MODE, FOPEN_SUPPORTS_CLOEXEC_MODE,
 3279   HAS_FCNTL_SETFD_CLOEXEC and HAS_PIPE2.
 3280 - The function filPipe has been added to fil_unx.c and fil_win.c.
 3281 - In fil_rtl.c the functions filOpen and filPopen have been improved
 3282   to open files with the CLOEXEC flag, when possible.
 3283 - The function filOpenNullDevice has been added to fil_rtl.c.
 3284 - The functions init_findid, init_entity and init_sysvar have been
 3285   changed to use a progType parameter.
 3286 - The functions pcsStart in pcs_unx.c and pcs_win.c have been improved
 3287   to have parameters for stdin, stdout and stderr.
 3288 - The functions pcsChildStdErr, pcsChildStdIn and pcsChildStdOut have
 3289   been added to pcs_rtl.c.
 3290 . The functions pcs_childStdErr, pcs_childStdIn and pcs_childStdOut
 3291   have been added to pcslib.c.
 3292 - In src/read_me.txt descriptions of SEARCH_PATH_DELIMITER.
 3293   REDIRECT_FILDES_1, REDIRECT_FILDES_2, NULL_DEVICE, REDIRECT_C_ERRORS
 3294   and CC_ERROR_FILDES have been improved.
 3295 - The functions find_sysvar and concat_path have been renamed to
 3296   findSysvar and concatPath respectively.
 3297 
 3298 20160430:
 3299 - The makefile mk_clangw.mak has been improved, such that compilation
 3300   with newer versions of clang under Windows works better.
 3301 - Tests for integer parse have been added to chkexc.sd7.
 3302 - The function doRemove in chkccomp.c has been improved to write
 3303   nothing to the console.
 3304 - The function showErrors has been added to chkccomp.c.
 3305 - In actutl.c the functions searchAction and findAction have been
 3306   improved to use fewer parameters and the function getActIllegal
 3307   has been added.
 3308 - In chkccomp.c the function writeReadBufferEmptyMacro has been
 3309   improved to optionally use _get_stream_buffer_pointers() to define
 3310   the macro read_buffer_empty.
 3311 - The operator 'char conv' has been improved to check if the integer
 3312   fits in a character.
 3313 - Documentation comments have been improved in float.s7i, poll.s7i,
 3314   actlib.c actutl.c, big_gmp.c, big_rtl.c, bln_rtl.c, bst_rtl.c,
 3315   chr_rtl.c, cmd_rtl.c, dir_dos.c, dir_win.c, drw_rtl.c, fltlib.c,
 3316   flt_rtl.c, int_rtl.c, pcs_rtl.c, pollib.c, pol_sel.c, pol_unx.c,
 3317   prg_comp.c, rfl_data.c, setlib.c, set_rtl.c and str_rtl.c.
 3318 - Calls of logFunction have been added to cmdlib.c and flt_rtl.c.
 3319 - Calls of logError have been added to functions in actlib.c,
 3320   biglib.c, bstlib.c, chrlib.c, cmdlib.c, drwlib.c, fillib.c,
 3321   fltlib.c, hshlib.c, intlib.c, pcslib.c, pollib.c, prglib.c,
 3322   rfl_data.c, rfllib.c, sctlib.c, setlib.c, strlib.c and typlib.c.
 3323 
 3324 20160330:
 3325 - The makefile mk_clangw.mak has been added. This makefile supports
 3326   compilation under Windows with the clang compiler.
 3327 - The experimental function parentDir has been added to osfiles.s7i.
 3328 - The experimental function getServerCertificate has been added to
 3329   tls.s7i.
 3330 - The compiler (s7c) has been improved to use the function
 3331   strAppendN, when two or more strings are appended to a string.
 3332 - Tests for string append (operator &:= ) have been added to
 3333   chkstr.sd7.
 3334 - The function strAppendN has been added to str_rtl.c.
 3335 - The function strCopy in str_rtl.c has been simplified.
 3336 - The program chkccomp.c has been improved to write a definition of
 3337   CHAR_BIT, when it is not defined in limits.h.
 3338 - Several files have been changed to use CHAR_BIT instead of the
 3339   literal 8.
 3340 - in chkccomp.c several string literals have been changed to wide
 3341   string literals (e.g. L"abc" instead of "abc").
 3342 - In several files integer literals have been replaced by constants
 3343   or #define macros.
 3344 - The function __mulodi4 has been added to int_rtl.c. This function
 3345   is used by clang under Windows, but unfortunately is not part of
 3346   the runtime library. This situation is recognized by chkccomp.c and
 3347   the function __mulodi4 in int_rtl.c is used instead.
 3348 
 3349 20160229:
 3350 - The function fltCmp in flt_rtl.c has been improved to work correct
 3351   in the case that isnan returns neither 0 nor 1 (Many thanks go to
 3352   Arnel L. for reporting this problem).
 3353 - The function determineGetaddrlimit in chkccomp.c has been improved
 3354   to include <sys/types.h> before <sys/resource.h>. FreeBSD needs
 3355   that to work correctly (Many thanks go to Pietro Cerutti for
 3356   providing a fix and explaining the background.
 3357 - The function getOsCwd has been added to cmd_rtl.c. With this
 3358   function it is possible to read (e.g. under Linux) a current
 3359   working directory that is longer than PATH_MAX.
 3360 - Documentation comments have been improved in encoding.s7i.
 3361 - The program chkccomp.c has been improved to write definitions of
 3362   USE_DIRENT, USE_DIRWIN, OS_WIDE_DIR_INCLUDE_DIR_H, os_DIR,
 3363   os_dirent_struct, os_opendir, os_readdir, os_closedir,
 3364   INCLUDE_SYS_UTIME, os_utimbuf_struct, USE_ALTERNATE_UTIME,
 3365   os_utime_orig, os_utime, os_chdir, OS_GETCWD_MAX_BUFFER_SIZE,
 3366   os_getcwd, os_mkdir, os_rmdir, OS_CHMOD_INCLUDE_IO_H, os_chmod,
 3367   os_remove, os_rename, os_system, os_fopen, os_popen, os_pclose,
 3368   DEFINE_WGETENV, os_getenv
 3369 - The functions keys_helem and values_helem in hshlib.c and
 3370   hsh_rtl.c have been improved to use a loop instead of a tail
 3371   recursion. For compilers that don't recognize the tail recursion
 3372   this results in a speed improvement (Gcc recognizes tail
 3373   recursions so there is no speed improvement).
 3374 - The functions free_helem and free_hash in hsh_rtl.c have been
 3375   improved to stop searching for helems as soon as the last helem
 3376   has been freed.
 3377 - The functions helem_data_to_list and helem_key_to_list have been
 3378   improved to use a loop instead of a tail recursion (see above).
 3379 
 3380 20160130:
 3381 - A code page for pdf doc encoding has been added to charsets.s7i.
 3382 - An optimization for the length of concatenated strings has been
 3383   added to the compiler (in file str_act.s7i).
 3384 - Checks for the string length function have been added to
 3385   chkstr.sd7.
 3386 - The checks for the string operators := and &:= have been rewritten
 3387   to use one line for each test case.
 3388 - The example program rever.sd7 has been improved to allow a level
 3389   of 10.
 3390 - The compiler has been improved to create code that raises the
 3391   exception ACTION_ERROR, when at runtime no implementation function
 3392   is found for an interface function.
 3393 - The performance of the hash table functions keys (which returns
 3394   all keys) and values (which returns all values) has been improved
 3395   in interpreted and compiled programs. For an average test case
 3396   hshKeys() (in hsh_rtl.c) now uses only 27% of the previous runtime
 3397   (measured with gcc and valgrind).
 3398 - In hshlib.c the performance of the functions free_hash,
 3399   keys_helem, keys_hash, values_helem, values_hash, for_helem,
 3400   for_hash, for_key_helem, for_key_hash, for_data_key_helem and
 3401   for_data_key_hash has been improved.
 3402 - In hsh_rtl.c the performance of the functions free_hash,
 3403   keys_helem, keys_hash, values_helem and values_hash has been
 3404   improved.
 3405 - In listutl.c the performance of the functions helem_data_to_list,
 3406   hash_data_to_list, helem_key_to_list and hash_keys_to_list has
 3407   been improved.
 3408 - Several functions in cmd_rtl.c have been improved to work
 3409   correctly, when logError is activated (os_path is freed now after
 3410   its last use in logError).
 3411 
 3412 20151216:
 3413 - A compiler bug, triggered with a nested function and an array
 3414   parameter, has been fixed. Many thanks go to "rfnbs" for providing
 3415   an excellent bug report. The bug was fixed by changing the type of
 3416   the global variable 'prog' and by saving and restoring the 'prog'
 3417   variable in the functions get_create_call_obj and
 3418   get_destroy_call_obj.
 3419 - The functions toAscii85 and fromAscii85 have been added to the
 3420   library encoding.s7i.
 3421 - Definitions of for-each-loops, which have an until condition and
 3422   loop over the characters of a string, have been added to the
 3423   library forloop.s7i.
 3424 - The function gzcompress has been added to the library gzip.s7i.
 3425 - The type of the global variable 'prog' has been changed from
 3426   progRecord to progType (pointer to progRecord).
 3427 - Changes have been done in analyze.c, atom.c, blockutl.c, dcllib.c,
 3428   doany.c, entutl.c, error.c, exec.c, expr.c, findid.c, findid.h,
 3429   match.c, name.c, parser.c, prclib.c, prg_comp.c, prglib.c,
 3430   reflib.c, runerr.c, s7.c, sctlib.c, syntax.c, syvarutl.c,
 3431   syvarutl.h, traceutl.c and type.c to reflect that the type of the
 3432   variable 'prog' changed from struct to pointer to struct.
 3433 - The functions get_create_call_obj and get_destroy_call_obj in
 3434   executl.c have been changed to save, set and restore the variable
 3435   'prog'.
 3436 - In chkccomp.c all functions, which have a name starting with
 3437   'detemine', have been renamed such that the name starts with
 3438   'determine'.
 3439 
 3440 20151129:
 3441 - The library bitdata.s7i, which provides functions to read and
 3442   write bits to and from strings, has been added.
 3443 - The libraries deflate.s7i and inflate.s7i have been changed to use
 3444   functions from bitdata.s7i.
 3445 - The undocumented function reverseBits has been moved from
 3446   deflate.s7i to bitdata.s7i. The meaning of the two parameters has
 3447   been changed.
 3448 - The constant array reverseBits has been added to bitdata.s7i.
 3449   All calls of the function reverseBits have been removed.
 3450 - Calls of the function reverseBits in deflate.s7i have been
 3451   replaced by usages of the array reverseBits.
 3452 - In inflate.s7i two loops have been replaced by usages of the array
 3453   reverseBits.
 3454 - The library lzw.s7i, which provides support for Lempel-Ziv-Welch
 3455   compression and decompression, has been added.
 3456 - The function gzuncompress has been added to gzip.s7i. This
 3457   function decompresses a string that was compressed with zlib
 3458   (RFC 1950).
 3459 - The function literal(in char: ch) in seed7_05.s7i has been changed
 3460   to write character literals with the new numeric escape sequence.
 3461 - In the function detemineOdbcDefines (file chkccomp.c) the test
 3462   program, that verifies the linker option for the static lib, has
 3463   been improved to work correctly under Windows.
 3464 - Definitions for SQLGetData() have been added to db_odbc.h and
 3465   sql_odbc.c.
 3466 - Support to read a CLOB (Character large object) from an ODBC
 3467   database has been added to sql_odbc.c.
 3468 
 3469 20151110:
 3470 - The program toutf8.sd7 has been improved to accept byte order
 3471   marks for the encodings UTF-16BE and UTF-16LE.
 3472 - Documentation comments have been improved in bigint.s7i,
 3473   integer.s7i, big_gmp.c, big_rtl.c, bst_rtl.c, flt_rtl.c,
 3474   int_rtl.c, pcs_rtl.c, rfl_data.c, set_rtl.c, str_rtl.c and
 3475   typ_data.c.
 3476 - In analyze.c and prg_comp.c function names and parameter names
 3477   have been changed to use camel case.
 3478 - The global variable programPath and the function
 3479   relativeToProgramPath have been removed. They were only used when
 3480   the makefile setting PATHS_RELATIVE_TO_EXECUTABLE was active (this
 3481   setting was not used by any makefile for years).
 3482 - All explanations related to PATHS_RELATIVE_TO_EXECUTABLE has been
 3483   removed from the FAQ and from src/read_me.txt.
 3484 - The functions hsh_incl and hsh_update in hshlib.c have been
 3485   changed to raise RANGE_ERROR when cmp_func is NULL.
 3486 
 3487 20151029:
 3488 - The explanation in the FAQ, how Seed7 programs can be debugged
 3489   with Eclipse, has been improved.
 3490 - The function commandPath in process.s7i has been improved to
 3491   return always "", when the executable is not found.
 3492 - The functions processOptions and printOptions in s7.c have been
 3493   improved to use a parameter instead of a global variable.
 3494 - Calls of logFunction have been added to hsh_rtl.c, listutl.c,
 3495   match.c and rfl_data.c.
 3496 - In striAsUnquotedCStri and bstriAsUnquotedCStri (file striutl.c)
 3497   the size of the static char buffer is computed at compile-time
 3498   instead of estimated.
 3499 - Several numeric literals have been replaced by defined constants.
 3500 - The makefile mk_freebsd.mk has been changed to use numutl.c
 3501   instead of sql_util.c.
 3502 - To improve the readability the maximum line length in several C
 3503   source files has been reduced.
 3504 
 3505 20151012:
 3506 - The program setpaths.c has been changed to work correctly when
 3507   the binary release (for Windows) is used.
 3508 - Errors in the bigInteger operators +:= and -:= have been fixed.
 3509   This errors were triggered with expressions like A +:= A; when the
 3510   value of A has a value in a specific range. Thanks go to Fausto C.
 3511   for reporting this problem.
 3512 - The example program ide7.sd7 has been improved to start programs
 3513   as process and to allow their termination.
 3514 - The chapter about errors in the manual has been improved.
 3515 - The picture terminate_pic has been added to pic16.s7i and
 3516   pic32.s7i.
 3517 - Checks for +:=, -:= and *:= have been added to chkbig.sd7.
 3518 - Documentation comments have been added to aes.s7i, arc4.s7i,
 3519   bin32.s7i, bin64.s7i, complex.s7i, des.s7i and tdes.s7i.
 3520 - Errors in the functions bigAddAssign and bigSbtrAssign have been
 3521   fixed. Now the check for a negative delta is done before the
 3522   variable is changed. This fixes the errors with A +:= A; and
 3523   A -:= A; .
 3524 - The makefile mk_mingc.mak has been improved such that it can be
 3525   called without the parameters S7_LIB_DIR and SEED7_LIBRARY.
 3526 - The program chkccomp.c has been improved to check if pow() works
 3527   correct when the exponent is the maximum odd value that fits in
 3528   a float respectively double.
 3529 - A buffer in a test program used by chkccomp.c has been enlarged
 3530   to avoid a possible buffer overflow.
 3531 - Calls of logFunction have been added to big_gmp.c, big_rtl.c and
 3532   traceutl.c.
 3533 - The definition of CATCH_SIGNALS has been removed from the
 3534   makefiles. Now signal handlers are used when one of the functions
 3535   sigaction() and signal() is available.
 3536 - The function socAddressCStri() has been added to soc_rtl.c. Now
 3537   this function is used instead of bstriAsUnquotedCStri(), to write
 3538   addresses in log functions.
 3539 - The function printParameters() has been added to pcs_unx.c and
 3540   pcs_win.c. In log functions this function is now used to print
 3541   parameter lists.
 3542 - The unused functions bin_add and bin_add_assign have been removed
 3543   from bin64.s7i, binlib.c, binlib.h and primitiv.c.
 3544 
 3545 20150927:
 3546 - The library cgidialog.s7i, which provides dialogs that are shown
 3547   with a web browser, has been added.
 3548 - The example program ide7.sd7 has been added. This program is a
 3549   cgi dialog demo program.
 3550 - The library browser.s7i, which opens a web browser and provides a
 3551   connection to it, has been added.
 3552 - The chapter about types in the manual has been improved.
 3553 - The compiler has been improved to create code for the action
 3554   FLT_DIV_ASSIGN in a way that works with icc (icc has problems
 3555   when */ precedes /= ).
 3556 - The program chkccomp.c has been improved to write definitions of
 3557   OVERFLOW_SIGNAL and PRINTF_SUPPORTS_VARIABLE_FORMATS.
 3558 
 3559 20150914:
 3560 - The FAQ has been improved to explain the support for Unicode names
 3561   and how Unicode names are activated with a pragma.
 3562 - The heap management for strings has been improved to determine the
 3563   maximum length of the free lists automatically at run-time. This
 3564   improves the runtime, when the compiler (s7c) compiles itself, by
 3565   2.7% (measured with gcc and valgrind). In many other situations
 3566   this optimization has also a positive effect.
 3567 - The interpreter has been improved to allow experimental support
 3568   for case statements with a string decision expression.
 3569 - The compiler has been improved to use the functions abs()
 3570   respectively labs() for the absolute value of an integer (when
 3571   overflow checking is switched off).
 3572 - Tests for abs have been added to chkint.sd7.
 3573 - The example program raytrace.sd7 has been improved to use result
 3574   variables with descriptive names.
 3575 - The configuration values LONG_SIZE and BOOLTYPE have been added to
 3576   cc_conf.s7i.
 3577 - Interpreter and compiler have been changed to use the type _Bool
 3578   or bool for boolean values, when one of them is available. This
 3579   allows some optimizations by the C compiler, since the possible
 3580   values are restricted to 0 and 1.
 3581 - The deprecated functions open_utf8, open_utf16, open_echo,
 3582   open_line, open_tee, open_more, open_upper, open_lower,
 3583   open_reverse, open_window and open_field have been removed.
 3584   The replacement functions are openUtf8, openUtf16, openEcho,
 3585   openLine, openTee, openMore, openUpper, openLower, openReverse,
 3586   openWindow and openField.
 3587 - The deprecated function removeAnyFile has been removed. The
 3588   replacement function is removeTree.
 3589 - The macros 'likely' and 'unlikely' have been added to functions in
 3590   analyze.c, arrlib.c, biglib.c, bstlib.c, chrlib.c, cmdlib.c,
 3591   dcllib.c, drw_win.c, drw_x11.c, fillib.c, fil_unx.c, fil_win.c,
 3592   numutl.c, pollib.c, prclib.c, sql_lite.c, sql_my.c, sql_oci.c,
 3593   sql_odbc.c, sql_post.c and ut8_rtl.c.
 3594 - The definition of the macro logFunction in common.h has been
 3595   improved to write the file name.
 3596 - Calls of logFunction have been added to arrlib.c, prclib.c,
 3597   big_gmp.c, cmd_unx.c cmd_win.c dir_dos.c, dir_win.c, drw_win.c,
 3598   set_rtl.c, sql_lite.c, sql_my.c, sql_oci.c, sql_odbc.c, sql_post.c
 3599   and sql_rtl.c.
 3600 - Checks for err_info != OKAY_NO_ERROR have been replaced by checks
 3601   for pointer variables being NULL in sql_lite.c, sql_my.c,
 3602   sql_oci.c, sql_odbc.c and sql_post.c. Since the address of
 3603   err_info is used this variable cannot be placed into a register.
 3604 - Several variables have been changed to constants.
 3605 - Several calls of strlen() have been replaced with calls of the
 3606   macro STRLEN() (STRLEN() computes the string size of a literal at
 3607   compile-time).
 3608 - The files drw_win.c and tim_win.c have been improved to reduce the
 3609   number of C compiler warnings.
 3610 - The function setupFiles in fil_win.c has been improved to set only
 3611   redirected files to _O_BINARY mode. Real console files are left in
 3612   _O_TEXT mode. This way the ENTER key is translated to '\n'.
 3613 - The function freelistStatistic has been added to heaputl.c.
 3614 - Several definitions have been changed to use a static storage
 3615   class.
 3616 
 3617 20150823:
 3618 - The example program raytrace.sd7 has been added. This program is a
 3619   raytracing demo.
 3620 - The library vector3d.s7i, which supports 3D vectors, has been
 3621   added.
 3622 - The compiler s7c has been improved to create code to manage free
 3623   lists for struct data. This avoids many calls of malloc() and
 3624   free(). The maximum length of the free lists is determined
 3625   automatically at run-time.
 3626 - In color.s7i the elements of the type color have been renamed to
 3627   redLight, greenLight and blueLight. The files mahjong.sd7 and
 3628   draw.s7i have been changed to use the new element names of the
 3629   type color.
 3630 - The functions doubleToCharBuffer, fltDgts and fltSci in flt_rtl.c
 3631   have been improved to work without calls of strlen().
 3632 - The function bigHexCStri in big_rtl.c has been improved to use
 3633   fewer calls of memmove() and strlen().
 3634 - The function process_pragma() in analyze.c has been improved to
 3635   use fewer calls of strlen().
 3636 - The function opendir in dir_dos.c and dir_win.c has been improved
 3637   to work without calls of strcat().
 3638 - The functions striAsUnquotedCStri and bstriAsUnquotedCStri in
 3639   striutl.c have been improved to use fewer calls of strlen().
 3640 - The function cp_to_command in striutl.c has been improved to use
 3641   fewer calls of os_stri_strlen.
 3642 - The function getcaps in trm_cap.c has been improved to use fewer
 3643   calls of strcat().
 3644 - The function fix_capability in trm_inf.c has been improved to use
 3645   fewer calls of strcat().
 3646 - The function strLit in str_rtl.c has been improved to work without
 3647   calls of strlen().
 3648 - The functions calculate_output_length and print_stri in error.c
 3649   have been improved to use fewer calls of strlen().
 3650 - The function prot_os_stri has been removed from traceutl.c.
 3651 - The macros 'likely' and 'unlikely' have been added to functions in
 3652   act_comp.c, analyze.c, arr_rtl.c, big_gmp.c, big_rtl.c, chr_rtl.c,
 3653   cmd_rtl.c, cmd_unx.c, cmd_win.c, con_win.c, hshlib.c, hsh_rtl.c,
 3654   soc_rtl.c, striutl.c and traceutl.c.
 3655 - Checks for err_info != OKAY_NO_ERROR have been replaced by checks
 3656   for pointer variables being NULL in cmd_win.c, dir_rtl.c,
 3657   fil_rtl.c, pcs_unx.c, pcs_win.c, striutl.c. Since the address of
 3658   err_info is used this variable cannot be placed into a register.
 3659   The pointer variables used now can be placed into a register.
 3660 - Variables in big_rtl.c, dir_rtl.c and striutl.c have been changed
 3661   to constants.
 3662 
 3663 20150802:
 3664 - An explanation, how Seed7 programs can be debugged with Eclipse,
 3665   has been added to the FAQ.
 3666 - Checks for the operators << and >> have been added to chkbig.sd7.
 3667 - Checks for string comparisons  ( < <= > >= ) and the operator
 3668   'mult' have been added to chkstr.sd7.
 3669 - The functions bigLShift, bigLShiftAssign, bigRShift and
 3670   bigRShiftAssign in big_gmp.c and big_rtl.c have been improved to
 3671   avoid a signed integer overflow, when the shift count is the most
 3672   negative integer.
 3673 - The compiler has been improved to optimize code for bigInteger
 3674   shifts and compares.
 3675 - The compiler has been improved to create inline code for some
 3676   string comparisons ( < <= > >= ) and the operator 'mult'.
 3677 - In int_rtl.c the function intLpad0 has been improved to avoid a
 3678   signed integer overflow when the number is the most negative
 3679   integer.
 3680 - In numlit.c the functions decimalValue, basedValue, readBigBased,
 3681   basedInteger, intExponent and lit_number have been changed to
 3682   work with unsigned integers.
 3683 - Calls of logFunction have been added to atom.c, doany.c,
 3684   entutl.c, exec.c, executl.c, expr.c, findid.c, libpath.c, name.c,
 3685   object.c, parser.c, syntax.c, token.c and type.c.
 3686 - The type of digit_value elements has been changed to uintType.
 3687 - The function drwImage in drw_win.c has been improved to avoid
 3688   a multiplication in the inner loop.
 3689 
 3690 20150720:
 3691 - The chapter about errors in the manual has been improved.
 3692 - In seed7_05.s7i parameter declarations without parameter name
 3693   (which use the keyword 'param') have been changed to parameter
 3694   declarations with parameter name.
 3695 - The compare functions in rational.s7i and bigrat.s7i have been
 3696   improved.
 3697 - The compiler has been improved to use inline code for the integer
 3698   compare function.
 3699 - Checks for the compare function have been added to chkint.sd7.
 3700 - Checks for hash tables with bigInteger, rational and bigRational
 3701   keys have been added to chkhsh.sd7.
 3702 - Calls of logError have been added to pcs_unx.c, pcs_win.c and
 3703   ref_data.c.
 3704 - Calls of logFunction have been added to big_rtl.c, blockutl.c,
 3705   drw_win.c, flistutl.c, gkb_win.c, gkb_x11.c, heaputl.c, hshlib.c,
 3706   identutl.c, infile.c, listutl.c, pcs_unx.c, pcs_win.c, ref_data.c,
 3707   tim_dos.c, tim_unx.c, tim_win.c, trm_inf.c, typ_data.c, typeutl.c
 3708   and typlib.c.
 3709 - In cc_conf.s7i, flt_act.s7i, cmd_rtl.c and common.h the
 3710   configuration value MAX_INTEGER_IN_FLOATTYPE has been renamed to
 3711   INT_RANGE_IN_FLOATTYPE_MAX.
 3712 - Documentation comments have been added to string.s7i, strlib.c and
 3713   str_rtl.c.
 3714 
 3715 20150705:
 3716 - The chapters describing statements and object orientation in the
 3717   manual have been improved.
 3718 - The library tls.s7i has been improved to use explicit
 3719   initialization vectors (IVs) for block ciphers, when the TLS
 3720   version is 1.1 or higher.
 3721 - The library tls.s7i has been improved to avoid raising exceptions,
 3722   when the handshake fails.
 3723 - The list of supported ciphers in tls.s7i has been changed.
 3724 - The functions round and trunc in float.s7i have been improved to
 3725   raise RANGE_ERROR, when the float value cannot be represented as
 3726   integer.
 3727 - The function log2 has been added to the library math.s7i.
 3728 - Checks for the functions str, round, trunc and log2 and for the
 3729   power operator (**) have been added to chkflt.sd7.
 3730 - The comanche webserver has been improved to continue without
 3731   exception, when the client closes the socket.
 3732 - The comanche webserver now accepts parameters with drive letters.
 3733 - The program chkccomp.c has been improved to write definitions of
 3734   HAS_LOG2, HAS_CBRT, HAS_EXP, HAS_EXP2, HAS_EXP10,
 3735   POW_OF_NAN_OKAY, POW_OF_ZERO_OKAY, POW_OF_ONE_OKAY,
 3736   POW_EXP_NAN_OKAY and POW_EXP_MINUS_INFINITY_OKAY.
 3737 - The configuration values HAS_LOG2 and HAS_CBRT have been added to
 3738   cc_conf.s7i.
 3739 - In config.h the configuration macros DO_HEAPSIZE_COMPUTATION,
 3740   DO_HEAP_STATISTIC, DO_HEAP_CHECK and CHECK_INT_OVERFLOW have been
 3741   changed to have a value of 0 or 1.
 3742 - Documentation comments have been improved in cc_conf.s7i,
 3743   float.s7i, fltlib.c, str_rtl.c and ut8_rtl.c.
 3744 - Calls of logFunction and logError have been added to actutl.c,
 3745   fltlib.c, literal.c, sql_rtl.c, striutl.c and ut8_rtl.c.
 3746 - The macros 'likely' and 'unlikely' have been added to functions in
 3747   arr_rtl.c, int_rtl.c, ref_data.c, rfl_data.c, set_rtl.c, sql_my.c,
 3748   sql_rtl.c and strlib.c.
 3749 - The definition of ERROR_INFORMATION in soc_rtl.h has been changed
 3750   to contain the name of the error variable. Usages of this macro in
 3751   pol_sel.c, pol_unx.c and soc_rtl.c have been adjusted.
 3752 - The performance of filGets for large files has been improved by
 3753   2% (measured with gcc and Valgrind).
 3754 - In various Seed7 libraries (*.s7i) parameter declarations without
 3755   parameter name (which use the keyword 'param') have been changed
 3756   to parameter declarations with parameter name.
 3757 
 3758 20150614:
 3759 - The exponentiation operator for float values has been improved to
 3760   work correct, when the base is negative zero, one or NaN (not a
 3761   number).
 3762 - The chapter describing float exponentiation in the manual has been
 3763   improved.
 3764 - The parse operator for integers has been improved to recognize,
 3765   when there is no digit after the sign.
 3766 - The makefile mk_msvc.mak has been improved to work without calling
 3767   vcvars32 before.
 3768 - The function isPositiveZero has been added to float.s7i.
 3769 - Checks for the exponentiation with integer and float exponent have
 3770   been added to chkflt.sd7.
 3771 - Checks for the parse operator have been added to chkbig.sd7 and
 3772   chkint.sd7.
 3773 - Checks for the operators div, rem, mdiv and mod have been added to
 3774   chkint.sd7.
 3775 - Documentation comments have been added to float.s7i, cc_conf.s7i,
 3776   fltlib.c and flt_rtl.c.
 3777 - The configuration values NAN_COMPARISON_OKAY, POW_FUNCTION_OKAY,
 3778   HAS_EXP2, HAS_EXP10, INT_MIN, INT_MAX and MAX_INTEGER_IN_FLOATTYPE
 3779   have been added to cc_conf.s7i
 3780 - The function intParse in int_rtl.c has been improved to recognize
 3781   when there is no digit after the sign.
 3782 - Calls of logFunction and logError have been added to analyze.c,
 3783   arr_rtl.c, cmd_rtl.c, flt_rtl.c infile.c, numlit.c, numutl.c
 3784 - The function defineTempVariable has been added to
 3785   comp/expr_util.s7i.
 3786 - The functions process_const_flt_ipow and process_const_flt_pow
 3787   have been added to comp/flt_act.s7i.
 3788 - The function process_const_int_mdiv in comp/int_act.s7i has been
 3789   improved.
 3790 - The function bigIntToDouble in numutl.c has been improved to use
 3791   a right shift instead of a division by two.
 3792 - In numutl.c and numutl.h the prototypes of the functions
 3793   getDecimalInt, getDecimalBigInt, getDecimalBigRational and
 3794   getDecimalFloat have been changed to use ustriType instead of
 3795   void *.
 3796 - The function getDecimalInt in numutl.c has been improved to do the
 3797   conversion without calling intParse.
 3798 - The macros logFunctionX and logErrorX have been added to common.h.
 3799   This allows the activation of selected logging functions by adding
 3800   X.
 3801 - In str_rtl.c macro definitions for strelem_memcmp and
 3802   search_strelem have been added. The macros are defined, when the
 3803   functions wmemcmp respectively wmemchr are available and when they
 3804   work with 32-bit data elements.
 3805 - The macros 'likely' and 'unlikely' have been added to functions in
 3806   striutl.c.
 3807 - The files sql_util.c and sql_util.h have been renamed to numutl.c
 3808   respectively numutl.h
 3809 - The program chkccomp.c has been improved to write definitions of
 3810   CAST_INT_TO_FLOAT_OKAY, HAS_EXP2, HAS_EXP10, NAN_COMPARISON_OKAY,
 3811   FLOAT_ZERO_TIMES_INFINITE_OKAY, NAN_MULTIPLICATION_OKAY,
 3812   NAN_DIVISION_OKAY, POWER_UNDERFLOW_WITH_SIGN, POWER_OF_ZERO_OKAY,
 3813   POWER_OF_ONE_OKAY, POWER_OF_NAN_OKAY, PRINTS_NEGATIVE_ZERO,
 3814   MAX_INTEGER_IN_FLOAT, MAX_INTEGER_IN_DOUBLE, HAS_WMEMCMP,
 3815   HAS_WMEMCHR and HAS_WMEMSET.
 3816 - Definitions of C_COMPILER_SCRIPT and GET_CC_VERSION_INFO_OPTIONS
 3817   have been added to mk_msvc.mak. This definitions are used by the
 3818   program setpaths.c to write definitions of the macros C_COMPILER
 3819   and GET_CC_VERSION_INFO to version.h
 3820 
 3821 20150601:
 3822 - Interpreter and compiler have been improved to work correctly, when
 3823   the function body (the part between 'begin' and 'end') consists of
 3824   one symbol (e.g.: begin test end; ).
 3825 - The parse operator for float values has been improved to work like
 3826   the corresponding function that reads literals in a Seed7 program.
 3827 - The parse operator for float values has been changed to forbid
 3828   hex literals (that the underlying C function might allow).
 3829 - In cli_cmds.s7i the copy and move commands have been fixed to work
 3830   correctly, when the target file is specified.
 3831 - Checks for division by zero (with div, mdiv, mod and rem) have been
 3832   added to chkbig.sd7 and chkint.sd7.
 3833 - Checks for log2 and log10 with negative argument have been added to
 3834   chkbig.sd7 and chkint.sd7.
 3835 - Checks if RANGE_ERROR is raised by the operators parse, digits, and
 3836   sci have been added to chkflt.sd7
 3837 - Checks for the sci operator have been added to chkflt.sd7.
 3838 - Checks for factorial with negative numbers have been added to
 3839   chkint.sd7.
 3840 - Checks if RANGE_ERROR is raised by the parse operator have been
 3841   added to chkint.sd7
 3842 - In chkbig.sd7 the functions chkGrow, chkShrink and chkMultCopy have
 3843   been renamed to chkAddAssign, chkSubtractAssign and chkMultAssign
 3844   respectively.
 3845 - The function defineTempVariable has been added to
 3846   lib/comp/expr_util.s7i and used in several compiler files.
 3847 - Changes to avoid signed unsigned mismatches in comparisons have
 3848   been done in actIConv (act_comp.c), act_iconv (actlib.c) and
 3849   bigParseBased2To36 (big_rtl.c)
 3850 - Explicit casts to void (document that a function result is ignored)
 3851   have been added to chrCLitToBuffer (chr_rtl.c) and bigLog10
 3852   (big_rtl.c).
 3853 - The functions getEnvironment and freeEnvironment have been added to
 3854   cmd_win.c.
 3855 - The file con_emc.c has been added. This file contains a (dummy)
 3856   driver for emcc (JavaScript) console access.
 3857 - The file stat_win.c has been added. This file defines the functions
 3858   wstati64() and fstati64().
 3859 - The program chkccomp.c has been improved to write definitions of
 3860   os_isnan, os_isinf, DOUBLE_MIN_EXP10, MIN_PRINTED_EXPONENT_DIGITS,
 3861   MAX_PRINTED_EXPONENT_DIGITS, STRTOD_ACCEPTS_HEX_NUMBERS,
 3862   ATOF_ACCEPTS_HEX_NUMBERS, STRTOD_ACCEPTS_DENORMAL_NUMBERS,
 3863   ATOF_ACCEPTS_DENORMAL_NUMBERS, HAS_SYMBOLIC_LINKS and HAS_READLINK.
 3864 - The config value ISNAN_WITH_UNDERLINE has been removed. Instead the
 3865   macro os_isnan has been defined.
 3866 - The macro HAS_SYMLINKS has been renamed to HAS_SYMBOLIC_LINKS.
 3867 - In match.c the function match_symbol() has been added and used in
 3868   match_object().
 3869 - The function dllSym has been renamed to dllFunc. The function
 3870   dllFunc returns a function pointer instead of a void pointer.
 3871   This silences warnings issued by some C compilers.
 3872   The sql_*.c drivers have been changed to use dllFunc.
 3873 - Calls of logError have been added or improved in act_comp.c,
 3874   arr_rtl.c, big_gmp.c, big_rtl.c, bst_rtl.c, cmd_rtl.c, cmd_win.c,
 3875   dir_rtl.c, fil_rtl.c, fil_unx.c, fil_win.c, flt_rtl.c, hsh_rtl.c,
 3876   intlib.c, pcs_unx.c, set_rtl.c and stat_win.c.
 3877 - Calls of logFunction have been added or improved in arr_rtl.c,
 3878   big_rtl.c, chr_rtl.c, cmd_rtl.c, dir_rtl.c, fil_rtl.c, fil_unx.c,
 3879   fil_win.c, flt_rtl.c, gkb_win.c, int_rtl.c, s7.c, set_rtl.c,
 3880   stat_win.c, tim_rtl.c
 3881 
 3882 20150517:
 3883 - Error messages in cli_cmds.s7i have been improved.
 3884 - The function getHttp with a httpLocation parameter has been added
 3885   to gethttp.s7i.
 3886 - The structure httpRequest in httpserv.s7i has been improved to
 3887   contain a field for the header.
 3888 - Documentation comments have been added to the functions
 3889   getAttrValue, getAttributes, getSubNodes and getContent in
 3890   xmldom.s7i.
 3891 - The function readXml with a string parameter has been added to
 3892   xmldom.s7i.
 3893 - The comanche webserver has been improved to respond with 405
 3894   (Method Not Allowed), when the request method is unknown.
 3895 - The check for phaser energy in startrek.sd7 has been improved.
 3896 - The function fltSci in flt_rtl.c has been improved to check for
 3897   PRINTF_FMT_E_MAXIMUM_FLOAT_PRECISION.
 3898 - Declarations of sqlite3_db_handle() and sqlite3_errmsg() have been
 3899   added to db_lite.h and sql_lite.c.
 3900 - The functions assertCompAndLnk and assertCompAndLnkWithOptions
 3901   have been added to chkccomp.c.
 3902 - The function numericProperties in chkccomp.c has been improved
 3903   to determine more values from test programs.
 3904 - The makefiles have been changed to define the linker options for
 3905   libraries before chkccomp is executed.
 3906 - The macro safe_fileno has been added to os_decls.h. This macro
 3907   is used in logging functions to avoid a segmentation violation,
 3908   when a FILE is NULL.
 3909 - Calls of logFunction and logError have been added to big_gmp.c,
 3910   big_rtl.c, drw_rtl.c, drw_win.c, drw_x11.c, fil_rtl.c, flt_rtl.c,
 3911   gkb_win.c, gkb_x11.c, int_rtl.c, prg_comp.c, str_rtl.c and
 3912   ut8_rtl.c.
 3913 
 3914 20150503:
 3915 - The example program cat.sd7 has been added. The program
 3916   concatenates and prints files. Thanks go to Brian Callahan for
 3917   providing it.
 3918 - The makefile mk_emccw.mak has been added. This makefile supports
 3919   compiling with the emcc C compiler from Emscripten. The support of
 3920   Emscripten is experimental (see also src/read_me.txt).
 3921 - Documentation comments have been improved in osfiles.s7i, utf8.s7i,
 3922   cmd_rtl.c and ut8_rtl.c.
 3923 - Various changes have been done in chkccomp.c. Many configuration
 3924   settings are now always defined and have a value of 0 or 1. The
 3925   corresponding #ifdef directives in the C source files have been
 3926   changed to #if directives.
 3927 - The library comp/int_act.s7i has been changed to use only
 3928   ccConf.CHECK_INT_REM_BY_ZERO for the operators 'rem' and 'mod'.
 3929 - In cmd_rtl.c the function cmdFileType has been changed to return
 3930   FILE_SYMLINK, when the chain of symbolic links is too long.
 3931 - In fil_rtl.c the functions seekFileLength(), offsetTell() and
 3932   offsetSeek() have been improved to fail for terminal devices such
 3933   as stdin. Under OpenBSD fseek() and ftell() succeeded in this case.
 3934 - In drw_x11.c the functions drwPut() and drwSetTransparentColor()
 3935   have been changed to consider a pixmap with a window of 0 as empty.
 3936 - Calls of logFunction and logError have been added to fil_rtl.c,
 3937   soc_rtl.c, str_rtl.c, tim_unx.c and ut8_rtl.c.
 3938 
 3939 20150419:
 3940 - The library httpserv.s7i, which supports HTTP server and HTTP
 3941   requests, has been added.
 3942 - The comanche webserver has been changed to use the library
 3943   httpserv.s7i.
 3944 - The example program which.sd7 has been added. This program locates
 3945   in which directory a command is found.
 3946 - In shell.s7i the modes used for popen and popen8 have been changed.
 3947   Now a pipe can be opened with the binary modes "r" (read) and
 3948   "w" (write), or with the text modes "rt" (read) and "wt" (write).
 3949 - Variants of the functions popen and popen8, which use an array of
 3950   parameters, have been added to shell.s7i.
 3951 - In tls.s7i the function gets has been changed to return as soon as
 3952   data is available. This behavior corresponds to the gets function
 3953   in socket.s7i.
 3954 - Checks for the radix operator have been added to chkbig.sd7 and
 3955   chkint.sd7.
 3956 - Interpreter and compiler have been improved such that the files
 3957   STD_IN, STD_OUT and STD_ERR are in binary mode.
 3958 - The function doRemove in chkccomp.c has been improved to check for
 3959   the presence of the file before it is removed.
 3960 - The function checkPopen has been been added to chkccomp.c.
 3961 - The function cmdShellEscape in cmd_rtl.c has been improved. Now all
 3962   characters except '\0;', '\n' and '\r' can be escaped ('\r' can be
 3963   escaped under Linux/Unix/BSD).
 3964 - Now there are two versions of cmdShellEscape and the define
 3965   variable ESCAPE_SHELL_COMMANDS decides which one is used.
 3966 - The function filPopen has been changed, to open a pipe in binary or
 3967   text mode.
 3968 - In fil_rtl.c the function read_and_alloc_stri has been changed to
 3969   read the data into a list of buffers. Afterwards the string is
 3970   allocated, the data is copied and the buffer list is freed. This
 3971   improves the performance, when the file is a pipe.
 3972 - In fil_rtl.c the function doGetsFromTerminal has been changed to
 3973   check for a negative length.
 3974 - In soc_rtl.c the function read_and_alloc_stri has been added. This
 3975   function reads the data into a list of buffers. Afterwards the
 3976   string is allocated, the data is copied and the buffer list is
 3977   freed.
 3978 - In soc_rtl.c the function socGets has been improved to use
 3979   read_and_alloc_stri, when the requested length is larger than 1 MB.
 3980 - In soc_rtl.c the function socWrite has been improved to call send()
 3981   again, when not all data has been written.
 3982 - In prclib.c the functions prc_block_catch_all and
 3983   prc_block_otherwise have been improved to free the fail_stack.
 3984   This way the call stack that is written, when an exception
 3985   terminates the program, is always correct.
 3986 - The function escape_command in striutl.c has been improved.
 3987 - Verbose exceptions have been added to big_rtl.c, fil_rtl.c,
 3988   pol_sel.c, pol_unx.c and soc_rtl.c.
 3989 - The logging of C functions in big_rtl.c, cmd_rtl.c, fil_rtl.c,
 3990   hsh_rtl.c, int_rtl.c, pcs_rtl.c, pcs_unx.c, pcs_win.c, prg_comp.c,
 3991   soc_rtl.c, str_rtl.c, tim_dos.c, tim_rtl.c, tim_unx.c and tim_win.c
 3992   has been changed to use the macro logFunction.
 3993 - The definition of the macro logError has been removed from various
 3994   C files. The new definition of logError is in common.h.
 3995 - Trace output has been added to fil_rtl.c.
 3996 - Documentation comments have been improved in process.s7i shell.s7i,
 3997   socket.s7i, big_rtl.c, fillib.c
 3998 
 3999 20150405:
 4000 - A cache for client sessions has been added to tls.s7i. This allows
 4001   that a TLS connection can be resumed (without a new negotiation of
 4002   the security parameters).
 4003 - The comanche webserver has been improved to keep connections open
 4004   for 15 seconds.
 4005 - The functions compare and hashCode for the type socketAddress have
 4006   been added to sockbase.s7i.
 4007 - A new variant of openServerTls, with a certAndKey parameter, has
 4008   been added to tls.s7i.
 4009 - The functions validityType, createX509Cert, certAndKey and
 4010   selfSignedX509Cert have been added to x509cert.s7i.
 4011 - The constant stdRsaKeyPair has been added to pkcs1.s7i.
 4012 - The functions localAddress, peerAddress and ord have been added to
 4013   socket.s7i.
 4014 - In duration.s7i the functions YEARS, MONTHS, DAYS, HOURS, MINUTES,
 4015   SECONDS and MICRO_SECONDS have been improved to normalize the
 4016   duration value.
 4017 - The functions sendGet (gethttp.s7i) and sendHttpResponse
 4018   (comanche.sd7) have been change to send the request/response with
 4019   one write statement.
 4020 - The library tls.s7i has been improved to accept client-hello and
 4021   server-hello messages with extensions.
 4022 - The functions openTlsSocket and openServerTls (in tls.s7i) have
 4023   been improved to avoid exceptions, when an alert message is
 4024   received or a socket is closed.
 4025 - In tls.s7i the function write has been changed to send long strings
 4026   with several messages.
 4027 - Tests for the operators parse and radix and for the function
 4028   bigInteger have been added to chkbig.sd7.
 4029 - The functions openHttpSession, closeHttpSession, processHttpRequest
 4030   and cleanSessions have been added to comanche.sd7.
 4031 - Trace output and verbose exceptions have been added to various
 4032   functions in big_rtl.c, soc_rtl.c, int_rtl.c and str_rtl.c.
 4033 - The functions striAsUnquotedCStri and bstriAsUnquotedCStri have
 4034   been added to striutl.c.
 4035 - In traceutl.c the functions prot_stri_unquoted and prot_bstri have
 4036   been changed to use striAsUnquotedCStri and bstriAsUnquotedCStri
 4037   respectively.
 4038 - Interpreter and compiler have been improved to support the actions
 4039   SOC_GET_LOCAL_ADDR, SOC_GET_PEER_ADDR and SOC_ORD (SOC_GET_ADDR has
 4040   been renamed to SOC_GET_LOCAL_ADDR).
 4041 
 4042 20150322:
 4043 - The program chkchr.sd7 has been added. This program checks the
 4044   correctness of the functions isLetter and width. Thanks go to
 4045   Arkady Kuleshov for providing chkchr.sd7.
 4046 - Interpreter and compiler have been improved to allow Unicode names.
 4047   This functionality is inspired by patches from Arkady Kuleshov.
 4048   Unicode names are switch off by default. They must be activated
 4049   with the pragma: $ names unicode;
 4050 - The library smtp.s7i, with support for SMTP (simple mail transfer
 4051   protocol), has been added.
 4052 - Interpreter and compiler have been changed to write an error
 4053   message, when a deprecated string escape sequence (e.g.: "\7\")
 4054   is used instead of a new escape sequence (e.g.: "\7;").
 4055 - The function getHttpLocation in gethttp.s7i has been improved to
 4056   handle IPv6 addresses correctly.
 4057 - In cli_cmds.s7i error messages have been added to doCopyCmd and
 4058   doMoveCmd.
 4059 - Documentation comments have been added or improved in console.s7i,
 4060   ftp.s7i and cli_cmds.s7i.
 4061 - Checks for the function bigInteger have been added to chkbig.sd7.
 4062 - Checks for the integer for-loop have been added to chkprc.sd7.
 4063 - In big_rtl.c the functions bigParseBasedPow2 and bigParseBased2To36
 4064   have been improved to raise RANGE_ERROR when a digit is too big.
 4065 - The program chkccomp.c has been changed to use test programs for
 4066   various settings. This has been done to allow that chkccomp.c can
 4067   be compiled with any compiler (not just the one that is to be
 4068   tested).
 4069 - The function write_position_info has been added to runerr.c.
 4070 - In runerr.c the function write_call_stack has been improved to
 4071   catch the signal SIGSEGV.
 4072 - The function scan_symbol_utf8 has been added to scanner.c.
 4073 - The functions prot_cstri8 and prot_string have been added to
 4074   traceutl.c.
 4075 - The function escape_sequence in literal.c has been changed to write
 4076   an error when a deprecated string escape sequence is used.
 4077 - The function utf8_char in literal.c has been changed to save the
 4078   UTF-8 sequence.
 4079 - The function basedValue in numlit.c has been changed to write the
 4080   error ILLEGALBASEDDIGIT with the correct digit.
 4081 - In prclib.c the functions prc_for_downto, prc_for_downto_step,
 4082   prc_for_to and prc_for_to_step have been changed such that the
 4083   loop variable has a defined value after the loop. After the
 4084   for-loop the loop variable must be beyond the upper bound (or below
 4085   the lower bound for for-downto-loops).
 4086 - In doany.c the functions do_flush, do_wrnl and do_wrstri have been
 4087   changed to allow that outfile is from a different program.
 4088 
 4089 20150308:
 4090 - The compile time error messages have been improved. Now Unicode
 4091   characters in the error line are displayed correctly. Before they
 4092   have been displayed as question marks (?). When the error line is
 4093   written to a console the encoding of the operating system is used.
 4094   When stdout has been redirected to a file the error line is encoded
 4095   with UTF-8. Thanks go to Arkady Kuleshov for triggering this
 4096   improvement. The patch proposed by Arkady is based on stdout and
 4097   UTF-8. The actual implementation uses a different approach via the
 4098   console driver con_drv.h. The console driver uses UTF-16 under
 4099   Windows (unless stdout has been redirected) and UTF-8 under
 4100   Linux/Unix/BSD.
 4101 - The function getBinary has been added to bin64.s7i. This function
 4102   returns 64 bits from a bitset starting with a given bit number.
 4103 - The compiler has been changed to use the function getBinary to
 4104   generate bitset literals.
 4105 - Interpreter and compiler have been improved to support the actions
 4106   BIN_GET_BINARY_FROM_SET, PRC_FOR_DOWNTO_STEP and PRC_FOR_TO_STEP.
 4107 - The compiler function AppendWithDiagnostic has been renamed to
 4108   appendWithDiagnostic.
 4109 - The function appendWithDiagnostic in comp/debug.s7i has been
 4110   improved to add #line directives only when they are missing.
 4111 - The function defineTempConstant has been added to expr_util.s7i.
 4112 - The functions process_const_bin_radix and process_bin_radix in
 4113   comp/bin_act.s7i have been improved to use uintRadix() and
 4114   uintRadixPow2() for the actions BIN_radix and BIN_RADIX.
 4115 - The generation of for-loops in comp/prc_act.s7i has been improved.
 4116 - A definition of an integer for-loop with step has been added to
 4117   forloop.s7i. Before integer for-loops with step were defined with
 4118   the template FOR_STEP_DECLS.
 4119 - The functions prc_block, prc_block_catch_all, prc_block_otherwise,
 4120   prc_repeat and prc_while in prclib.c have been improved to check
 4121   for fail_flag with the macro unlikely().
 4122 - The functions check_for_int_to and check_for_int_downto in
 4123   chkprc.sd7 have been improved.
 4124 - The program err.sd7 has been improved.
 4125 - The program chkccomp.c has been changed to write the version
 4126   information to stdout when no file name has been provided as
 4127   argument.
 4128 - A definition of the macro chrStrMacro has been added to chr_rtl.h.
 4129 - The function utf8_char in literal.c has been changed to call
 4130   next_character() before reporting the errors CHAR_ILLEGAL,
 4131   OVERLONG_UTF8_ENCODING, UTF16_SURROGATE_CHAR_FOUND and
 4132   CHAR_NOT_UNICODE.
 4133 - The functions read_ustri8_line, ustri8_buffer_to_stri,
 4134   calculate_output_length, print_stri and read_and_print_line have
 4135   been added to error.c
 4136 
 4137 20150216:
 4138 - The functions isLetter and width have been added to the library
 4139   char.s7i. Compiler and interpreter have been changed to support
 4140   this functions. Thanks go to Arkady Kuleshov for providing a patch.
 4141 - The library unionfnd.s7i and the program percolation.sd7 have been
 4142   added. Thanks go to Arkady Kuleshov for providing them.
 4143 - The makefile mk_icc.mak has been added. This makefile supports
 4144   compiling with the icc C compiler.
 4145 - The library bin64.s7i, a 64-bit binary value support library, has
 4146   been added.
 4147 - The functions fourBytesLeToBin32, fourBytesBeToBin32,
 4148   bin32AsFourBytesLe and bin32AsFourBytesBe have been added to
 4149   bin32.s7i.
 4150 - The functions bigAsEightBytesLe and bigAsEightBytesBe have been
 4151   added to bytedata.s7i
 4152 - Interpreter and compiler have been improved to support the actions
 4153   BIN_STR, BIN_radix, BIN_RADIX, BIN_AND, BIN_OR, BIN_XOR,
 4154   BIN_LSHIFT, BIN_RSHIFT, BIN_LSHIFT_ASSIGN, BIN_RSHIFT_ASSIGN,
 4155   BIN_AND_ASSIGN, BIN_OR_ASSIGN, BIN_XOR_ASSIGN, CHR_IS_LETTER and
 4156   CHR_WIDTH.
 4157 - The support for the actions INT_AND, INT_AND_ASSIGN, INT_OR,
 4158   INT_OR_ASSIGN, INT_ULSHIFT, INT_ULSHIFT_ASSIGN, INT_URSHIFT,
 4159   INT_URSHIFT_ASSIGN, INT_XOR and INT_XOR_ASSIGN has been removed
 4160   from interpreter and compiler.
 4161 - The compiler library comp/bin_act.s7i has been added.
 4162 - The functions isConstantCall and isPureFunction in comp/const.s7i
 4163   have been improved.
 4164 - The functions uintRadix, uintRadixPow2 and uintStr have been added
 4165   to int_rtl.c.
 4166 - The function bld_binary_temp has been added to objutl.c.
 4167 
 4168 20150201:
 4169 - The option -p of the interpreter (Specify a protocol file, for
 4170   trace output) has been documented in FAQ, s7.1 and in the help
 4171   function of the interpreter.
 4172 - The behavior of a Seed7 program, when it receives a signal, has
 4173   changed. Now a program is terminated, when it receives a signal.
 4174   The old behavior, that asks for RETURN or '*', is used when
 4175   interpreter or compiler are called with the option -ts.
 4176 - The option -ts of interpreter and compiler (Trace signals) has
 4177   been documented in FAQ, s7.1, s7c.1 and in the help functions of
 4178   the programs.
 4179 - Documentation comments in integer.s7i, bigint.s7i and char.s7i have
 4180   been improved.
 4181 - The runtime of the function bitsetElemAsHex (in comp/set_act.s7i)
 4182   has been improved by a factor of 7 (measured with gcc and
 4183   Valgrind).
 4184 - The operator sci has been improved in integer.s7i and bigint.s7i.
 4185 - The function check_sci, which checks the sci operator, has been
 4186   added to chkint.sd7.
 4187 - The function check_str, which checks the str function, has been
 4188   added to chkset.sd7.
 4189 - The function doRemoveCmd in cli_cmds.s7i has been improved to write
 4190   a message when the operation is not permitted.
 4191 - The compiler has been improved to generate better code for the
 4192   action STR_MULT.
 4193 - The function check_string_mult, which checks string
 4194   multiplications, has been added to chkstr.sd7.
 4195 - The function bitsetNonZero has been added to set_rtl.c. This
 4196   function uses loop unrolling inspired by Duff's device.
 4197 - The function setNext (in set_rtl.c) has been changed to call
 4198   bitsetNonZero. This improves the speed of setNext by a factor of 2
 4199   (measured with gcc and Valgrind).
 4200 - The function strMult in str_rtl.c has been improved to use a binary
 4201   method for string multiplication. This improves the speed of
 4202   strMult by a factor of 2 (measured with gcc and Valgrind).
 4203 - The function drwEmpty has been added to drw_x11.c drw_win.c and
 4204   drw_dos.c.
 4205 
 4206 20150118:
 4207 - The performance of the function bytes2Int in bytedata.s7i has been
 4208   improved by 10% (measured with gcc and valgrind). An intermediate
 4209   function has been removed and a boolean parameter has been omitted
 4210   from the underlying C function .
 4211 - The function check_string_concat, which contains checks for string
 4212   concatenation, has been added to chkstr.sd7.
 4213 - Improvements have been done in gethttp.s7i and tls.s7i to avoid
 4214   blocking and exceptions, when a socket is closed or unexpected data
 4215   is read.
 4216 - Several optimizations in the compiler (s7c) have been done:
 4217   - The function optimize_str_cat has been added to comp/str_act.s7i.
 4218     This function optimizes sequences of string concatenations.
 4219   - The flag prefer_result_expr has been added to the struct
 4220     expr_type in comp/expr.s7i. With this flag it can be requested
 4221     that a parameter is preferred as result_expr (the value is
 4222     allocated at the heap).
 4223   - The function process_int_str has been added to int_act.s7i.
 4224     This function is used for INT_STR and for the radix operator
 4225     when the base is 10.
 4226 - The program chk_all.sd7 has been changed to ignore the exception
 4227   FILE_ERROR, when it is raised by some calls of removeFile.
 4228 - In int_rtl.c the functions intBytesBe2Int and intBytesLe2Int have
 4229   been changed to convert only signed values (in twos-complement
 4230   representation). The parameter isSigned has been removed.
 4231 - The functions intBytesBe2UInt and intBytesLe2UInt have been added
 4232   to int_rtl.c. This functions convert unsigned values.
 4233 - The function write_place in error.c has been fixed to write the
 4234   correct file name and line. This error has been introduced in
 4235   version 2014-09-07, when the function write_place has been added.
 4236 - A definition and calls of the macro logError have been added to
 4237   fil_rtl.c and soc_rtl.c.
 4238 - A version of the function alloc has been added to progs.s7i. This
 4239   version allocates a string object.
 4240 - The functions prot_params and prot_name in traceutl.c have been
 4241   improved to write syntax with keywords at the beginning and at the
 4242   end correctly.
 4243 - In ref_data.c the functions refAlloc, refArrMaxIdx, refArrMinIdx,
 4244   refArrToList, refBody, refCategory, refFile, refHshDataToList,
 4245   refHshKeysToList, refIsVar, refItfToSct, refLine, refLocalConsts,
 4246   refLocalVars, refNum, refParams, refResini, refResult,
 4247   refSctToList, refStr, refType, actValue, bigValue, blnValue,
 4248   bstValue, chrValue, drwValue, filValue, fltValue, intValue,
 4249   pcsValue, polValue, prgValue, refValue, rflValue, setValue,
 4250   strValue and typValue have been changed to use const parameters.
 4251 - The actions INT_BYTES_BE and INT_BYTES_LE have been replaced by
 4252   INT_BYTES_BE_SIGNED, INT_BYTES_BE_UNSIGNED, INT_BYTES_LE_SIGNED and
 4253   INT_BYTES_LE_UNSIGNED.
 4254 - The actions INT_BYTES_BE_2_UINT, INT_BYTES_LE_2_UINT and
 4255   REF_ALLOC_STRI have been added.
 4256 
 4257 20150104:
 4258 - In sql_post.c the function swap64 has been renamed to swapUInt64.
 4259   Thanks go to Brian Callahan for reporting that OpenBSD already has
 4260   a function called swap64().
 4261 - The library aes.s7i with AES (Advanced Encryption Standard) cipher
 4262   support has been added.
 4263 - The library tls.s7i has been improved to allow encoding with AES.
 4264 - The functions fileType and fileTypeSL have been added to ftp.s7i.
 4265 - The handling of the command ls -l in the program ftp7.sd7 has been
 4266   improved to write the file type.
 4267 - The compilation of the action ARR_IDX in the compiler (file
 4268   arr_act.s7i) has been improved.
 4269 - In des.s7i and tdes.s7i all occurrences of subkey have been renamed
 4270   to subKey.
 4271 - In sql_lite.c, sql_my.c, sql_oci.c, sql_odbc.c and sql_post.c the
 4272   function setupFuncTable has been changed to use count.sql_func
 4273   (defined in heaputl.h).
 4274 
 4275 20141223:
 4276 - The chapter about primitive actions in the manual has been
 4277   improved.
 4278 - The compiler optimization of bigInteger divisions and
 4279   multiplications by -1 has been improved.
 4280 - Tests of bigInteger divisions and multiplications have been added
 4281   to chkbig.sd7.
 4282 - The functions fltDgts and fltSci have been improved to allow a
 4283   precision greater than 1000.
 4284 - Tests of the operators digits and sci with large precision values
 4285   have been added to chkflt.sd7.
 4286 - In drw_x11.c the functions drwHeight and drwWidth have been
 4287   improved to avoid a call of XGetGeometry, when the window is a
 4288   pixmap. This significantly improves the writing with Seed7 fonts
 4289   under Mac OS X.
 4290 - The compiler has been improved to limit the length of generated C
 4291   float literals to 100 characters. The length of a float literal
 4292   accepted by the cl C compiler from msvc is limited.
 4293 - The function doubleToCharBuffer in flt_rtl.c has been improved to
 4294   work correctly for numbers with big and small exponents.
 4295 - Tests of float to string conversions have been added to chkflt.sd7.
 4296   The tested float values have exponents from the allowed range.
 4297 - The function bigAddAssignSignedDigit (former bigGrowSignedDigit) in
 4298   big_rtl.c has been changed to mask the delta value with
 4299   BIGDIGIT_MASK.
 4300 - The functions numericSizes and deteminePostgresDefines in
 4301   chkccomp.c have been improved. Now the macros INT32_SUFFIX,
 4302   UINT32_SUFFIX, INT32TYPE_LITERAL_SUFFIX, INT32TYPE_FORMAT,
 4303   INT64_SUFFIX, UINT64_SUFFIX, INT64TYPE_LITERAL_SUFFIX and
 4304   INT64TYPE_FORMAT are written by chkccomp.c instead of being defined
 4305   in common.h.
 4306 - The function findPgTypeInclude has been added to chkccomp.c.
 4307 - The check for the function __builtin_expect in chkccomp.c has been
 4308   improved.
 4309 - The actions BIG_GROW, BIG_SHRINK, FLT_GROW, FLT_SHRINK, INT_GROW
 4310   and INT_SHRINK have been renamed to BIG_ADD_ASSIGN,
 4311   BIG_SBTR_ASSIGN, FLT_ADD_ASSIGN, FLT_SBTR_ASSIGN, INT_ADD_ASSIGN
 4312   and INT_SBTR_ASSIGN respectively.
 4313 - In big_rtl.c and big_gmp.c the functions bigGrowSignedDigit,
 4314   bigGrow and bigShrink have been renamed to bigAddAssignSignedDigit,
 4315   bigAddAssign and bigSbtrAssign respectively.
 4316 - A check for DEFAULT_DECIMAL_PRECISION in sql_odbc.c has been
 4317   corrected.
 4318 
 4319 20141210:
 4320 - The database drivers sql_lite.c, sql_my.c, sql_oci.c, sql_odbc.c
 4321   and sql_post.c have been improved to select a shared library / DLL
 4322   from a list of candidates.
 4323 - The program chkccomp.c has been improved to configure database
 4324   drivers with a list of shared libraries / DLLs.
 4325 - The makefiles mk_bcc32.mak, mk_bccv5.mak, mk_msvc.mak, mk_msys.mak,
 4326   mk_mingc.mak, mk_mingw.mak and mk_nmake.mak have been improved to
 4327   write definitions of the C macros MYSQL_DLL, SQLITE_DLL and
 4328   POSTGRESQL_DLL to the file chkccomp.h.
 4329 - The chapters about integer, rational and exceptions in the manual
 4330   have been improved.
 4331 - In bigint.s7i the performance of the binomial coefficient operator
 4332   (infix operator symbol: ! ) has been improved by 17% (measured with
 4333   gcc and valgrind).
 4334 - The optimization of constant expressions in the compiler has been
 4335   improved.
 4336 - The program esc2qte.c has been added. This program searches for
 4337   backslash escaped spaces and quotes the string instead. It is used
 4338   by mk_nmake.mak to process the file depend.
 4339 - Documentation comments in integer.s7i have been improved.
 4340 - The recognition of integer formats in chkccomp.c has been improved
 4341   (the test programs now include <string.h>).
 4342 - The makefiles mk_msys.mak and mk_nmake.mak have been improved to
 4343   use wrdepend.exe to determine the dependencies.
 4344 - The program wrdepend.c has been changed to include config.h (this
 4345   way the macro MAP_ABSOLUTE_PATH_TO_DRIVE_LETTERS is available).
 4346 - A cast has been added to sudo.c.
 4347 
 4348 20141207:
 4349 - The paragraph in src/read_me.txt, that describes the compilation
 4350   under Mac OS X, has been improved.
 4351 - The function bigIPow1 in big_rtl.c has been changed to call
 4352   bigLog2BaseIPow instead of bigLShiftOne when the base is a power of
 4353   two. This avoids an integer overflow when the shift count is
 4354   computed.
 4355 - The function fltIPow in flt_rtl.c has been changed to avoid a
 4356   division by zero when CHECK_FLOAT_DIV_BY_ZERO has been defined.
 4357 - The function fltIPow in flt_rtl.c has been improved to return
 4358   -Infinity for (-0.0) ** n when n is negative.
 4359 - The function uint_rand (in int_rtl.c) has been renamed to uintRand
 4360   and changed to omit the initialization of the random seed.
 4361 - The function setupRand has been added to int_rtl.c. This function
 4362   initializes the random seed of uintRand.
 4363 - The function uintRandLimited has been added to int_rtl.c.
 4364 - The runtime of the integer random number generator has been reduced
 4365   to 45%.
 4366 - The compiler has been improved to generate optimized code for
 4367   special cases of the action INT_RAND. For special cases the
 4368   functions uintRand and uintRandLimited are used instead of intRand.
 4369 - The compiler has been improved to optimize the binomial coefficient
 4370   operator (infix operator symbol: ! ).
 4371 - Tests for the binomial coefficient (infix operator symbol: ! ) have
 4372   been added to chkint.sd7 and chkovf.st7
 4373 - Tests for the integer random number generator have been added to
 4374   chkint.sd7.
 4375 - Tests for powers of negative zero have been added to chkflt.s7i.
 4376 - The database interface headers db_lite.h, db_my.h, db_oci.h,
 4377   db_odbc.h and db_post.h have been added. This include files are
 4378   used when the original database include files are not available.
 4379 - The functions decimalValue and basedValue in numlit.c have been
 4380   improved to use an unsigned integer value and a simplified test for
 4381   the maximum value of a literal. The change reduces the runtime of
 4382   decimalValue by 6% (measured with gcc and valgrind).
 4383 - The function intBinom (in int_rtl.c) has been improved to work
 4384   correctly as long as the result is representable in an integer of
 4385   type intType. When the result is not representable in an integer
 4386   the exception OVERFLOW_ERROR is raised.
 4387 - The function uintBinomNoChk has been added to int_rtl.c. This
 4388   special case function is used by the compiler, when n_number is
 4389   less than a limit.
 4390 - The function intSafeMult has been renamed to intMultOvfChk.
 4391 - The makefile mk_osxcl.mak has been added. This makefile supports
 4392   compilation under Mac OS X with the clang compiler.
 4393 - The file sql_ite.c has been renamed to sql_lite.c.
 4394 - The makefiles have been improved to write additional macros to
 4395   chkccomp.h. This macros are used by chkccomp.c to do the database
 4396   investigation.
 4397 - The database drivers sql_lite.c, sql_my.c, sql_oci.c, sql_odbc.c
 4398   and sql_post.c have been improved.
 4399 - The configuration program chkccomp.c has been improved:
 4400   - Now it writes definitions of INT8TYPE and INT16TYPE to version.h.
 4401   - Now it adds /opt/X11/include to the include path, when
 4402     /usr/include/X11 does not exist. This is required for Mac OS X.
 4403   - The functions that write define macros for databases have been
 4404     improved to take the new database interface headers (db_*.h) into
 4405     account.
 4406 
 4407 20141116:
 4408 - The type process has been added to the library process.s7i. The
 4409   type process is used to manage child processes.
 4410 - The functions compare, hashCode, str, exitValue isAlive,
 4411   startProcess, kill and waitFor have been added to process.s7i.
 4412 - Support for the actions CMD_PIPE2, CMD_PTY and CMD_START_PROCESS
 4413   has been removed from interpreter and compiler.
 4414 - Support for the actions PCS_CMP, PCS_CPY, PCS_EQ, PCS_EXIT_VALUE,
 4415   PCS_HASHCODE, PCS_IS_ALIVE, PCS_KILL, PCS_NE, PCS_PIPE, PCS_PTY,
 4416   PCS_START, PCS_STR, PCS_VALUE and PCS_WAIT_FOR has been added to
 4417   interpreter and compiler.
 4418 - The files pcs_rtl.c, pcs_rtl.h, pcs_unx.c, pcs_win.c, pcs_drv.h,
 4419   pcslib.c, pcslib.h and pcs_act.s7i have been added.
 4420 - The functions freeArgVector, genArgVector have been moved from
 4421   cmd_unx.c to pcs_unx.c.
 4422 - The function prepareCommandLine has been moved from cmd_win.c to
 4423   pcs_win.c.
 4424 - The makefiles have been improved to consider the files necessary
 4425   for process support.
 4426 
 4427 20141102:
 4428 - The files to generate man pages for Seed7 interpreter and compiler
 4429   (files doc/s7.1 and doc/s7c.1) have been improved.
 4430 - Functions have been moved from make.s7i and makedata.s7i to the new
 4431   library cli_cmds.s7i (Emulate CLI commands from UNIX and DOS).
 4432 - Support for the commands mkdir and md has been added to
 4433   cli_cmds.s7i.
 4434 - The library makedata.s7i has been improved to support the functions
 4435   dir, notdir, suffix, basename, addprefix, addsuffix, filter,
 4436   filter-out, foreach, call, sort and shell.
 4437 - The libraries makedata.s7i and make.s7i have been improved to
 4438   support pattern rules with equal patterns.
 4439 - The configuration program chkccomp.c has been improved to set the
 4440   POSTGRESQL_POSTGRES_H and POSTGRESQL_PG_TYPE_H in more situations.
 4441 - The function exec_call in exec.c has been improved to raise the
 4442   exception ILLEGAL_ACTION, when it is called for a FORWARDOBJECT.
 4443 - The compiler has been improved to issue an error, when a forward
 4444   defined function is called.
 4445 - The function prg_eval in prglib.c has been improved to call
 4446   raise_with_arguments instead of raise_exception.
 4447 - The function nameOfBufferType in sql_post.c has been improved to
 4448   use PGNODETREEOID, INT2ARRAYOID, OIDARRAYOID and FDW_HANDLEROID
 4449   only when they have been defined.
 4450 
 4451 20141019:
 4452 - The compiler s7c has been improved to process the semicolon
 4453   operator with reduced stack usage. Thanks go to Pietro Cerutti for
 4454   pointing out problems with the available stack size under FreeBSD.
 4455 - In drw_x11.c the function redraw has been improved to ignore expose
 4456   events when backing store is active. Thanks go to Brian Callahan
 4457   for reporting problems with activated backing store under OpenBSD.
 4458 - The library makedata.s7i has been improved. Now conditional
 4459   makefile parts with ifdef and ifndef are allowed. Now it is
 4460   possible to use the ?= operator to assign a value to a variable.
 4461   Now the value of a variable is taken from the environment, when it
 4462   has not been defined in the makefile.
 4463 - The function setupStack has been moved from cmd_rtl.c to heaputl.c.
 4464 - The self extracting Seed7 installer for Windows has been improved
 4465   to allow downloading the latest Seed7 release.
 4466 - Tabs in various files have been replaced with spaces.
 4467 
 4468 20141005:
 4469 - The example program sql7.sd7 has been improved to write help
 4470   information, when it is called with the option -? .
 4471 - The configuration program chkccomp.c has been improved to accept
 4472   the #define macros MYSQL_INCLUDE_OPTIONS, SQLITE_INCLUDE_OPTIONS,
 4473   POSTGRESQL_INCLUDE_OPTIONS, ODBC_INCLUDE_OPTIONS,
 4474   OCI_INCLUDE_OPTIONS, MYSQL_LIBRARY_PATH, SQLITE_LIBRARY_PATH,
 4475   POSTGRESQL_LIBRARY_PATH, ODBC_LIBRARY_PATH and OCI_LIBRARY_PATH.
 4476 - The makefile mk_freebsd.mk has been improved to allow database
 4477   connections under FreeBSD.
 4478 - The makefiles mk_mingw.mak, mk_msvc.mak, mk_bcc32.mak and
 4479   mk_bccv5.mak have been improved to support the SQLite database.
 4480 - The database driver sql_ite.c has been improved such that it can
 4481   also work with a DLL that is loaded at runtime.
 4482 - Tracing statements have been added to drw_x11.c.
 4483 
 4484 20140921:
 4485 - Access to MySql/MariaDb, SQLLite, PostgreSQL, Oracle and ODBC
 4486   databases has been added.
 4487 - The library sql_base.s7i has been added. This library provides
 4488   functions to connect to a database, to prepare statements, to bind
 4489   variables to prepared statements, to execute prepared statements,
 4490   to fetch data from the database and to get individual columns from
 4491   fetched data.
 4492 - A paragraph about the compilation of Seed7 with database
 4493   connections has been added to the FAQ.
 4494 - The example program sql7.sd7 has been added. This program connects
 4495   with a database, reads SQL commands and sends them to the database.
 4496 - The example program chkdb.sd7 has been added. This program checks
 4497   SQL statements with several databases. The database login data in
 4498   chkdb.sd7 must be adjusted to allow that opening the databases
 4499   succeeds.
 4500 - The library ftp.s7i and the program ftp7.sd7 have been improved to
 4501   accept connection strings of the form user:password@hostName .
 4502 - Interpreter and compiler have been improved to support databases.
 4503 - The compiler now adds parentheses around comma expressions when
 4504   they are used as index. This changes have been done in the files
 4505   arr_act.s7i, bst_act.s7i and str_act.s7i.
 4506 - Database drivers consisting of the files dll_drv.h, dll_unx.c,
 4507   dll_win.c, sql_drv.h, sql_ite.c, sql_my.c, sql_oci.c, sql_odbc.c,
 4508   sql_post.c, sql_rtl.c, sql_rtl.h, sql_util.c, sql_util.h, sqllib.c
 4509   and sqllib.h have been added.
 4510 - The program wrdepend.c has been added. This program is used to
 4511   write C header dependencies to the file depend. It calls the C
 4512   compiler with -I options. The -I options come from the macro
 4513   INCLUDE_OPTIONS, which is defined in the file version.h.
 4514 - Database driver files have been added to makefiles.
 4515 
 4516 20140907:
 4517 - The function setSearchPath has been added to the library
 4518   process.s7i.
 4519 - The compiler has been improved to write an error message, when the
 4520   sets of a case-statement overlap. Until now this situation was only
 4521   recognized by the C compiler.
 4522 - The interpreter has been improved to raise an exception, when the
 4523   current value of a case-statement is element of two sets.
 4524 - There have been changes in the libraries makedata.s7i and make.s7i.
 4525 - The macro expansion in makedata.s7i has been changed. Now all macro
 4526   expansions (except the expansions of internal macros) are done with
 4527   the function applyMacros.
 4528 - In makedata.s7i the function applyMacros has been improved to
 4529   process the makefile macro functions wildcard, error and warning.
 4530 - The functions evalFunction and getMacro, that where used to do
 4531   macro expansion when the makefile is read, have been removed.
 4532 - The code to read the definition of recursively expanded variables
 4533   has been changed to do no macro expansion. This macros are expanded
 4534   when they are used.
 4535 - The library make.s7i has been improved to read the parameters
 4536   for the commands rm, cp, and mv as Unix shell parameters (with the
 4537   function getUnixCommandParameter).
 4538 - The library make.s7i has been improved to read the parameters
 4539   for the commands del, copy, xcopy and move as Dos/Windows batch
 4540   parameters (with the function getDosCommandParameter).
 4541 - Interpreter and compiler have been improved to support the action
 4542   CMD_SET_SEARCH_PATH.
 4543 - The batch file bin/call_gcc.bat has been changed to work correctly,
 4544   when it is called from any directory.
 4545 - Writing error messages in error.c has been changed to use prot_...
 4546   functions instead of printf.
 4547 
 4548 20140817:
 4549 - The chapter about files in the manual has been improved.
 4550 - Variants of the for-each-loop with an until condition have been
 4551   added to array.s7i.
 4552 - The parse operator for characters has been improved to accept only
 4553   strings with a length of 1.
 4554 - The function trimValue has been introduced. This function trims a
 4555   string such that it can be converted to a specified type.
 4556 - The exception handlers for RANGE_ERROR have been removed from the
 4557   functions read and readln in enable_input.s7i. The functions read
 4558   and readln now raise range RANGE_ERROR when the conversion to the
 4559   target type fails.
 4560 - Occurrences of io_ok, io_error, io_empty and io_filled have been
 4561   removed from the libraries. This undocumented feature was not used
 4562   for years. The function succeeds and the functions read and readln
 4563   with default value are better suited for error checking, when data
 4564   is read.
 4565 - The exception handlers in interpreter and compiler have been
 4566   improved to allow an otherwise part.
 4567 - The function succeeds has been introduced. This function executes
 4568   a statement and returns TRUE when no exception occurs.
 4569 - The example programs nicoma.sd7 and savehd7.sd7 have been improved
 4570   to use the new function succeeds.
 4571 - The parse operator for float has been changed to raise RANGE_ERROR
 4572   when leading whitespace is found.
 4573 - The library make.s7i has been improved to accept the commands
 4574   erase, xcopy, mv, move and rem.
 4575 - The library makedata.s7i has been improved to accept the macro
 4576   functions subst and patsubst.
 4577 - The reading of rules in makedata.s7i has been improved to read
 4578   commands without macro substitution. The macros in commands are
 4579   substituted just before the commands are executed.
 4580 - The make functions in make.s7i have been changed to raise
 4581   FILE_ERROR when a command fails.
 4582 - The function applyMacros in makedata.s7i has been improved to
 4583   accept macro functions and the shorthands of patsubst.
 4584 - The function replaceSuffixes in makedata.s7i has been improved to
 4585   accept pattern substitution with the % character.
 4586 - In the library make.s7i the logging has been removed from the
 4587   functions doRm, doCp, doPwd, doEcho, doCd, doMake, doOneCommand,
 4588   doCommands and processCommand.
 4589 - The program chkflt.sd7 has been adjusted to work with the strict
 4590   parse operator for float.
 4591 - Interpreter and compiler have been improved to support the actions
 4592   PRC_BLOCK_CATCH_ALL and PRC_BLOCK_OTHERWISE.
 4593 - The program sudo.c has been improved to work without upper limit
 4594   for the parameter length.
 4595 - The functions checkIfOutsideRange and negate have been added to
 4596   int_act.s7i.
 4597 
 4598 20140803:
 4599 - The handling of ctrl-c has been changed to work better under
 4600   Windows.
 4601 - The runtime of the function intPowOvfChk in int_rtl.c has been
 4602   reduced to 57% (measured with gcc and valgrind).
 4603 - The generation of code in the compiler for the action INT_POW has
 4604   been improved. When the base is a negative power of two the
 4605   exponentiation is done with a shift instead of a call of intPow
 4606   (respectively intPowOvfChk).
 4607 - The overflow checking for INT_POW in the compiler has been
 4608   improved. When base or exponent is known the overflow checking is
 4609   done with inline code and intPow is called instead of intPowOvfChk.
 4610 - Documentation comments have been added to bitsetof.s7i
 4611 - Tests for ** have been added to chkint.sd7 and chkovf.st7
 4612 - The tests for * and *:= in chkovf.st7 have been reorganized.
 4613 - An interrupt_flag has been introduced in the interpreter. This flag
 4614   is used for exception handling and for signal handling. Exceptions
 4615   set interrupt_flag and fail_flag (with the macro set_fail_flag).
 4616   Signals set only the interrupt_flag (file sigutl.c). The
 4617   interrupt_flag is handled in exec_action (file exec.c).
 4618 - The functions signal_name, handle_signals, handle_segv_signal,
 4619   handle_term_signal and activate_signal_handlers in sigutl.c have
 4620   been improved.
 4621 - The functions continue_question, write_curr_position and
 4622   show_signal in runerr.c have been improved.
 4623 - The functions handle_int_signal, readChar, doGetcFromTerminal,
 4624   doGetsFromTerminal, doLineRead, doLineReadFromTerminal, doWordRead,
 4625   doWordReadFromTerminal, filGetcChkCtrlC, filGetsChkCtrlC,
 4626   filHasNextChkCtrlC, filLineReadChkCtrlC and filWordReadChkCtrlC
 4627   have been added to fil_rtl.c. This functions support reading from
 4628   a terminal with a check for ctrl-c. This functions are used by the
 4629   interpreter (file intlib.c).
 4630 - Tracing has been added to functions in int_rtl.c.
 4631 - Configuration defines for CTRL_C_SENDS_EOF,
 4632   SIGNAL_HANDLER_CAN_DO_IO and INT64TYPE_NO_SUFFIX_BUT_CAST have been
 4633   added to makefiles.
 4634 
 4635 20140720:
 4636 - The compiler has been improved to generate overflow checking code
 4637   by default. The generation of overflow checking code can be
 4638   switched off with the option -so.
 4639 - The exception OVERFLOW_ERROR has been introduced. It is raised by
 4640   the interpreter and by compiled programs when an integer overflow
 4641   occurs.
 4642 - A paragraph about integer overflow and the installation of Seed7
 4643   has been added to the FAQ.
 4644 - The chapter about exceptions in the manual has been improved.
 4645 - The program chkovf.sd7, which checks the recogition of integer
 4646   overflows, has been added.
 4647 - Checks for +, -, *, rem, mod, <<, +:=, -:=, *:=, succ, pred, incr
 4648   and decr have been added to chkint.sd7.
 4649 - Checks for the lpad operator have been added to chkstr.sd7.
 4650 - The compiler option -r has been replaced by the option -sr.
 4651 - The program calc7.sd7 has been improved to report MEMORY_ERROR and
 4652   OVERFLOW_ERROR.
 4653 - The library make.s7i has been improved such that make7.sd7 accepts
 4654   echo (and echo.) statements without parameters.
 4655 - The function eof has been defined for the type tlsFile in tls.s7i.
 4656 - The function gets in tls.s7i has been improved.
 4657 - The function getHttp in gethttp.s7i has been improved to avoid an
 4658   endless loop when eof has been reached.
 4659 - The function memcpy_from_strelem has been added to striutl.c. This
 4660   function uses loop unrolling inspired by Duff's device and a trick
 4661   with a binary or (|=) to check for allowed values.
 4662 - The functions filWrite, socWrite and bstParse have been changed
 4663   to use memcpy_from_strelem. The reduction in runtime has been
 4664   measured with gcc and valgrind. The runtime of filWrite, socWrite
 4665   and bstParse has been reduced to 53%, 61% and 56% respectively.
 4666 - Documentation comments have been added to integer.s7i, bin32.s7i,
 4667   intlib.c and striutl.c.
 4668 - The compiler has been improved to generate overflow checking code
 4669   for *, <<, >>, *:=, <<:= and >>:= .
 4670 - The generation of overflow checking code for the operators rem and
 4671   mod has been improved.
 4672 - Checks for overflow, division by zero, numeric error and index out
 4673   of bounds in compiled programs now use the macros ovfChk, divChk,
 4674   numChk and idxChk. This macros inform the C compiler about the
 4675   unlikeliness of an exception.
 4676 - The function fltIPow has been improved to avoid a signed integer
 4677   overflow, when the exponent is the most negative integer.
 4678 - The primitive actions INT_ULSHIFT and INT_ULSHIFT_ASSIGN have been
 4679   added and supported in interpreter and compiler.
 4680 - A version of the function uint_rand, which uses 128-bit integers,
 4681   has been added to int_rtl.c.
 4682 - The function raise_error3 in runerr.c has been renamed to
 4683   interprRaiseError.
 4684 - The configuration values INT128TYPE, UINT128TYPE and MACRO_DEFS
 4685   have been added to cc_conf.s7i. The configuration value
 4686   SIGILL_ON_OVERFLOW has been replaced with OVERFLOW_SIGNAL.
 4687 - The functions constValueIsEqual, checkRangeFromZero,
 4688   process_const_int_lshift, process_const_int_lshift_assign,
 4689   process_const_int_rshift_assign, process_const_int_mult,
 4690   process_const_int_mult_assign, process_const_int_ulshift_assign,
 4691   process_const_int_ulshift and process_const_int_urshift_assign
 4692   have been added to int_act.s7i.
 4693 - The function intExpr in chkbig.sd7, chkexc.sd7, chkint.sd7 and
 4694   chkstr.sd7 has been changed to make sure that the C compiler
 4695   cannot evaluate it at compile time.
 4696 - The runtime of the functions str_lpad, strLpad and strLpadTemp has
 4697   been improved.
 4698 
 4699 20140706:
 4700 - The interpreter has been improved to recognize integer overflow.
 4701   Now the exception NUMERIC_ERROR is raised, when a program triggers
 4702   an integer overflow. The checks for overflow are done in software,
 4703   but the overhead is small. With overflow checks the interpreter
 4704   needs 0.5% (zero point five percent) more run-time to execute the
 4705   program chkint.sd7 (verified with gcc and valgrind).
 4706 - A chapter about the Seed7 Structured Syntax Description (S7SSD)
 4707   has been added to the manual.
 4708 - The for-until-loops in bitset.s7i and bitsetof.s7i have been
 4709   improved such that the for-variable has the correct value, when it
 4710   is used in the until-condition.
 4711 - The function replaceN has been added to string.s7i. This function
 4712   does replacements until no occurrence of the target string is left.
 4713   This function is used by toStdPath to replace multiple occurrences
 4714   of a character by one occurrence (replace("/a///b////c", "//", "/")
 4715   returns "/a/b/c").
 4716 - The program calc.sd7 has been renamed to calc7.sd7.
 4717 - The program calc7.sd7 has been changed to accept the commands
 4718   'quit' and 'exit'. This commands can be used to exit the program.
 4719   The possibility to leave the program with an empty input line has
 4720   been removed.
 4721 - The program calc7.sd7 has been improved to write the name of the
 4722   exception, when it has been raised.
 4723 - The compiler has been improved to allow the generation of overflow
 4724   checking code. Overflow checking code can be generated for the
 4725   operators +, -, **, +:= and -:= and the functions abs, succ, pred,
 4726   incr and decr. Until the rest of the functions is implemented and
 4727   enough tests have been added to chkint.sd7 the functionality is
 4728   switched off.
 4729 - The template FOR_UNTIL_DECLS has been added to forloop.s7i. This
 4730   template defines for-loops with a condition.
 4731 - The function abs has been moved from the library math.s7i to the
 4732   library float.s7i.
 4733 - Checks for addition, subtraction, multiplication, power and abs
 4734   have been added to chkint.sd7.
 4735 - In the compiler the statements to write the C prototypes have been
 4736   moved from s7c.sd7 to functions in the files comp/xxx_act.s7i
 4737   (xxx is the abbreviation for the corresponding primitive type).
 4738 - The functions getReference and getParameterAsReference have been
 4739   added to comp/expr_util.s7i.
 4740 - The function isit_bool from objutl.c has been replaced by the macro
 4741   isit_bool (defined in objutl.h). This improves the speed of the
 4742   interpreter.
 4743 - The function set_card has been improved to call setCard, which
 4744   computes the cardinality of a set much quicker.
 4745 
 4746 20140615:
 4747 - The makefile mk_freebsd.mk has been changed to work with the new
 4748   version of chkccomp.c. Thanks go to Pietro Cerutti for pointing out
 4749   the problem.
 4750 - The self extracting Seed7 package for Windows has been improved to
 4751   use gcc version 4.8.1 instead of 4.5.0.
 4752 - The new function removeTree, which removes a directory tree, has
 4753   been introduced in osfiles.s7i. The function removeAnyFile, which
 4754   has been used for the same purpose, is deprecated. Deprecated
 4755   functions will be removed in a future version.
 4756 - Checks for hash tables with character keys have been added to
 4757   chkhsh.sd7.
 4758 - The test program "chkcmd.sd7" has been added. This program checks
 4759   functions that copy, move and remove files. Note that Windows has
 4760   race conditions when files are copied, moved and removed quickly in
 4761   succession. This bug of Windows cannot be fixed in a runtime
 4762   library.
 4763 - The function temp_name_in_dir has been added to striutl.c.
 4764 - The typedef of socketType in common.h has been changed such that
 4765   socketType is always int.
 4766 - Functions in soc_rtl.c, pol_sel.c and pol_unx.c have been changed
 4767   to use the type os_socketType.
 4768 - Tracing statements in hsh_rtl.c, cmd_rtl.c, drw_win.c and drw_x11.c
 4769   have been changed to use the FMT_ strings from common.h. This way
 4770   the tracing is more portable.
 4771 - Under Windows the functions cmdRemoveFile and cmdRemoveTree now
 4772   rename a file before it is removed. When the renaming fails the
 4773   directory is left intact. This avoids half removed directory trees
 4774   under Windows, when a process has the current working directory
 4775   somewhere in the directory that is to be removed. The renaming also
 4776   lowers the probability of race conditions under Windows, but they
 4777   still can happen.
 4778 - The function checkMoveDirectory has been added to chkccomp.c.
 4779 - The target make7 has been added to the makefiles. With 'make make7'
 4780   an executable of the make7 program is generated and placed in
 4781   seed7/bin.
 4782 
 4783 20140601:
 4784 - The compiler has been refactored. Code has been moved from s7c.sd7
 4785   to several compiler libraries. The compiler libraries are licensed
 4786   with the GPL and can be found in seed7/lib/comp. The refactored
 4787   compiler is the first compiler of the 3.0 series.
 4788 - The chapter in the manual about the foreign function interface has
 4789   been improved.
 4790 - Checks for parse and str have been added to chkflt.sd7 and
 4791   chkint.sd7.
 4792 - In chkccomp.c code has been moved from main() to the new functions
 4793   numericSizes and numericProperties.
 4794 - Usages of the macro logError have been added to cmd_rtl.c and
 4795   cmd_unx.c.
 4796 - The stack size defined in mk_mingc.mak, mk_mingw.mak, mk_msys.mak
 4797   and mk_nmake.mak has been changed from 4194304 to 8388608.
 4798 - The function cstri_buf_to_stri has been added to striutl.c.
 4799 - The generation of float literals in the compiler has been improved
 4800   to avoid that precision is lost.
 4801 - Interpreter and compiler have been improved to support the actions
 4802   BLN_EQ and BLN_NE.
 4803 
 4804 20140518:
 4805 - Errors in con_wat.c and drw_dos.c have been fixed (thanks to
 4806   "Rugxulo" for the help to fix them).
 4807 - The function str in duration.s7i has been improved to work for
 4808   negative durations.
 4809 - The library tar.s7i has been improved to work with the old file
 4810   format that does not use the magic value "ustar".
 4811 - The function bigToInt16 has been added to big_rtl.c and big_gmp.c.
 4812 - The macros with format strings in common.h have been renamed.
 4813   Now the macros have shorter names (starting with FMT_ and F_).
 4814   The macros define formats for various integer sizes. This formats
 4815   are independent from the actual C compiler and C runtime library.
 4816 - The function bigLog10 in big_rtl.c has been improved to work
 4817   correctly when BIGDIGIT_SIZE is small.
 4818 - The program chkccomp.c has been improved to define
 4819   LOCALTIME_WORKS_SIGNED, when localtime can process negative times.
 4820 - The program chkccomp.c has been improved to write the define
 4821   directives to the file specified with the first parameter.
 4822 - The function intParse in int_rtl.c has been improved to accept the
 4823   most negative number.
 4824 - The function timSetLocalTZ in tim_rtl.c has been changed to avoid
 4825   raising an exception when LOCALTIME_WORKS_SIGNED is not defined and
 4826   the time is before 1970-01-01. In this case the daylight saving
 4827   time flag is set to FALSE.
 4828 
 4829 20140504:
 4830 - The answer concerning Unicode support in the FAQ has been improved.
 4831 - The chapters in the manual that describe the types integer,
 4832   bigInteger, rational, bigRational and float have been improved.
 4833 - The function log10 has been added to the libraries integer.s7i and
 4834   bigint.s7i. This function computes the truncated base 10 logarithm.
 4835 - The operator sci has been added to the libraries integer.s7i,
 4836   bigInteger.s7i, bigrat.s7i and rational.s7i. This operator converts
 4837   a number to a string in scientific notation. Halfway cases are
 4838   rounded away from zero.
 4839 - The function round10 has been added to the libraries rational.s7i
 4840   and bigrat.s7i. It rounds halfway cases away from zero.
 4841 - The function str has been improved in the libraries rational.s7i
 4842   and bigrat.s7i. Now the function converts to a string with a
 4843   decimal representation (e.g.: "1.25"). When repeating decimals are
 4844   recognizend they are enclosed in parentheses.
 4845 - The operator digits has been improved in the libraries rational.s7i
 4846   and bigrat.s7i. Now the operator rounds halfway cases away from
 4847   zero.
 4848 - Documentation comments have been improved in bigint.s7i, float.s7i,
 4849   rational.s7i, bigrat.s7i, char.s7i, big_gmp.c and fltlib.c.
 4850 - Definitions of the constants integer.first and integer.last have
 4851   been added to integer.s7i.
 4852 - In bigrat.s7i and rational.s7i the function reduce has been
 4853   improved to accept Infinity and NaN.
 4854 - The function strDateTime has been added to time.s7i.
 4855 - A definition of INTTYPE_DECIMAL_SIZE has been added to s7c.sd7 and
 4856   common.h.
 4857 - The function bigGcd in big_rtl.c has been improved to make sure
 4858   that the greatest common divisor is positive or zero.
 4859 - Checks for log10, **, +:= and -:= have been added to chkbig.sd7.
 4860 - The checks for log2 have been improved and checks for log10 have
 4861   been added to chkint.sd7.
 4862 - Checks for the function str have been added to chkflt.sd7.
 4863 - The compiler has been improved to use the functions
 4864   bigIPowSignedDigit and bigGrowSignedDigit to optimize the operators
 4865   **, +:= and -:= for bigInteger operands.
 4866 - The compiler has been improved to support the actions INT_LOG10 and
 4867   BIG_LOG10.
 4868 - The function isPureFunction in the compiler has been improved.
 4869 - The functions bigGrowSignedDigit and bigLog10 have been added to
 4870   big_rtl.c and big_gmp.c.
 4871 - The program chkccomp.c has been improved to write definitions of
 4872   the macros isinf, DOUBLE_DECIMAL_EXPONENT_DIGITS, FLOAT_STR_FORMAT,
 4873   FLOAT_STR_LARGE_NUMBER, DOUBLE_STR_FORMAT, DOUBLE_STR_LARGE_NUMBER,
 4874   FLOAT_MANTISSA_FACTOR, FLOAT_MANTISSA_SHIFT, DOUBLE_MANTISSA_FACTOR
 4875   and DOUBLE_MANTISSA_SHIFT.
 4876 - The functions fltDgts and fltSci in flt_rtl.c have been changed to
 4877   raise RANGE_ERROR when the precision is negative.
 4878 - The function fltStri in flt_rtl.c has been improved to write a
 4879   reasonable number of fractional digits.
 4880 - The functions getMantissaAndExponent, setMantissaAndExponent and
 4881   doubleToCharBuffer have been added to flt_rtl.c.
 4882 - The function intLog10 has been added to int_rtl.c.
 4883 - The function stri_to_wstri has been renamed to stri_to_utf16.
 4884 - The functions stri_to_wstri_buf and wstri_buf_to_stri have been
 4885   added to striutl.c.
 4886 
 4887 20140420:
 4888 - The chapter in the manual about the foreign function interface has
 4889   been improved.
 4890 - A paragraph about regular expressions and lexical scanner functions
 4891   has been added to the FAQ.
 4892 - The handling of the actions CHR_CLIT and INT_STRI in the compiler
 4893   has been improved. The string buffers for chrCLitToBuffer and
 4894   intStrToBuffer use the correct alignment now.
 4895 - In big_rtl.c the functions bigParseBasedPow2 and bigParseBased2To36
 4896   have been added and bigParseBased has been changed to call them.
 4897   This improves the conversion of a string to a bigInteger, when the
 4898   base is a power of two. Valgrind measurements of the function
 4899   bigParseBased in chkbig.sd7 show a speed improvement with a factor
 4900   of 239.
 4901 - The macros memcpy_to_strelem and memset_to_strelem (defined in
 4902   striutl.h) have been turned into functions (defined in striutl.c).
 4903 - The unrolling in memcpy_to_strelem and memset_to_strelem has been
 4904   changed from 8 times to 32 times. This improves the performance
 4905   for big data amounts by 16% (Measured with valgrind and gcc).
 4906 - Usages of the macros memcpy_to_strelem and memset_to_strelem in
 4907   bst_rtl.c, fil_rtl.c, soc_rtl.c and str_rtl.c have been turned into
 4908   usages of the corresponding functions.
 4909 - Calls of cstri_expand, ustri_expand, cstri_expand2 and
 4910   ustri_expand2 in analyze.c, chr_rtl.c, flt_rtl.c, infile.c,
 4911   str_rtl.c and striutl.c have been turned into calls of
 4912   memcpy_to_strelem.
 4913 - The functions (macros) cstri_expand, ustri_expand, cstri_expand2
 4914   and ustri_expand2 have been removed from striutl.c and striutl.h.
 4915 - The functions doCompileAndLink, compileAndLinkWithOptionsOk,
 4916   compileAndLinkOk, appendToFile and detemineDatabaseDefines have
 4917   been added to chkccomp.c. The function compilationOkay has been
 4918   replaced by compileAndLinkOk.
 4919 
 4920 20140406:
 4921 - The chapters in the manual about primitive actions and the foreign
 4922   function interface have been improved.
 4923 - The names of the C types used in interpreter and runtime library
 4924   have been refactored to use camel case.
 4925 - The elements in the unions valueUnion (in data.h) and rtlValueUnion
 4926   (in data_rtl.h and s7c.sd7) have been refactored to use names with
 4927   camel case.
 4928 - The library bigint.s7i has been changed to define the operators
 4929   radix and RADIX with the actions BIG_radix and BIG_RADIX. This
 4930   results in a significant performance improvement when large numbers
 4931   are converted.
 4932 - Interpreter and compiler have been improved to support the actions
 4933   BIG_radix and BIG_RADIX.
 4934 - Test cases for the operators radix and RADIX have been added to
 4935   chkbig.sd7.
 4936 - The compiler has been improved to do an optimization for the action
 4937   INT_MDIV when the divisor is known at compile time. When the
 4938   dividend is known to be positive or zero it is casted to an
 4939   unsigned integer and the quotient is casted back to a signed
 4940   integer. Dividing an unsigned integer by a constant is known to be
 4941   faster than dividing a signed integer.
 4942 - The functions bigRadix, bigRadixPow2, bigRadix2To36 and
 4943   uBigDivideByDigit have been added to big_rtl.c
 4944 - The function bigRadix has been added to big_gmp.c.
 4945 - The functions stri_to_cstri8_buf and cstri8_buf_to_stri have been
 4946   added to striutl.c.
 4947 - In traceutl.c the function mapTraceFlags has been improved to work
 4948   correctly when the parameter trace_level defines several options.
 4949 - The function printTraceOptions has been added to traceutl.c.
 4950 - In arr_rtl.c the definition of getArgv has been improved to use
 4951   less #ifdef directives in the function body.
 4952 
 4953 20140316:
 4954 - The documentation file doc/install.txt has been improved to
 4955   describe the command 'make install'.
 4956 - The chapter about the foreign function interface in the manual has
 4957   been improved.
 4958 - In striutl.h the macros os_stri_alloc and os_stri_free have been
 4959   improved to use a stack like allocation. Allocations done with
 4960   os_stri_alloc must be freed with os_stri_free in the reverse
 4961   order of their creation. The new macros reduce the runtime of
 4962   stri_to_os_stri and cp_to_os_path to 66% of the old time. This
 4963   reduces the time used by operating system calls. E.g.: The CPU time
 4964   used by the program sydir7 is reduced to 83% of the old time.
 4965 - The targets 'install' and 'uninstall' have been added to makefile,
 4966   mk_linux.mak, mk_osx.mak, mk_clang.mak, mk_cygw.mak, mk_mingw.mak,
 4967   mk_msys.mak, mk_nmake.mak, mk_msvc.mak, mk_bcc32.mak and
 4968   mk_bccv5.mak.
 4969 - The program setwpath.c has been added. This program sets the search
 4970   path (PATH variable) under Windows.
 4971 - The obsolete target 'hi' has been removed from the makefiles.
 4972 - The functions initEmulatedCwd, cmdSetenv (both in cmd_rtl.c),
 4973   setEmulatedCwd (in striutl.c) and freeArgVector (in cmd_unx.c) have
 4974   been adjusted to work with the stack like allocation of
 4975   os_stri_alloc and os_stri_free.
 4976 - The functions heapAllocOsStri and heapFreeOsStri have been added to
 4977   striutl.c.
 4978 - Usages of MAX_SYMLINK_PATH_LENGTH in cmd_rtl.c have been replaced
 4979   with MAX_OS_STRI_LEN.
 4980 
 4981 20140302:
 4982 - The function setSockOpt and the constant SO_REUSEADDR have been
 4983   added to sockbase.s7i. Many thanks go to Domingo Alvarez Duarte
 4984   for pointing out that this functionality was missing.
 4985 - The function openInetListener in listener.s7i has been improved
 4986   to succeed when the socket is reused (it calls setSockOpt with
 4987   SO_REUSEADDR now).
 4988 - The functions opendir and wopendir in dir_win.c and the function
 4989   opendir in dir_dos.c have been improved to check for the maximum
 4990   path length supported by Windows and DOS.
 4991 - The functions act_string and act_okay have been removed from
 4992   actutl.c.
 4993 - The function exec_action in exec.c has been improved to use
 4994   get_primact instead of act_okay. This results in a significant
 4995   performance improvement in the case when WITH_ACTION_CHECK is
 4996   defined and the option -tc is used.
 4997 - The function str1Split has been removed from strlib.c.
 4998 - Documentation comments have been added to arr_rtl.c, arrutl.c,
 4999   cmd_unx.c, cmd_win.c, dir_dos.c, dir_rtl.c, dir_win.c, kbd_inf.c,
 5000   kbd_poll.c, scanner.c and ut8_rtl.c.
 5001 - Interpreter and compiler have been improved to support the action
 5002   SOC_SET_OPT_BOOL.
 5003 
 5004 20140216:
 5005 - A new numeric escape sequence for string literals has been
 5006   introduced. A backslash followed by an integer literal and a
 5007   semicolon is interpreted as character with the specified ordinal
 5008   number. E.g.: "abc\128;def". With the old numeric escape sequence
 5009   this would be "abc\128\def". Terminating the escape sequence
 5010   with ; instead of \ improves the readability, especially when
 5011   escape sequences follow each other. Instead of "\8\\12\\7\8\9\\\"
 5012   it is now possible to write "\8;\12;\7;8\9;\\" The old escape
 5013   sequence is still supported, but it is deprecated and should not
 5014   be used. Future versions will warn about the deprecated escape
 5015   sequence.
 5016 - The conversion functions 'bytes' and 'bytes2Int' in bytedata.s7c
 5017   have been improved to support all combinations of signedness and
 5018   endianness.
 5019 - The functions bStriBe and bStriLe have been removed from
 5020   bstring.s7i. The function 'bytes' in bytedata.s7c can be used as
 5021   replacement.
 5022 - Checks for lowestSetBit and UNSIGNED conversions with the
 5023   functions 'bytes' and 'bytes2Int' have been added to chkint.sd7.
 5024 - Checks for UNSIGNED conversions with the functions 'bytes' and
 5025   'bytes2BigInt' have been added to chkbig.sd7.
 5026 - Checks for the function rand have been added to chkset.sd7.
 5027 - The parser has been improved to write error messages when the
 5028   source file contains unexpected UTF-8 continuation bytes, solitary
 5029   UTF-8 start bytes, extended control codes from the C1 set or an
 5030   UTF-16 byte order mark.
 5031 - In tar.s7i the functions getoct, putspc and putoct have been
 5032   improved. The computation of the size of padding data has also
 5033   been improved.
 5034 - The compiler has been improved to optimize string initializations
 5035   with the function strZero. StrZero creates a string of arbitrary
 5036   length with '\0;' (zero) bytes.
 5037 - The compiler has been improved to optimize integer exponentiation
 5038   (action INT_POW). Now the multiplication pattern is determined at
 5039   compile time and the number of multiplications is reduced.
 5040 - The performance of the function setCard in set_rtl.c has been
 5041   improved by a factor of 2.5.
 5042 - The performance of the function setRand in set_rtl.c has been
 5043   improved by a factor of 2.3.
 5044 - Loop unrolling inspired by Duff's device has been introduced in
 5045   striutl.h. The unrolling is used for tight loops which copy byte
 5046   data to Seed7 strings in fil_rtl.c, soc_rtl.c and bst_rtl.c. The
 5047   performance improvement has been verified with gcc and valgrind.
 5048 - The example program err.sd7, which checks compile time error
 5049   messages, has been improved.
 5050 - The old way to store the data of constant bigIntegers has been
 5051   removed from compiler and runtime library.
 5052 - The buffers used in intRadix and intRadixPow2 (file int_rtl.c) have
 5053   been enlarged to fit for the most negative number with a base of 2.
 5054 - In itflib.c the functions itf_cpy and itf_cpy2 have been fixed to
 5055   work correctly, when the destination is converted from a struct to
 5056   an interface.
 5057 - In traceutl.c the tracing of characters has been improved in the
 5058   functions prot_char, prot_os_stri, prot_stri_unquoted and
 5059   prot_bstri.
 5060 - In ut8_rtl.c the function ut8Getc has been improved to use smarter
 5061   checks for ranges of characters.
 5062 - The deprecated variant of the function str, which has a second
 5063   parameter to specify a numeric base, has been removed. The
 5064   operators radix and RADIX can be used instead.
 5065 - Interpreter and compiler have been improved to support the new
 5066   actions INT_BYTES_BE, INT_BYTES_LE, INT_BYTES_BE_2_INT and
 5067   INT_BYTES_LE_2_INT. The functions intBytesBe, int_bytesBe,
 5068   intBytesLe, int_bytesLe, intBytesBe2Int, int_bytesBe2Int,
 5069   intBytesLe2Int and int_bytesLe2Int have been added.
 5070 - Support for the actions BIG_CLIT, INT_TO_BSTRI_BE, INT_TO_BSTRI_LE,
 5071   INT_BYTES_BE_2_UINT and INT_BYTES_LE_2_UINT has been removed from
 5072   interpreter and compiler. The functions bigImport, bigCLit,
 5073   big_clit, intToBStriBe, int_toBStriBe, intToBStriLe, int_toBStriLe,
 5074   intBytesBe2UInt, int_bytes_be_2_uint, intBytesLe2UInt and
 5075   int_bytes_le_2_uint have been removed.
 5076 
 5077 20140202:
 5078 - The manual chapter describing the foreign function interface has
 5079   been improved.
 5080 - The handling of Unicode in the console has been improved. Cursor
 5081   positioning and writing Unicode strings to the desired position
 5082   works now also under Linux.
 5083 - A strict checking of all strings, that are passed to C functions,
 5084   has been introduced. Zero bytes and non Unicode characters in the
 5085   original string raise the exception RANGE_ERROR now.
 5086 - The performance of several loops in the runtime library has been
 5087   improved. Now the loops use indices instead of pointer increments
 5088   and they work downward towards an index of zero. This allows C
 5089   compilers to do more optimizations (verified with gcc and
 5090   valgrind).
 5091 - The enumeration types signedness and endianness have been added to
 5092   bytedata.s7c.
 5093 - The conversion functions bytes, bytes2Int and bytes2BigInt have
 5094   been added to bytedata.s7c. The new function allow conversions
 5095   to and from signed and unsigned byte strings with big- and
 5096   little-endian byte order. This functions replace the less flexible
 5097   functions bytesLe2Int, bytesBe2Int, bytesLe and bytesBe.
 5098 - The functions bStriBe, bStriLe, bStriBe2BigInt and bStriLe2BigInt
 5099   have been moved from bytedata.s7c to bstring.s7i.
 5100 - The performance of the functions int16AsTwoBytesLe,
 5101   int32AsFourBytesLe, int64AsEightBytesLe int16AsTwoBytesBe,
 5102   int32AsFourBytesBe and int64AsEightBytesBe has been improved.
 5103 - Documentation comments have been added or improved in cc_conf.s7i,
 5104   bytedata.s7i, environment.s7i, sockbase.s7i, actutl.c, big_rtl.c,
 5105   big_gmp.c, biglib.c cmd_rtl.c, con_inf.c, con_win.c, con_wat.c,
 5106   int_rtl.c, intlib.c, soc_rtl.c, striutl.c and syvarutl.c.
 5107 - The program chk_all.sd7 has been improved to check several
 5108   compiler options and to allow that the output of interpreted and
 5109   compiled compiler differs. The difference of the generated C code
 5110   is okay, when the execution of the compiled programs results in
 5111   the same output.
 5112 - The compiler (s7c) has been improved to do more optimizations for
 5113   the action BIG_REM (operator rem).
 5114 - The compiler has been improved to count inserted and suppressed
 5115   range checks.
 5116 - Interpreter, compiler and runtime library have been improved to
 5117   allow bstrings with slices. This is used by the compiler to
 5118   reduce the memory used for constant bstrings.
 5119 - The compiler has been improved to store the data of constant
 5120   bigIntegers in bstrings.
 5121 - Checks for div, rem, mdiv and mod have been added to chkbig.sd7.
 5122 - Checks for float division by zero have been added to chkexc.sd7.
 5123 - Checks for float parse have been added to chkflt.sd7.
 5124 - In con_inf.c, con_win.c and con_wat.c the function conText has
 5125   been replaced by conWrite. ConWrite takes an UTF-32 string and
 5126   writes it to the console. If stdout is redirected an UTF-8 string
 5127   is written to the destination file.
 5128 - The function gen_act_ptr_table has been added to actutl.c. This
 5129   function creates act_ptr_table and removes double entries from it.
 5130 - The functions intBytesBe2UInt and intBytesLe2UInt have been added
 5131   to int_rtl.c.
 5132 - Interpreter and compiler have been improved to support the new
 5133   actions INT_BYTES_BE_2_UINT and INT_BYTES_LE_2_UINT.
 5134 - Checks for the function sigaction() and for integer division and
 5135   remainder have been added to chkccomp.c.
 5136 - The configuration values ALLOW_BSTRITYPE_SLICES,
 5137   CHECK_INT_REM_BY_ZERO and CHECK_INT_REM_ZERO_BY_ZERO have been
 5138   added to cc_conf.s7i, chkccomp.c, cmd_rtl.c and s7c.sd7.
 5139 - Several versions of timAwait in tim_unx.c have been improved to
 5140   restart calls of poll(), ppoll() and select().
 5141 - A check for the character '=' in the environment variable name has
 5142   been added to the function cmdSetenv (in cmd_rtl.c).
 5143 - In striutl.c the functions stri_compress, stri_export_utf8 and
 5144   cp_to_cstri8 have been improved and renamed to conv_to_cstri
 5145   conv_to_cstri8 and stri_to_cstri8 respectively. Interpreter and
 5146   runtime library have been improved to use the new function names.
 5147 - The function stri_to_cstri and the macro free_cstri8 have been
 5148   added to striutl.c.
 5149 - The functions conv_to_cstri, conv_to_cstri8, stri_to_cstri8 and
 5150   stri_to_bstri have been improved to use an err_info parameter.
 5151 
 5152 20140119:
 5153 - The library tdes.s7i with TDES (Triple DES respectively 3DES)
 5154   cipher support has been added.
 5155 - The library tls.s7i has been improved to allow encoding with TDES
 5156   (3DES) and to accept the handshake message CertificateRequest.
 5157 - The function drwGetImage has been added to drw_dos.c (thanks to
 5158   "Rugxulo" for pointing out, that it was missing).
 5159 - Checks for mdiv and mod have been added to chkbig.sd7.
 5160 - The compiler (s7c) has been improved to do more optimizations for
 5161   the action BIG_MOD (operator mod). Now the functions bigLowerBits
 5162   and bigLowerBitsTemp are used when the divisor is a power of two.
 5163 - The compiler has been improved to optimize if-statements, when the
 5164   condition is constant.
 5165 - The compiler has been improved to optimize the action BIG_MDIV
 5166   (operator mdiv) correctly, when the divisor is a negated power of
 5167   two (e.g. n div -8). The generated code now corresponds to the
 5168   Seed7 expression -dividend >> log(-divisor).
 5169 - New functions to open files have been introduced in various
 5170   libraries. The new functions are openUtf8, openUtf16, openEcho,
 5171   openLine, openTee, openMore, openUpper, openLower, openReverse,
 5172   openWindow and openField. The new functions have been added as
 5173   replacement for the functions open_utf8, open_utf16, open_echo,
 5174   open_line, open_tee, open_more, open_upper, open_lower,
 5175   open_reverse, open_window and open_field. The old functions are
 5176   still supported, but they are deprecated and should not be used.
 5177   Deprecated functions will be removed in a future version.
 5178 - The example programs have been changed to use the new functions
 5179   to open files.
 5180 - Documentation comments have been added or improved in cipher.s7i,
 5181   clib_file.s7i, external_file.s7i, shell.s7i, utf8.s7i, utf16.s7i,
 5182   unicode.s7i, bytedata.s7i, big_gmp.c, biglib.c, big_rtl.c,
 5183   cmdlib.c, cmd_rtl.c, fillib.c, fil_rtl.c, intlib.c, int_rtl.c,
 5184   strlib.c, str_rtl.c and entutl.c.
 5185 - The functions bigLowerBits and bigLowerBitsTemp have been added
 5186   to big_rtl.c and big_gmp.c.
 5187 - The free list management in big_rtl.c and big_gmp.c has been
 5188   improved to allow the configuration of a maximum free list length.
 5189 - The function bigMultAssign1 has been added to big_rtl.c. This
 5190   function is used by bigMultAssign when the factor is just one
 5191   bigdigit.
 5192 - The function bigLog2BaseLShift has been renamed to
 5193   bigLog2BaseIPow in big_rtl.c, big_gmp.c and s7c.sd7.
 5194 - The function getValue for boolean values has been added to
 5195   progs.s7i. Interpreter, compiler and runtime library have been
 5196   improved to support it.
 5197 - the management of types in the runtime library has been improved.
 5198   Now they are attached to the corresponding program. This way they
 5199   can be freed by prgDestr().
 5200 
 5201 20140105:
 5202 - The library des.s7i with DES (Data Encryption Standard) cipher
 5203   support has been added.
 5204 - The library tls.s7i has been improved to support block ciphers
 5205   and encoding with DES.
 5206 - The functions blockSize and decode have been added to cipher.s7i
 5207   and arc4.s7i.
 5208 - The the functions str, rotLeft and rotRight and the operators
 5209   radix, RADIX, ~ and ><:= have been added to bin32.s7i.
 5210 - Support to write bin32 values has been added to bin32.s7i.
 5211 - The new library unicode.s7i, with functions to convert between
 5212   Unicode encodings, has been added.
 5213 - The functions utf16beToStri, utf16leToStri, utf7ToStri and
 5214   replaceUtf16SurrogatePairs have been improved and moved from
 5215   charsets.s7i to unicode.s7i. The functions striToUtf8 and
 5216   utf8ToStri have been moved from string.s7i to unicode.s7i. The
 5217   functions striToUtf16be and striToUtf16le have been added to
 5218   unicode.s7i.
 5219 - The actions FLT_MINUS, INT_MINUS and BIG_MINUS have been renamed
 5220   to FLT_NEGATE, INT_NEGATE and BIG_NEGATE respectively.
 5221 - The library gethttps.s7i has been improved to accept links to
 5222   HTTP.
 5223 - The operator symbols ~ and ><:= have been added to syntax.s7i.
 5224 - Checks for -, mdiv, << and >> have been added to chkbig.sd7.
 5225 - The compiler (s7c) has been improved to do more optimizations for
 5226   the actions BIG_DIV, BIG_LSHIFT, BIG_RSHIFT, BIG_MDIV, BIG_MULT,
 5227   BIG_NEGATE and CHR_CLIT.
 5228 - The function charLiteral has been added to the compiler.
 5229 - The compiler has been improved to avoid the generation of long
 5230   lines for bigInteger literals.
 5231 - The function bigMinus has been renamed bigNegate and the function
 5232   bigNegateTemp has been added to big_gmp.c and big_rtl.c.
 5233 - A check for the keyword 'restrict' has been added to chkccomp.c.
 5234 - The function chrCLitToBuffer has been added to chr_rtl.c.
 5235 - Interpreter, compiler and runtime library have been improved to
 5236   support the action INT_XOR_ASSIGN.
 5237 - The functions utf8_char (literal.c), utf8_to_stri (striutl.c),
 5238   utf8_bytes_missing (striutl.c), strUtf8ToStri (str_rtl.c) and
 5239   ut8Getc (in ut8_rtl.c) have been improved to check for ranges
 5240   of characters instead of bit patterns. This improves the
 5241   performance of UTF-8 conversions by up to 6%.
 5242 - The functions freeArgVector and genArgVector have been added to
 5243   cmd_unx.c.
 5244 
 5245 20131222:
 5246 - Consecutive calls of write in bas7.sd7 have been combined into
 5247   single calls of write respectively writeln.
 5248 - Several links have been added to the FAQ.
 5249 - The types cardSuit and cardRank and the functions cardPixmap and
 5250   cardBackside have been added to the library cards.s7i.
 5251 - The library cards.s7i has been improved to use functions from
 5252   pic_util.s7i.
 5253 - The program carddemo.sd7 has been improved to use the new types
 5254   and functions from cards.s7i.
 5255 
 5256 20131208:
 5257 - Explanations how Seed7 compares to Java and about an elegant way
 5258   to initialize data have been added to the FAQ.
 5259 - The functions pipe2, pty, startProcess and getSearchPath have been
 5260   moved from shell.s7i to the new library process.s7i.
 5261 - The function commandPath has been added to process.s7i.
 5262 - Under Windows removeFile can trigger an error, when an executable
 5263   is removed shortly after it was executed. It was not possible to
 5264   correct this failure of Windows in the Seed7 runtime library. To
 5265   avoid the Windows error the program chk_all.sd7 has been improved
 5266   to catch the raised exception.
 5267 - The pictures execute_pic, seed7_include_pic, seed7_source_pic,
 5268   clear_pic and save_as_pic have been added to pic16.s7i and
 5269   pic32.s7i.
 5270 - In pic16.s7i and pic32.s7i the pictures exit_pic, load_pic and
 5271   save_pic have been improved.
 5272 - The function cmdPty in cmd_unx.c has been improved to free memory
 5273   correctly.
 5274 - The function cmdPipe2 in cmd_win.c has been improved to open stdin
 5275   and stdout in text mode.
 5276 - The function filInputReady in fil_unx.c and fil_win.c has been
 5277   improved to return TRUE after a hang up respectively a broken
 5278   pipe.
 5279 
 5280 20131124:
 5281 - The new library pic_util.s7i has been added. It contains utility
 5282   functions for pictures. A picture is a simple way to describe
 5283   graphic images as readable text. A picture is an array of strings,
 5284   where every character describes the color of a pixel.
 5285 - The programs castle.sd7, mahjong.sd7, pairs.sd7, panic.sd7,
 5286   shisen.sd7, sokoban.sd7 and sudoku7.sd7 have been adjusted to use
 5287   pic_util.s7i.
 5288 - The pictures in pic16.s7i and pic32.s7i have been adjusted to be
 5289   useable by pic_util.s7i.
 5290 - The pictures cancel_pic, folder_pic and reset_pic have been added
 5291   to pic16.s7i and pic32.s7i.
 5292 - A function to convert a pixmap image to BMP format has been added
 5293   to draw.s7i.
 5294 - The function getPixelColor has been added to draw.s7i.
 5295 - In the example programs all usages of the function clear without
 5296   parameters have been replaced with clear(black). The function
 5297   clear without parameters is deprecated.
 5298 - Interpreter and compiler have been improved to support the actions
 5299   DRW_GETIMAGE and DRW_GETIMAGEPIXEL.
 5300 - The performance of the function strCLit in str_rtl.c has been
 5301   improved by a factor of 10.
 5302 - The function init_bstri_constants in s7c.sd7 has been improved to
 5303   use the function c_literal instead of cCharLiteral. This way it
 5304   cannot happen that a sequence like ??( is interpreted as trigraph
 5305   sequence. As a side effect the performance has been improved also.
 5306 - The function init_win_constants in s7c.sd7 has been improved to
 5307   call getImage instead of getPixel. This improves the performance
 5308   dramatically.
 5309 - The functions prc_return and prc_return2 in prclib.c have been
 5310   improved to avoid using block_body when it is NULL.
 5311 - Spelling errors in chlog.txt, faq.htm, faq.txt, install.txt,
 5312   manual.htm, manual.txt, problems.txt read_me.txt, src/read_me.txt,
 5313   flistutl.c, flistutl.h, heaputl.c, heaputl.h and striutl.c have
 5314   been fixed.
 5315 - The function drwGetImage has been added to drw_x11.c and
 5316   drw_win.c.
 5317 - The function drwGetImagePixel has been added to drw_rtl.c.
 5318 - The program chkccomp.c has been improved to write defines for
 5319   NO_EMPTY_STRUCTS, HAS_SYMLINKS and HAS_FIFO_FILES to version.h.
 5320 
 5321 20131110:
 5322 - Compiler and runtime library have been improved to work on Sparc
 5323   64-bit machines under OpenBSD. Thanks go to Brian Callahan, for
 5324   his support and for providing access to his Sparc 64-bit machine.
 5325 - The FAQ explanation concerning portability has been improved.
 5326 - The new library cc_conf.s7i has been added. This library manages
 5327   configuration values for C compiler and runtime.
 5328 - The compiler has been improved to use the library cc_conf.s7i.
 5329 - The chapter about the defines used in version.h has been improved
 5330   in src/read_me.txt.
 5331 - The type rtlGenerictype has been renamed to generictype in the
 5332   files of the runtime library. Now compiler and runtime library
 5333   both use the name generictype.
 5334 - The function checkForLimitedStringLiteralLength, a check for
 5335   trigraph sequences and checks for the presence of getrlimit()
 5336   and siglongjmp() have been added to chkccomp.c.
 5337 - The function setupStack has been added to cmd_rtl.c. This function
 5338   tries to raise the stack limit to STACK_SIZE.
 5339 - Usages of USE_SIGSETJMP have been renamed to HAS_SIGSETJMP.
 5340 - The table key_code has been improved in kbd_inf.c and kbd_poll.c.
 5341   Now the erase char of the terminal interface (VERASE) is always
 5342   returned as backspace (KEY_BS respectively '\8\'). This improves
 5343   the behavior under Cygwin.
 5344 - The function utf8_init has been changed in kbd_inf.c and
 5345   kbd_poll.c to assume UTF-8 mode when no locale environment
 5346   variable is set.
 5347 - The function msgDigest in msgdigest.s7i has been changed to use
 5348   in-parameters.
 5349 - The function configValue has been moved from osfiles.s7i to
 5350   cc_conf.s7i.
 5351 - The macro REALLOC_STRI_SIZE_SMALLER has been added to heaputl.h.
 5352   Several usages of REALLOC_STRI_SIZE_OK in the runtime library have
 5353   been changed to usages of REALLOC_STRI_SIZE_SMALLER.
 5354 - The compiler has been improved to initialize boolean and
 5355   enumeration elements of structs with the values value.boolvalue
 5356   respectively value.enumvalue. This is necessary to work correctly
 5357   on big-endian systems.
 5358 - Interpreter and compiler have been improved to support the actions
 5359   ACT_EQ and ACT_NE.
 5360 
 5361 20131027:
 5362 - Compiler and runtime library have been improved to support
 5363   big-endian systems. Thanks go to Brian Callahan, for his support
 5364   and for providing access to his PowerPC Macintosh under OpenBSD.
 5365 - The list of source files and the chapter about the defines used in
 5366   version.h have been improved in src/read_me.txt.
 5367 - The library tls.s7i has been improved to avoid raising an
 5368   exception, when the remote side closes the socket.
 5369 - The program chkccomp.c has been improved to write defines for
 5370   CHECK_INT_DIV_BY_ZERO, INT_DIV_BY_ZERO_SIGNALS and
 5371   DO_SIGFPE_WITH_DIV_BY_ZERO to version.h.
 5372 - Documentation comments have been added or improved in fillib.c,
 5373   int_rtl.c, soclib.c, tim_dos.c, tim_unx.c, tim_win.c, ut8lib.c,
 5374   ut8_rtl.c, tls.s7i and bytedata.s7i.
 5375 - The generic compare functions bigCmpGeneric, bstCmpGeneric,
 5376   chrCmpGeneric, intCmpGeneric, rflCmpGeneric, setCmpGeneric,
 5377   strCmpGeneric and typCmpGeneric have been improved to work
 5378   endianness neutral. Now they work correct on little- and
 5379   big-endian systems.
 5380 - The generic create functions bigCreateGeneric, bstCreateGeneric,
 5381   drwCreateGeneric, rflCreateGeneric, setCreateGeneric,
 5382   strCreateGeneric and itfCreateGeneric have been improved to work
 5383   endianness neutral. Now they work correct on little- and
 5384   big-endian systems.
 5385 - The new generic copy functions bigCpyGeneric, bstCpyGeneric,
 5386   drwCpyGeneric, fltCpyGeneric, rflCpyGeneric, setCpyGeneric and
 5387   strCpyGeneric have been added. This functions work endianness
 5388   neutral.
 5389 - The new generic destroy functions bigDestrGeneric,
 5390   drwDestrGeneric, rflDestrGeneric, setDestrGeneric and
 5391   strDestrGeneric have been added. This functions work endianness
 5392   neutral.
 5393 - The functions uintCmpGeneric, intCreateGeneric and intDestrGeneric
 5394   have been renamed to genericCmp, genericCreate respectively
 5395   genericDestr.
 5396 - The functions genericCpy, ptrCmp, ptrCmpGeneric, ptrCpyGeneric and
 5397   ptrCreateGeneric have been added to int_rtl.c.
 5398 - The function cmdConfigValue in cmd_rtl.c has been improved to
 5399   support the config value DO_SIGFPE_WITH_DIV_BY_ZERO.
 5400 - The handling of the option -l in processOptions (file s7.c) has
 5401   been improved to work endianness neutral.
 5402 - Several functions have been optimized:
 5403   In infile.c:   get_file_name and get_file_name_ustri
 5404   In prg_comp.c: prgSyobject
 5405   In rfllib.c:   rfl_elemcpy and rfl_idx
 5406   In rfl_data.c: rflElemcpy, rflIdx and rflTail
 5407 - The function get_ident and the macro IDENT_TABLE have been changed
 5408   to have an additional progtype argument.
 5409 - The function typNum in typ_data.c has been improved to use a
 5410   hashtable.
 5411 - In typlib.c the functions typ_num and typ_str have been improved
 5412   to call typNum respectively typStr.
 5413 - Support for the actions ACT_ICONV and ACT_ORD has been added to
 5414   interpreter, compiler and runtime library.
 5415 - The function id_string2 has been added to datautl.c, and used in
 5416   ref_data.c and typ_data.c.
 5417 
 5418 20131013:
 5419 - Libraries for TLS (Transport Layer Security), SSL (Secure Sockets
 5420   Layer) and HTTPS (HyperText Transfer Protocol Secure) support have
 5421   been added. The new libraries are: arc4.s7i, asn1.s7i, cipher.s7i,
 5422   gethttps.s7i, hmac.s7i, pkcs1.s7i, tls.s7i and x509cert.s7i.
 5423 - Comparison operators for < (proper subset) and > (proper superset)
 5424   have been added to hashsetof.s7i.
 5425 - The type digestAlgorithm and the functions msgDigest, blockSize
 5426   and digestSize have been added to msgdigest.s7i.
 5427 - The function hex has been added to bytedata.s7i.
 5428 - The example program castle.sd7 has been improved to avoid, that
 5429   an item can be dropped on an illegal place.
 5430 - The library make.s7i has been improved to accept the option -p for
 5431   the cp command.
 5432 - Documentation comments have been added to sockbase.s7i,
 5433   socket.s7i, atom.c, entutl.c, soclib.c, soc_rtl.c and striutl.c.
 5434 - The padding in the message digest functions of msgdigest.s7i has
 5435   been corrected. Now the functions pad nothing instead of 64 bytes,
 5436   when the message length is 55 (mod 64).
 5437 - The function getHttp in gethttp.s7i has been improved to use
 5438   a case-insensitive comparison for HTTP header field names.
 5439 - In exec.c the functions eval_arg_list and dump_arg_list have been
 5440   improved to avoid reading from freed memory. This occurred in very
 5441   rare cases.
 5442 - The functions find_action (in actutl.c), fltParse (in flt_rtl.c),
 5443   cmdConfigValue (in cmd_rtl.c) and find_sysvar (in syvarutl.c)
 5444   have been improved to use the macros MAX_STRI_EXPORT_LEN and
 5445   max_utf8_size.
 5446 - Interpreter and runtime library have been improved to ignore the
 5447   signal SIGPIPE. Writing to a broken pipe or socket raises the
 5448   exception FILE_ERROR instead.
 5449 - The functions bln_and and bln_or in blnlib.c have been improved
 5450   to return either SYS_TRUE_OBJECT or SYS_FALSE_OBJECT.
 5451 - The program chkccomp.c has been improved to determine the
 5452   alignment used by malloc and whether an access to unaligned memory
 5453   succeeds.
 5454 - Usages of ALLOC_CHUNK in flistutl.h have been improved to allocate
 5455   aligned memory the same way as malloc returns aligned memory.
 5456 - The program chkccomp.c has been improved to define the macro
 5457   'inline', when the C compiler does not support the keyword inline.
 5458 - Occurrences of 'INLINE' have been replaced with 'inline' in the
 5459   files analyze.c, atom.c, big_gmp.c, big_rtl.c, chr_rtl.c, exec.c,
 5460   findid.c, infile.c, int_rtl.c, numlit.c, parser.c, rfl_data.c,
 5461   scanner.c, striutl.c, strlib.c, str_rtl.c, syntax.c and ut8_rtl.c.
 5462 
 5463 20130929:
 5464 - The functions bStriLe, bytesLe, bStriBe and bytesBe have been
 5465   added to bytedata.s7i. This functions convert an integer to a
 5466   sequence of bytes.
 5467 - The compiler has been improved to generate inline code for the
 5468   action STR_PUSH. This action is used when a character is appended
 5469   to a string (with the operator &:= ).
 5470 - The function sendGet has been added to gethttp.s7i.
 5471 - The functions str_yy_mm_dd and str_hh_mm_ss have been added to
 5472   time.s7i.
 5473 - Checks for +:= and -:= have been added to chkbig.sd7.
 5474 - Checks for bytesBe and bytesLe have been added to chkint.sd7.
 5475 - Checks for & and &:= have been added to chkstr.sd7.
 5476 - The function doLocalDeclsOfStatement has been added to the
 5477   compiler. This function is used to simplify the processing
 5478   of various statements.
 5479 - The functions that process the statement actions BIG_GROW,
 5480   BIG_LSHIFT_ASSIGN, BIG_MULT_ASSIGN, BIG_RSHIFT_ASSIGN,
 5481   BIG_SHRINK, BLN_CPY, CHR_CPY, CHR_GROW, CHR_SHRINK, ENU_CPY,
 5482   FIL_CPY, FLT_CPY, FLT_DIV_ASSIGN, FLT_GROW, FLT_MULT_ASSIGN,
 5483   FLT_SHRINK, INT_AND_ASSIGN, INT_CPY, INT_GROW, INT_LSHIFT_ASSIGN,
 5484   INT_MULT_ASSIGN, INT_OR_ASSIGN, INT_RSHIFT_ASSIGN, INT_SHRINK,
 5485   INT_URSHIFT_ASSIGN, REF_CPY, RFL_INCL, SET_EXCL, SET_INCL,
 5486   SOC_CPY, STR_PUSH and TYP_CPY in the compiler have been
 5487   simplified.
 5488 - The functions int_toBStriBe and int_toBStriLe have been added to
 5489   intlib.c.
 5490 - The functions intToBStriBe and intToBStriLe have been added to
 5491   int_rtl.c
 5492 - In big_rtl.c and big_gmp.c the functions bigFromBytesBe and
 5493   bigFromBytesLe have been renamed to bigFromByteBufferBe
 5494   respectively bigFromByteBufferLe.
 5495 - The performance of the functions bst_cmp (in bstlib.c), bstCmp
 5496   (in bst_rtl.c) and strMult (in str_rtl.c) has been improved.
 5497 - The macro 'unlikely' has been added to functions in bst_rtl.c.
 5498 
 5499 20130908:
 5500 - The compiler has been improved to use charvalue instead of
 5501   intvalue, when characters are initialized. Thanks go to Brian
 5502   Callahan, for reporting the bug. Btw.: Brian Callahan created an
 5503   openBSD port for Seed7.
 5504 - The makefile mk_freebsd.mk has been added to support compilation
 5505   under freeBSD. Thanks go to Pietro Cerutti, for providing it.
 5506 - The makefiles mk_clang.mak and mk_freebsd.mk have been improved
 5507   to use the options -ffunction-sections, -fdata-sections and
 5508   -Wl,--strip-debug.
 5509 - The functions bStriLe2BigInt, bytesLe2BigInt, bStriBe2BigInt,
 5510   bytesBe2BigInt, bStriLe, bytesLe, bStriBe and bytesBe have been
 5511   added to bytedata.s7i. This functions convert between sequences
 5512   of bytes and bigInteger numbers.
 5513 - In bytedata.s7i the functions bytesLeAsInt and bytesBeAsInt have
 5514   been renamed to bytesLe2Int respectively bytesBe2Int.
 5515 - Parameter names have been added to seed7_05.s7i, graph_file.s7i,
 5516   graph.s7i, reference.s7i, pac.sd7, tetg.sd7, tet.sd7 and wiz.sd7.
 5517 - Checks for the Karatsuba multiplication and the functions bytesBe,
 5518   bytesLe, bytesBe2BigInt and bytesLe2BigInt have been added to
 5519   chkbig.sd7.
 5520 - Checks for set membership in character sets have been added to
 5521   chkset.sd7.
 5522 - The readability of the bitset initialization in the compiler (s7c)
 5523   has been improved.
 5524 - Interpreter and compiler have been improved to support the new
 5525   actions BIG_FROM_BSTRI_BE, BIG_FROM_BSTRI_LE, BIG_TO_BSTRI_BE and
 5526   BIG_TO_BSTRI_LE.
 5527 - The functions bigFromBytesBe, bigFromBytesLe, bigFromBStriBe,
 5528   bigFromBStriLe, bigToBStriBe and bigToBStriLe have been added to
 5529   both, big_gmp.c and big_rtl.c.
 5530 - In big_gmp.c and big_rtl.c the function bigImport has been
 5531   rewritten to use bigFromBytesBe.
 5532 - The readability of the function uint2_mult in int_rtl.c has been
 5533   improved.
 5534 - The program chkccomp.c has been improved to check for a ones
 5535   complement inttype and if casting can be used to get the element
 5536   of a union.
 5537 - Several makefiles have been adjusted to use 'cp -p' instead of
 5538   'cp -a'. The cp command of openBSD does not support -a.
 5539 - The function bigRand in big_rtl.c has been improved to avoid that
 5540   a random number is outside the required range.
 5541 
 5542 20130820:
 5543 - The library sha1.s7i has been renamed to msgdigest.s7i.
 5544 - The message digest and secure hash functions md4, md5, sha224 and
 5545   sha256 have been added to msgdigest.s7i.
 5546 - The new library propertyfile.s7i, which defines functions to
 5547   read a property file into a hash table, has been added.
 5548 - The performance of the random number generator has been improved.
 5549   The function uint2_mult in int_rtl.c is now defined as inline
 5550   function. The macro 'unlikely' has been added to describe that the
 5551   initialization of the random number generator is unlikely.
 5552 - The function uint_mult has been added to int_rtl.c and used in
 5553   big_rtl.c.
 5554 - The macro 'unlikely' has been added to functions in flt_rtl.c.
 5555 - The function bytesLeAsInt has been added to the library
 5556   bytedata.s7i.
 5557 - In bytedata.s7i the function int64AsBytesBytesLe has been renamed
 5558   to int64AsEightBytesLe.
 5559 - A variant of the function skipWhiteSpace has been added to the
 5560   library scanfile.s7i.
 5561 
 5562 20130805:
 5563 - The functions hashCode in complex.s7i, duration.s7i, rational.s7i
 5564   and time.s7i have been improved to avoid an integer overflow.
 5565   Thanks to Pietro Cerutti, for reporting this problem.
 5566 - The description of the Seed7 installation in doc/install.txt has
 5567   been improved.
 5568 - The new library sha1.s7i, which defines a message digest with the
 5569   SHA-1 secure hash algorithm, has been added.
 5570 - Definitions of the operators &:= and |:= have been added to
 5571   bin32.s7i.
 5572 - The functions int64AsBytesBytesLe, int64AsEightBytesBe and
 5573   bytesBeAsInt have been added to bytedata.s7i.
 5574 - Interpreter and compiler have been improved to support the actions
 5575   INT_AND_ASSIGN and INT_OR_ASSIGN.
 5576 - A bug in the function conText (file con_win.c) has been fixed.
 5577 - Debug code has been added to kbd_inf.c and kbd_poll.c.
 5578 - The makefile mk_cygw.mak has been improved to avoid problems with
 5579   the console keyboard.
 5580 
 5581 20130722:
 5582 - Spelling errors in chlog.txt, faq.htm and faq.txt have been fixed.
 5583 - The function conText (in con_win.c) has been improved to work
 5584   correctly for long strings. The underlying function WriteConsoleW
 5585   fails for string lengths above some limit between 26000 to 32000.
 5586 - The functions find_window, remove_window, gkbGetc, gkbKeyPressed,
 5587   gkbButtonPressed, gkbRawGetc, gkbWindow, gkbButtonXpos and
 5588   gkbButtonYpos have been moved from drw_win.c to the new file
 5589   gkb_win.c.
 5590 - In the functions drwPCircle, drwPFCircle, drwPFEllipse and
 5591   drwFPolyLine (file drw_win.c) wrong usages of inIntRange have been
 5592   replaced with better code.
 5593 - In con_win.c the table map_key has been improved such that kbdGetc
 5594   recognizes the key F12.
 5595 - In gkb_x11.c the functions find_window, enter_window and
 5596   remove_window have been improved.
 5597 - The makefiles mk_bcc32.mak, mk_bccv5.mak, mk_mingc.mak,
 5598   mk_mingw.mak, mk_msvc.mak, mk_msys.mak and mk_nmake.mak have been
 5599   changed to use the new file gkb_win.c.
 5600 - The program chk_all.sd7 has been improved to call chkhsh.sd7.
 5601 - The program chkhsh.sd7 has been improved.
 5602 - The compiler has been improved to generate compare functions with
 5603   the correct prototype.
 5604 - The functions bitSize and process_generic_cmp_declaration have been
 5605   added to s7c.sd7.
 5606 - In flt_rtl.c the function fltCpy has been renamed to fltCpyGeneric.
 5607 - The functions dump_hash and dump_helem have been added to
 5608   hsh_rtl.c.
 5609 - The function new_type in typeutl.c has been changed to add the new
 5610   type to the parameter owningProg instead of the global prog.
 5611 
 5612 20130704:
 5613 - A wordfile for Ultraedit and a syntax definition file for Textpad
 5614   has been added. Many thanks to Renato Lenzi for providing it. This
 5615   files can be found also on his great italian page about Seed7.
 5616 - A compilation problem with DJGPP in fil_rtl.c has been fixed
 5617   (thanks to "Rugxulo" for pointing it out).
 5618 - The keyboard read function getc(KEYBOARD) has been improved to
 5619   accept all Unicode characters also under Linux/Unix/BSD. Up to now
 5620   the function did only accept Latin-1 characters.
 5621 - The keyboard read function getc(KEYBOARD) has been improved to
 5622   accept usages of the mouse wheel also under Windows.
 5623 - Checks for correct UTF-8 encoding of the program source have been
 5624   added. Overlong UTF-8 encodings, UTF-16 surrogate characters and
 5625   missing UTF-8 continuation bytes result in a compile time error.
 5626 - The example program err.sd7, which checks compile time error
 5627   messages, has been improved.
 5628 - The FAQ explanations concerning Unicode and automatic casts have
 5629   been improved.
 5630 - Documentation comments have been added to gzip.s7i and make.s7i.
 5631 - The example programs gkbd.sd7 and kbd.sd7 have been improved to
 5632   write the character, if it is printable.
 5633 - The example programs pairs.sd7, panic.sd7, tetg.sd7, sokoban.sd7,
 5634   sudoku7.sd7, mandelbr.sd7 and wator.sd7 have been changed to use
 5635   proportional Seed7 pixmap fonts.
 5636 - Tests for the functions lower and upper with cyrillic letters have
 5637   been added to chkstr.sd7.
 5638 - The libraries console.s7i, pixmap_file.s7i, graph_file.s7i,
 5639   file.s7i, editline.s7i, echo.s7i, null_file.s7i, external_file.s7i,
 5640   strifile.s7i, stritext.s7i, tee.s7i, window.s7i, reverse.s7i,
 5641   lower.s7i and upper.s7i, have been improved to work with
 5642   proportional fonts. Proportional font support uses the functions
 5643   moveLeft, erase, backSpace, cursorOn and cursorOff.
 5644 - The vector font cronos16 has been improved to look more similar to
 5645   the font cronos27.
 5646 - The bitmap fonts stdFont10, stdFont12, stdFont14, stdFont16,
 5647   stdFont18, stdFont20 and stdFont24 have been improved.
 5648 - The vector fonts vecFont10 and vecFont18 have been adjusted to look
 5649   like the corresponding bitmap fonts.
 5650 - The fonts stdFont8, stdFont9 and cronos27 have been improved to use
 5651   less spacing between the characters.
 5652 - In graph_file.s7i the logic of a writeln after a setPosXY has been
 5653   changed. Now the writeln moves one line downward relative to the
 5654   position given with setPosXY.
 5655 - A description of the subrange operator, which gets an array slice
 5656   from a position with maximum length, has been added to the manual.
 5657 - A table to map keysym values to Unicode and the function
 5658   mapKeysymToUnicode, which does a binary search in this table, have
 5659   been added to gkb_x11.c.
 5660 - The function gkbGetc in gkb_x11.c has been improved to work without
 5661   recursion, to use mapKeysymToUnicode and to recognize cursor keys
 5662   in combination with ALT, NUMLOCK and SHIFT.
 5663 
 5664 20130616:
 5665 - Documentation comments have been added or improved in bigfile.s7i,
 5666   char.s7i, clib_file.s7i, complex.s7i, external_file.s7i, file.s7i,
 5667   float.s7i, hash.s7i, integer.s7i, shell.s7i, string.s7i, utf16.s7i,
 5668   osfiles.s7i, rational.s7i, arrlib.c, blnlib.c, bstlib.c, arr_rtl.c,
 5669   big_gmp.c, big_rtl.c, bst_rtl.c, chrlib.c, chr_rtl.c, cmdlib.c,
 5670   cmd_rtl.c, fillib.c, fil_rtl.c, fltlib.c, flt_rtl.c, hshlib.c,
 5671   hsh_rtl.c, int_rtl.c, pol_sel.c, pol_unx.c, setlib.c, set_rtl.c,
 5672   strlib.c, str_rtl.c.
 5673 - The functions lower and upper in string.s7i and char.s7i have been
 5674   improved to use the default Unicode case mapping. In other words:
 5675   conversions to lower respectively upper case works for all Unicode
 5676   characters, which have a case mapping. Characters without case
 5677   mapping are left unchanged. The mapping is independent from the
 5678   locale. Individual character case mappings cannot be reversed,
 5679   because some characters have multiple characters that map to them.
 5680 - In the library deflate.s7i the performance of the deflate
 5681   compression has been improved by a factor between 5 and 10.
 5682 - The performance of the functions str_cmp, str_range and str_substr
 5683   in strlib.c has been improved.
 5684 - The performance of the functions strCompare, strRangeSlice,
 5685   strRange, strSubstrSlice and strSubstr in str_rtl.c has been
 5686   improved.
 5687 - Tests for the string functions compare, lower and upper and for the
 5688   index operations head, tail, range and substring have been added to
 5689   chkstr.sd7.
 5690 - The definition of the macro arrayMaxPos in common.h has been
 5691   improved and usages of the macro have been added to arrlib.c and
 5692   arr_rtl.c.
 5693 - The compiler has been improved to support the actions HSH_IDX2 and
 5694   HSH_UPDATE.
 5695 - The compiler has been improved to inline code for the actions
 5696   STR_HASHCODE, STR_RANGE and STR_SUBSTR.
 5697 - The function intStrToBuffer has been added to int_rtl.c. This
 5698   function allows conversions from integer to string, without
 5699   memory allocation.
 5700 - The compiler has been improved to take advantage of the function
 5701   intStrToBuffer.
 5702 - The functions getGenericValue, getGenericValueToResultExpr,
 5703   getTempVariable, beginCastGeneric, endCastGeneric,
 5704   beginCastGenericToResultExpr and endCastGenericToResultExpr have
 5705   been added to the compiler.
 5706 - The functions hsh_idx2 and hsh_update have been added to hshlib.c.
 5707 - The functions hshIdxAddr2 and hshUpdate have been added to
 5708   hsh_rtl.c
 5709 - The macro hashCode has been defined in str_rtl.h and used in
 5710   str_rtl.c (function strHashCode) and strlib.c (function
 5711   str_hashcode).
 5712 - The program chkccomp.c has been improved to write a definition of
 5713   the macro INLINE to version.h
 5714 - The deprecated function 'read_dir' has been removed from the
 5715   library "osfiles.s7i". The replacement of 'read_dir' is 'readDir'.
 5716 - The functions arrHeadTemp, arrRangeTemp and arrSubarrTemp in
 5717   arr_rtl.c have been improved.
 5718 
 5719 20130602:
 5720 - The implementation of the type integer has been changed to use a
 5721   64-bit value.
 5722 - Documentation comments have been added to bigint.s7i, integer.s7i,
 5723   string.s7i, arr_rtl.c, big_gmp.c, biglib.c, big_rtl.c, flt_rtl.c,
 5724   intlib.c, int_rtl.c, set_rtl.c and str_rtl.c.
 5725 - The new library bin32.s7i, which defines bit operations for 32-bit
 5726   values, has been added.
 5727 - The new library crc32.s7i, which supports the CRC-32 cyclic
 5728   redundancy check, has been added.
 5729 - The new library deflate.s7i, which supports the deflate compression
 5730   algorithm, has been added.
 5731 - The library binary.s7i has been renamed to bytedata.s7i. The
 5732   functions get_asciiz, get_uint16_le, get_uint32_le, get_uint16_be
 5733   and get_uint32_be have been renamed to getAsciiz, getUInt16Le,
 5734   getUInt32Le, getUInt16Be and getUInt32Be respectively. Definitions
 5735   of the functions int16AsTwoBytesLe, int32AsFourBytesLe,
 5736   int16AsTwoBytesBe and int32AsFourBytesBe have been added.
 5737 - The functions getBitLe, getBitsLe, getNonCompressedBlock,
 5738   getLiteralOrLength, getDistance, decodeLength, decodeDistance,
 5739   decodeFixedHuffmanCodes, getHuffmanValue, computeConversionTable,
 5740   decodeDynamicHuffmanCodes, processCompressedBlock and inflate have
 5741   been moved from gzip.s7i to the new library inflate.s7i.
 5742 - The functions gzip, openGzipFile, close and write have been added
 5743   to the library gzip.s7i.
 5744 - The functions 'name' and 'path' have been added to the library
 5745   progs.s7i.
 5746 - The function openStrifile has been added to strifile.s7i.
 5747 - The library tar.s7i and the example program tar7.sd7 have been
 5748   improved to allow the creation of compressed archives.
 5749 - The compiler has been improved to support the actions BIG_CONV,
 5750   BIN_AND, BIN_OR, BIN_XOR, INT_AND, INT_OR, INT_XOR, INT_URSHIFT,
 5751   INT_URSHIFT_ASSIGN, PRG_OWN_NAME and PRG_OWN_PATH.
 5752 - Optional checks for integer shift operations have been added to
 5753   the compiler.
 5754 - The function bigFromInt64 and bigToInt64 in big_gmp.c have been
 5755   improved.
 5756 - Several functions in big_gmp.c have been improved to free temporary
 5757   values with mpz_clear().
 5758 - The function big_conv() has been added to biglib.c.
 5759 - The functions drw_image and drwRtlImage have been improved.
 5760 - The functions drwImage in drw_win.c and drw_x11.c have been
 5761   improved.
 5762 - The meaning of the actions PRG_NAME and PRG_PATH has changed. The
 5763   new actions PRG_OWN_NAME and PRG_OWN_PATH are used as replacement.
 5764 - The functions strRPos2, strRIPos2 and strRepl2 have been added to
 5765   str_rtl.c. This functions use a modified Boyer–Moore string search
 5766   algorithm.
 5767 - Usages of the macro arraySize have been added to drwlib.c,
 5768   drw_rtl.c, libpath.c and prg_comp.c.
 5769 - The macro arrayMaxPos has been defined in common.h and used in
 5770   arrlib.c and arr_rtl.c.
 5771 
 5772 20130519:
 5773 - The support for K&R C has been removed. Now an ANSI C compiler is
 5774   required to compile Seed7. For many years all officially supported
 5775   C compilers have been ANSI C compilers.
 5776 - The manual chapters describing rational, bigRational and the
 5777   functions min and max have been improved.
 5778 - The functions min and max have been added to bigint.s7i, bigrat.s7i
 5779   and rational.s7i.
 5780 - Addition and subtraction operators in rational.s7i and bigrat.s7i
 5781   have been improved to reduce the result.
 5782 - The parse operator in bigrat.s7i has been improved to process
 5783   negative rational literals correctly.
 5784 - The function round in bigrat.s7i has been fixed.
 5785 - Documentation comments in boolean.s7i, float.s7i and integer.s7i
 5786   have been improved.
 5787 - A standard bitmap font, with capital height of 8, has been defined
 5788   in the new library stdfont8.s7i.
 5789 - Definitions of min and max have been removed from dnafight.sd7 and
 5790   dna_base.s7i.
 5791 - The example program ftp7.sd7 has been improved to allow linewise
 5792   editing with history.
 5793 - The code generation for the actions HSH_CPY and HSH_IDX in the
 5794   compiler has been improved.
 5795 - In arrlib.c, hshlib.c, arr_rtl.c and hsh_rtl.c several functions,
 5796   which enlarge an array, have been improved to avoid overflows. This
 5797   overflows could happen when the array size or the new maximum index
 5798   are computed.
 5799 - Definitions of the macros inLongRange, castToLong, inTimeTRange,
 5800   arrayIndex, bitsetSize, bitsetSize2 and bitsetIndex have been added
 5801   to common.h.
 5802 - Functions in setlib.c and set_rtl.c have been improved to use the
 5803   macros bitsetSize, bitsetSize2 and bitsetIndex.
 5804 - Functions in drw_x11.c and drw_win.c have been improved to check
 5805   for range violations and to cast parameters.
 5806 - The functions to draw an image (drwImage, drw_image, drwRtlImage)
 5807   in drw_dos.c, drw_win.c, drw_x11.c, drw_rtl.c and drwlib.c have
 5808   been improved to use image data with int32type elements.
 5809 - The function socInputReady in soc_rtl.c has been improved to take
 5810   the seconds and microsecond parameter into account.
 5811 - In tim_rtl.c the functions timFromTimestamp, timFromIntTimestamp,
 5812   timToTimestamp and timSetLocalTZ have been improved.
 5813 
 5814 20130505:
 5815 - Functions to compare arrays (compare, <, >, <=, >=) have been added
 5816   to the library array.s7i.
 5817 - In seed7_05.s7i the functions hashCode and compare have been
 5818   defined for enum types.
 5819 - In the library bigrat.s7i the operator parse has been improved. Now
 5820   the parse operator accepts decimal numbers with repeating decimals.
 5821 - The function integer has been added to the library integer.s7i.
 5822   This function converts a numeric string, with a specified radix, to
 5823   an integer.
 5824 - The function bigInteger has been added to the library bigint.s7i.
 5825   This function converts a numeric string, with a specified radix, to
 5826   a bigInteger.
 5827 - The files encoding.s7i, gethttp.s7i, scanfile.s7i, scanstri.s7i,
 5828   xml_ent.s7i and bas7.sd7 have been changed to use the new function
 5829   integer instead of toInt (toInt was an undocumented internal
 5830   function).
 5831 - Checks for the function integer have been added to chkint.sd7.
 5832 - Checks for the function bigInteger have been added to chkbig.sd7.
 5833 - The operator sci has been added to to the library complex.s7i. This
 5834   operator converts a complex to a string in scientific notation.
 5835 - The compiler (s7c) has been improved to support the actions
 5836   BIG_PARSE_BASED, TYP_CMP, ENU_CPY, ENU_CREATE and GEN_DESTR.
 5837 - The memory management in the interpreter has been improved. Now it
 5838   is possible that a destructor is called and the object memory is
 5839   not freed. This is used to free the memory of struct objects only,
 5840   when the usage_count reaches zero.
 5841 - The UNUSED flag was defined in data.h and used to monitor if the
 5842   object memory can be freed.
 5843 - The compiler has been improved to call the destructor for local
 5844   interface objects (In process_local_declaration process_destr_call
 5845   is called for INTERFACEOBJECT objects).
 5846 - The compiler has been improved to initialize set constants, that
 5847   are part of a data structure (In walk_const_list SETOBJECT objects
 5848   are added to set_const_table).
 5849 - The runtime library has been improved to use the action GEN_DESTR
 5850   instead of PRC_NOOP as destructor for integer and other simple
 5851   data types.
 5852 
 5853 20130421:
 5854 - The FAQ explanation concerning garbage collection has been
 5855   improved.
 5856 - The manual chapters describing the introduction, EBNF, literals
 5857   (for integer, bigInteger, float, char and string), set operations
 5858   and file I/O have been improved.
 5859 - Operations, to get an array slice with a specified length, have
 5860   been added to the libraries array.s7i and idxarray.s7i.
 5861 - Array aggregates for arrays with a given start index have been
 5862   added to idxarray.s7i.
 5863 - Functions for binomial coefficient and modular exponentiation have
 5864   been added to the library bigint.s7i.
 5865 - A definition of an empty set with the name {} has been added to
 5866   bitset.s7i.
 5867 - Functions to compute the minimum and maximum have been added to the
 5868   libraries integer.s7i and float.s7i.
 5869 - Documentations comments in keybd.s7i have been improved.
 5870 - In pixmap_file.s7i the logic of a writeln after a setPosXY has been
 5871   changed. Now the writeln moves one line downward relative to the
 5872   position given with setPosXY.
 5873 - A pound symbol has been added to several bitmap fonts.
 5874 - A standard bitmap font, with capital height of 9, has been defined
 5875   in the new library stdfont9.s7i.
 5876 - Checks for the factorial function and the binomial coefficient have
 5877   been added to chkbig.sd7.
 5878 - The comanche webserver has been improved to accept cookies.
 5879 - The compiler has been improved to generate better code for the
 5880   allocation of array memory.
 5881 - The function arrMalloc in arr_rtl.c has been improved to avoid an
 5882   overflow, when the size of the memory is computed.
 5883 - The functions arrSubarr and arrSubarrTemp have been added to
 5884   arr_rtl.c.
 5885 - Support for the action ARR_SUBARR has been added to the compiler.
 5886 - The macros arraySize and arraySize2 have been defined in common.h
 5887   and used in arrlib.c, arr_rtl.c, arrutl.c, cmdlib.c, cmd_unx.c and
 5888   cmd_win.c.
 5889 - Definitions of INT64TYPE_MIN, INTTYPE_MIN and MIN_MEM_INDEX have
 5890   been added to common.h.
 5891 
 5892 20130401:
 5893 - The FAQ explanations concerning, 'in' parameters and different
 5894   behavior of val and ref parameters, have been improved.
 5895 - The keyboard read function getc(KEYBOARD) has been improved to
 5896   support more function keys and to accept Unicode characters also
 5897   under Windows.
 5898 - The program calc.sd7 has been improved to accept and display
 5899   Unicode characters.
 5900 - The automatic memory management has been improved to work also
 5901   for the files managed by pollData.
 5902 - The function openEditLineLatin1 has been added to editline.s7i.
 5903   Only Latin-1 characters are accepted and written to ''outFile''.
 5904   Unicode characters beyond ISO Latin-1 (ISO-8859-1) are ignored.
 5905 - In file.s7i the function writeln(file, string) has been defined as
 5906   DYNAMIC (virtual) function. This allows that the implementation
 5907   function writeln(socket, string) sends string and '\n' together.
 5908 - The definition of keys in keybd.s7i have been changed such that
 5909   function keys are outside the range of Unicode characters.
 5910 - The new library keydescr.s7i, which defines a hash table with
 5911   descriptive text for function keys, has been added.
 5912 - The implementation function writeln(null_file, string) has been
 5913   added to null_file.s7i. This function is used by many derived
 5914   types.
 5915 - An implementation function of writeln(socket, string) has been
 5916   added to socket.s7i. This function sends string and '\n' together.
 5917 - Definitions of writeln (without string parameter) have been removed
 5918   from external_file.s7i, socket.s7i and utf8.s7i.
 5919 - The example programs bas7.sd7, gkbd.sd7 and kbd.sd7 have been
 5920   changed to use the hash keyDescription (defined in keydescr.s7i).
 5921 - Tests for string assignment and string append (operator &:= ) have
 5922   been added to chkstr.sd7.
 5923 - The function bigStr in big_rtl.c has been improved to realloc the
 5924   string to the correct size.
 5925 - The function determineEnvironDefines in chkccomp.c has been
 5926   improved.
 5927 - The function itf_destr in itflib.c has been improved to cooperate
 5928   with the function close_stack (defined in name.c).
 5929 - The function kbdKeyPressed in kbd_inf.c has been improved to never
 5930   wait for input (calls of tcsetattr() were fixed, see below).
 5931 - In pol_unx.c and pol_sel.c the functions addCheck, removeCheck,
 5932   polCpy, polCreate, polDestr and polClear have been improved to use
 5933   the function pointers incrUsageCount and decrUsageCount from
 5934   fileObjectOps.
 5935 - The function initPollOperations has been added to pol_unx.c,
 5936   pol_sel.c and pol_dos.c.
 5937 - In str_rtl.c the functions strAppend and strCopy have been changed
 5938   to use SLICE_OVERLAPPING instead of GET_SLICE_ORIGIN.
 5939 - In str_rtl.c the functions strHeadSlice, strRangeSlice,
 5940   strSubstrSlice and strTailSlice have been improved to avoid
 5941   (mis)using the string capacity. Now the capacity of a slice is set
 5942   to zero. Before the origin of a slice was stored in the capacity.
 5943 - The function print_real_value in traceutl.c has been improved to
 5944   print interface values with more detail.
 5945 - Support for additional function keys has been added to kbd_inf.c,
 5946   kbd_poll.c, cap_def.h, trm_cap.c and trm_inf.c.
 5947 - The files kbd_inf.c and kbd_poll.c have been improved to use read()
 5948   instead of fread().
 5949 - The files kbd_inf.c and kbd_poll.c have been improved to take a
 5950   weakness of tcsetattr() into account. The function tcsetattr() may
 5951   return success, although not all changes could be carried out.
 5952   Now the calls of tcsetattr() are done via the new functions
 5953   term_descr_equal, tcset_term_descr and tcset_vmin_vtime.
 5954 - The compiler has been improved to create and use cpy_... functions
 5955   for the interface assignment (action ITF_CPY).
 5956 - The free list management for strings has been improved to allow
 5957   different maximum list lengths for strings with different capacity.
 5958 - Definitions of databasetype and sqlstmttype have been added to
 5959   common.h. This are the first steps towards database support.
 5960 
 5961 20130317:
 5962 - The FAQ explanations concerning, what kind of programs can be
 5963   written in Seed7 and the automatic memory management of Seed7, have
 5964   been improved.
 5965 - The compiler (s7c) has been improved to use the function
 5966   strConcatN, when three or more strings are concatenated.
 5967 - The compiler has been improved to define and use dynamic (virtual)
 5968   destructors for interface types. The function itfCreate is used as
 5969   constructor.
 5970 - In the compiler the function init_string_constants_with_slices has
 5971   been improved, to store the characters of string constants with
 5972   more density.
 5973 - The compiler functions prepare_typed_result, process_itf_cpy,
 5974   process_itf_to_interface and process_ref_trace have been improved.
 5975 - In str_rtl.c the functions strIPos2 and strPos2 have been added.
 5976   This functions use a modified Boyer–Moore string search algorithm.
 5977 - The performance of the function replace2 (library string.s7i) has
 5978   been improved.
 5979 - The example programs tetg.sd7 and tet.sd7 have been changed to
 5980   abstain from using an outdated language feature. Now this programs
 5981   can be compiled.
 5982 - Parameter names have been added to seed7_05.s7i, pixmap_file.s7i,
 5983   bitset.s7i, dialog.s7i, hash.s7i, console.s7i and string.s7i.
 5984 - In sctlib.c and itflib.c the functions sct_cpy, sct_create,
 5985   sct_destr, itf_cpy, itf_cpy2, itf_create, itf_create2, itf_destr
 5986   and itf_to_interface have been improved to use reference counting
 5987   (usage_count) for all objects of the category STRUCTOBJECT.
 5988 - The support for the actions ITF_TO_HEAP and REF_BUILD has been
 5989   removed from the interpreter.
 5990 - Support for the action REF_GETREF has been added to interpreter and
 5991   compiler.
 5992 - The functions itf_to_heap (in itflib.c) and ref_build (in reflib.c)
 5993   have been removed.
 5994 - The function refItftosct (in ref_data.c) has been renamed to
 5995   refItfToSct. The function ref_itftosct (in reflib.c) and the
 5996   compiler have been changed to use the new function name.
 5997 - The types smallpriortype and prior_type have been replaced by
 5998   prioritytype in common.h, data.h, expr.c, expr.h, findid.h,
 5999   syntax.c, token.c and token.h.
 6000 - In itf_rtl.c the function itfCreate has been added and the function
 6001   itfDestr has been removed.
 6002 - Usages of the function stri_charpos in analyze.c and prclib.c have
 6003   been replaced by calls of strChPos.
 6004 - In executl.c the function crea_struct has been introduced and the
 6005   function any_var_initialization has been replaced by the functions
 6006   sct_elem_initialization and arr_elem_initialization.
 6007 - The function prot_block has been added to traceutl.c.
 6008 
 6009 20130303:
 6010 - The library editline.s7i has been added. This library defines a
 6011   file type for linewise editing with history.
 6012 - The manual chapter describing types, especially the type program,
 6013   has been improved.
 6014 - The calc.sd7 example has been improved to allow linewise editing.
 6015 - The handling of the internal program representation in interpreter
 6016   and compiler has been improved to free most unused memory.
 6017 - The handling of the functions prgGlobalObjects, refArrToList,
 6018   refHshDataToList, refHshKeyToList, refLocalVars and refSctToList
 6019   in compiler and run-time library has been improved to free unused
 6020   memory.
 6021 - The stack trace has been improved to display infix operators
 6022   better and to write parameter names.
 6023 - The compiler has been improved to support the action TYP_FUNC.
 6024 - The functions copy_expression and free_expression in listutl.c
 6025   have been optimized.
 6026 - The function substitute_params has been added to match.c .
 6027 - The functions free_params and free_name_list have been added to
 6028   name.c .
 6029 - The function dump_list has been added to objutl.c .
 6030 - The function copy_params has been added to entutl.c .
 6031 - The functions prot_float and prot_params have been added to
 6032   traceutl.c .
 6033 - The functions free_type and close_type have been added to
 6034   typeutl.c .
 6035 - The free list management has been improved to be configurable
 6036   in config.h.
 6037 - The memory management in heaputl.h has been improved to work with
 6038   and without DO_HEAPSIZE_COMPUTATION.
 6039 - The function free_file and remove_prog_files have been added to
 6040   infile.c.
 6041 - The functions itf_cpy and itf_cpy2 in itflib.c have been improved
 6042   to support assigning forward declared objects to an interface.
 6043 - The function emptylist and the macro to_empty_list have been
 6044   renamed to free_list and free_list2.
 6045 - In prg_comp.c the function prgDeclObjects has been renamed to
 6046   prgGlobalObjects.
 6047 - In ref_data.c the functions refArrmaxidx, refArrminidx,
 6048   refArrtolist, refScttolist and refHshKeyToList have been renamed
 6049   to refArrMaxIdx, refArrMinIdx, refArrToList, refSctToList and
 6050   refHshKeysToList.
 6051 - In ref_data.c the functions refResult, refResini and refSetParams
 6052   have been improved to raise RANGE_ERROR when the argument is NULL
 6053   or when it is not a BLOCKOBJECT.
 6054 - In progs.s7i the functions sys_var, error_count, declared_objects,
 6055   params, setParams, func_result, func_res_init, local_consts,
 6056   local_vars, array_to_list, array_min_index, array_max_index,
 6057   struct_to_list, hash_data_to_list, hash_key_to_list,
 6058   interface_to_struct, obj_number, type_number and match_obj have
 6059   been renamed to sysVar errorCount, globalObjects, formalParams,
 6060   setFormalParams, resultVar, resultInitValue, localConsts,
 6061   localVars, arrayToList, arrayMinIdx, arrayMaxIdx, structToList,
 6062   hashDataToList, hashKeysToList, interfaceToStruct, objNumber,
 6063   typeNumber and typeObject.
 6064 - In seed7_05.s7i the functions is_func, is_varfunc, result_type and
 6065   is_derived have been renamed to isFunc, isVarfunc, resultType and
 6066   isDerived.
 6067 
 6068 20130217:
 6069 - The description of exceptions in the manual has been improved.
 6070 - The handling of the internal program representation in interpreter
 6071   and compiler has been improved to free more unused memory.
 6072 - The handling of the actions PRG_FIL_PARSE and PRG_STR_PARSE in the
 6073   Seed7 compiler (s7c) has been improved to support releasing unused
 6074   programs.
 6075 - The function prgDestr (in prg_comp.c) has been improved to free
 6076   (most of) the data used by a program. Several functions, which need
 6077   to free program data, have been improved to call prgDestr.
 6078 - The functions prgCpy (in prg_comp.c) and prg_cpy (in prglib.c) have
 6079   been improve to free a program when the usage_count reaches zero.
 6080 - The functions getPixmap in draw.s7i have been improved.
 6081 - The functions decl_any (in analyze.c), dcl_const and dcl_var (both
 6082   in dcllib.c) have been improved to free unused expressions.
 6083 - The actions ARR_BASELIT, ARR_BASELIT2, ARR_TIMES, ARR_GEN, ARR_PUSH
 6084   and ARR_EXTEND in the interpreter (file arrlit.c) have been
 6085   improved to work correctly for arrays with interface elements.
 6086 - In blockutl.c the functions free_locobj, free_body, free_block and
 6087   free_local_consts have been added or improved.
 6088 - In entutl.c the function free_entity has been improved to free also
 6089   syobject and name_list.
 6090 - The function close_entity has been added to entutl.c. This function
 6091   frees the list of inactive entities.
 6092 - In executl.c the function destroy_local_init_value has been added
 6093   and the function destroy_object_list has been removed.
 6094 - The parameter dest_type has been added to the function
 6095   any_var_initialization (file executl.c).
 6096 - The functions heap_statistic (in flistutl.c) and rtlHeapStatistic
 6097   (in heaputl.c) have been improved to write information about
 6098   pollData elements.
 6099 - The functions free_ident and close_idents in identutl.c have been
 6100   improved.
 6101 - The function free_expression has been added to listutl.c.
 6102 - The function pop_object in name.c has been improved to add inactive
 6103   entities to a list of inactive entities
 6104 - The function close_stack in name.c has been improved to reverse the
 6105   list of local objects and to dump and free the local objects.
 6106 - The function dump_temp_value, which releases a value without
 6107   releasing the object, has been added to objutl.c.
 6108 - The function free_args has been added to prg_comp.c.
 6109 
 6110 20130203:
 6111 - Files to generate man pages for Seed7 interpreter and compiler have
 6112   been added to the documentation (files doc/s7.1 and doc/s7c.1).
 6113 - The makefiles have been improved to support the targets distclean
 6114   and test.
 6115 - The operators radix and RADIX have been added to the libraries
 6116   integer.s7i and bigint.s7i. This operators convert an integer
 6117   respectively bigInteger to a string. The conversion uses the
 6118   numeral system with the given base.
 6119 - The variants of the function str, which have a second parameter to
 6120   specify a numeric base, are deprecated now and will be removed in a
 6121   future release. The operators radix and RADIX should be used
 6122   instead.
 6123 - Interpreter and compiler have been improved to support the
 6124   operators radix and RADIX.
 6125 - In chkint.sd7 checks for the function str with base have been
 6126   replaced with checks for the operators radix and RADIX.
 6127 - Usages of the function str with base have been changed to usages
 6128   of the operators radix or RADIX in the files gethttp.s7i, bas7.sd7,
 6129   encoding.s7i and s7c.sd7.
 6130 - Errors in bas7.sd7, concerning the function VARPTR and the
 6131   statement OPEN, have been fixed.
 6132 - The function getLineWithMacrosApplied in makedata.s7i has been
 6133   improved to ignore space and tab characters after an escaped
 6134   newline.
 6135 - Result variables have been renamed in various libraries and example
 6136   programs.
 6137 - The currency sign character has been added to stdfont10.s7i,
 6138   stdfont12.s7i, stdfont14.s7i, stdfont16.s7i, stdfont18.s7i,
 6139   stdfont20.s7i, stdfont24.s7i, vecfont10.s7i and vecfont18.s7i.
 6140 - The file chkccomp.c has been improved to define a macro that
 6141   describes what happens, when a cast of a float to int overflows.
 6142 
 6143 20130120:
 6144 - Interpreter and compiler have been improved to support the option
 6145   -l. This option allows adding a directory to the include library
 6146   search path (e.g.: -l ../lib).
 6147 - The compiler (s7c) has been improved to support the option -b.
 6148   With -b the directory of the Seed7 runtime libraries can be
 6149   specified (e.g.: -b ../bin).
 6150 - The target s7c in the makefiles has been changed to take advantage
 6151   of the options -l and -b. Now packages can compile the Seed7
 6152   compiler without a post install step.
 6153 - Additional function variants of parseFile, parseStri and execute
 6154   have been added to the library progs.s7i. The new functions allow
 6155   a detailed specification of parse and execution options.
 6156 - The library gzip.s7c has been improved to decode also blocks with
 6157   fixed Huffman codes. This type of block is almost never used since
 6158   dynamic Huffman codes compress better.
 6159 - The parsing of bigInteger literals has been improved to support
 6160   literals with bases other than 10 (e.g.: 16#FEDCBA98765434210_).
 6161 - The integer and bigInteger functions str (conversion to string)
 6162   have been changed to use lower case characters for digits larger
 6163   than 9. Now str(48879, 16) returns "beef" instead of "BEEF".
 6164 - The program make7.sd7 and the library make.s7i have been improved
 6165   to support multiple targets and the option -C.
 6166 - The Seed7 compiler has been improved to generate special inline
 6167   code for the case that the C floating point division by zero does
 6168   not result in Infinity, -Infinity or NaN (not a number).
 6169 - The functions chkLiteral and chkBitLength as well as checks for
 6170   shifts with negative shift count have been added to the program
 6171   chkbig.sd7.
 6172 - The function check_division as well as checks for the operator
 6173   /:= (in check_nan) have been added to the program chkflt.sd7.
 6174 - The function check_str in chkint.sd7 has been improved to check
 6175   the new behaviour of the function str with a give base.
 6176 - The makefile mk_clang.mak has been added to support compilation
 6177   with the clang C compiler.
 6178 - The explanations of possible compilation errors in src/read_me.txt
 6179   have been improved.
 6180 - The functions interpreterPath and callOwnProgram have been removed
 6181   from the libraries environment.s7i respectively shell.s7i. This
 6182   functions were not used in any example program.
 6183 - The support for the interpreter option -m (use less memory during
 6184   the analyzing phase) has been removed. On many systems it was a
 6185   noop anyway.
 6186 - Result variables have been renamed in various libraries and example
 6187   programs.
 6188 - The functions find_include_file, print_lib_path, append_to_lib_path
 6189   and init_lib_path have been moved from infile.c to the new file
 6190   libpath.c.
 6191 - The function gen_rtl_array has been defined in the new file
 6192   arrutl.c. The function is used in the files cmdlib.c (functions
 6193   cmd_pipe2, cmd_pty, cmd_start_process) and prglib.c (functions
 6194   prg_exec, prg_fil_parse, prg_str_parse).
 6195 - The interpreter/compiler improvements (option -l) and the new
 6196   function variants in progs.s7i have been realized with changes in
 6197   prg_comp.c, analyze.c, data.h, infile.c, infile.h, info.c, option.h
 6198   and s7.c.
 6199 - The functions prgExec, prgFilParse and prgStrParse in prg_comp.c
 6200   have been improved to support additional parse and execution
 6201   options.
 6202 - The function interpr has been renamed to interpret and moved from
 6203   exec.c to prg_comp.c.
 6204 - The function copy_args has been moved from prclib.c to prg_comp.c.
 6205 - In traceutl.c the function set_trace has been changed and the
 6206   function set_trace2 has been removed. The functions mapTraceFlags,
 6207   mapTraceFlags2 and set_protfile_name have been added.
 6208 - The functions uBigMultiplyAndAdd and bigParseBased have been added
 6209   to big_rtl.c:
 6210 - In big_gmp.c the functions bigBitLength, bigLShift, bigRShift,
 6211   bigLShiftAssign, bigRShiftAssign, bigParse, and bigToInt32 have
 6212   been improved and bigParseBased has been added.
 6213 - To support bigInteger literals with base the file numlit.c has been
 6214   changed. The function readBigBased has been added and readinteger
 6215   has been removed. Several functions in numlit.c have been renamed.
 6216 
 6217 20130105:
 6218 - The Seed7 interpreter was renamed. The new name of the Seed7
 6219   interpreter is s7.
 6220 - Manual, FAQ, read_me files and several example programs were
 6221   updated to use the new name of the Seed7 interpreter (s7).
 6222 - The build process of a package can compile interpreter and compiler
 6223   with (xx and yy must be replaced with a path):
 6224     make S7_LIB_DIR=xx SEED7_LIBRARY=yy depend s7 s7c
 6225 - The function drwOpen in drw_win.c was improved to hide the console
 6226   window, when the program was not started from a console.
 6227 - Descriptions of the operators 'sci' and 'exp' were added to the
 6228   manual.
 6229 - Documentation comments were added to clib_file.s7i.
 6230 - In pixmap_file.s7i the functions for pixmapFontFiles were improved.
 6231 - Interpreter and compiler were improved to allow using winmain as
 6232   main function.
 6233 - In cmd_win.c the function prepareCommandLine was improved and in
 6234   the function cmdStartProcess the flag wShowWindow was changed to 1.
 6235 - The file hi.c was renamed to s7.c.
 6236 - In striutl.c the function escape_command was changed to quote
 6237   commands with special characters under Windows.
 6238 - In striutl.c the function cp_to_command was improved to do a
 6239   quoting under Windows, even when there are no parameters.
 6240 - Parameter names were added to null_file.s7i, osfiles.s7i, time.s7i,
 6241   pixmapfont.s7i, progs.s7i, reference.s7i, seed7_05.s7i, shell.s7i,
 6242   stritext.s7i, text.s7i, rever.sd7 and snake.sd7.
 6243 
 6244 20121221:
 6245 - The Seed7 compiler (s7c) was improved to support constant pixmaps
 6246   (constants with the type PRIMITIVE_WINDOW).
 6247 - The Seed7 compiler was improved to omit array constant
 6248   declarations and initializations for unused array constants.
 6249 - Result variables were renamed in various libraries and example
 6250   programs.
 6251 - The function DRAW_GETPIXEL in graph.s7i was renamed to getPixel.
 6252 - The function imagePixmap in draw.s7i was changed to have one
 6253   parameter instead of two.
 6254 - Pictures of a grating and a vampire were removed from castle.sd7,
 6255   pairs.sd7 and shisen.sd7 and added to pic16.s7i and pic32.s7i.
 6256 - The function getValue was overloaded for PRIMITIVE_WINDOW values
 6257   in the library progs.s7i.
 6258 - Documentation comments were added to the operators & and <& in the
 6259   library string.s7i.
 6260 - Interpreter and compiler were improved to support the action
 6261   DRW_VALUE. The function drw_value was added to drwlib.c and the
 6262   function drwValue was added to ref_data.c.
 6263 - The functions drw_cpy and drwCpy in drwlib.c respectively drw_rtl.c
 6264   were improved to manage the usage_count for assignments like A := A
 6265   correctly.
 6266 - The new function drwRtlImage was added to drw_rtl.c.
 6267 - A check for the window close button (X) was added to the function
 6268   gkbKeyPressed in drw_win.c.
 6269 - The dummy function drwImage in drw_win.c was replaced with a real
 6270   implementation of drwImage.
 6271 - The function drwImage was changed to have one parameter instead of
 6272   two in drw_drv.h, drw_dos.c, drw_win.c and drw_x11.c.
 6273 - The function drwImage in drw_x11.c was improved to call dra_init(),
 6274   when necessary.
 6275 
 6276 20121212:
 6277 - The Seed7 compiler was renamed. The new name of the Seed7 compiler
 6278   is s7c.
 6279 - Manual, FAQ, read_me files and several example programs were
 6280   updated to use the new name of the Seed7 compiler (s7c).
 6281 - A description of ltrim and rtrim and some links were added to the
 6282   manual.
 6283 - The library make.s7i and the example program make7.sd7 were
 6284   improved to execute make commands with predefined macros.
 6285 - The library makedata.s7i was improved to support dependencies
 6286   which contain a space.
 6287 - The library make.s7i was improved to support the command cp -a.
 6288 - A variant of the function popen, with the parameters 'command' and
 6289   'parameters', was added to shell.s7i.
 6290 - An explanation, why & and <& are defined for string concatenation,
 6291   was added to the FAQ.
 6292 - The program tar7.sd7 was improved to accept also DOS paths for all
 6293   file arguments.
 6294 - Documentation comments were added to progs.s7i and reference.s7i.
 6295 - The files drw_win.c, drw_x11.c and gkb_x11.c were improved to
 6296   exit a program when the close button (X) is pressed.
 6297 - The functions refFile, refLine, refParams and refSetParams in
 6298   ref_data.c were improved to raise RANGE_ERROR, when they are
 6299   called with NULL.
 6300 - The function ref_params in reflib.c was improved to call refParams.
 6301 - The makefiles were improved such that 'make s7c' generates an
 6302   executable of the Seed7 compiler.
 6303 - The makefile mk_mingc.mak, which supports the compilation of the
 6304   self extracting version of Seed7, was improved.
 6305 - The support for the unused action REF_NAME was removed.
 6306 
 6307 20121125:
 6308 - The makefiles and the file setpaths.c were improved to accept the
 6309   macros S7_LIB_DIR (Directory with static Seed7 object libraries)
 6310   and SEED7_LIBRARY (Directory with the Seed7 include libraries).
 6311   Now the build process of a package can call make e.g. with:
 6312   make S7_LIB_DIR=/abc/seed7/bin SEED7_LIBRARY=/abc/seed7/lib depend
 6313   This way the two paths are defined in version.h. This defines them
 6314   as default paths in the interpreter executable and in the compiler.
 6315 - An explanation, what a binary Seed7 package should install, was
 6316   added to the FAQ. This can be used as guideline for Seed7 packages.
 6317 - The description of the times-operator in the manual and in
 6318   array.s7i was improved.
 6319 - A description of the function name(PROGRAM), file(PROGRAM) and
 6320   'environment' was added to the manual.
 6321 - The new library environment.s7i was added. Most of the contents of
 6322   this library was extracted from "seed7_05.sd7". The new library is
 6323   included from "seed7_05.s7i", so no change in existing programs is
 6324   necessary.
 6325 - A documentation comment for getSearchPath was added to shell.s7i.
 6326 - The functions ltrim and rtrim were added to the library string.s7i.
 6327 - Test cases for ltrim and rtrim were added to chkstr.sd7.
 6328 - The function getProgramName in arr_rtl.c was improved to do the
 6329   comparison with EXECUTABLE_FILE_EXTENSION correctly.
 6330 - The program tar7.sd7 was improved to accept also DOS paths for the
 6331   file specified with -f.
 6332 - The function homeDir was improved to work with DJGPP (either $HOME
 6333   or C:\ is used).
 6334 - The function prc_cpy in prclib.c was improved.
 6335 - The files executl.c, hshlib.c, ref_data.c, reflib.c and sctlib.c
 6336   were improved to copy the descriptor union with memcpy and to copy
 6337   the posinfo flag with SET_ANY_FLAG, when necessary.
 6338 
 6339 20121104:
 6340 - The new function homeDir was added to the library osfiles.s7i.
 6341   Interpreter and compiler were improved to support homeDir.
 6342 - The libraries makedata.s7i and make.s7i were improved to support
 6343   replacement macros.
 6344 - A check for division by zero with /:= was added to chkflt.sd7.
 6345 - The compiler (comp.sd7) was improved to use definitions of
 6346   NOT_A_NUMBER, POSITIVE_INFINITY and NEGATIVE_INFINITY.
 6347 - The program chkccomp.c was improved. Now it manages the macros
 6348   likely, unlikely, UNISTD_H_PRESENT, POPEN_MISSING, os_utime_orig,
 6349   os_utime, USE_ALTERNATE_UTIME, INCLUDE_SYS_UTIME, USE_LOCALTIME_R,
 6350   USE_LOCALTIME_S, FLOAT_ZERO_DIV_ERROR, CHECK_FLOAT_DIV_BY_ZERO,
 6351   ISNAN_WITH_UNDERLINE and HOME_DIR_ENV_VAR. Additionally chkccomp.c
 6352   does not depend on the definitions of long_long_EXISTS,
 6353   long_long_SUFFIX_LL, __int64_EXISTS, __int64_SUFFIX_LL and
 6354   USE_BUILTIN_EXPECT in chkccomp.h.
 6355 - The functions flt_div and flt_div_assign in fltlib.c were improved
 6356   to work correctly when CHECK_FLOAT_DIV_BY_ZERO is defined.
 6357 - Several #defines were omitted from the makefiles.
 6358 - Explanations of several version.h #defines were added to
 6359   read_me.txt.
 6360 
 6361 20121021:
 6362 - The library vecfont10.s7i, which defines the standard vector font
 6363   with capital height 10, was added. Now mahjong.sd7 and shisen.sd7
 6364   use vecfont10.s7i.
 6365 - The programs mahjong.sd7, pairs.sd7, shisen.sd7 and sokoban.sd7
 6366   were improved to fit into a screen with a resolution of 1024 x 768.
 6367 - The library make.s7i was improved: The parsing of command
 6368   parameters (used by the Unix version of the echo command), was
 6369   improved. The processing of pattern rules was improved (The rule
 6370   with the shortest stem value is used, when several rules match).
 6371 - Functions to read a makefile were moved from make.s7i to the new
 6372   library makedata.s7i.
 6373 - The reading of makefiles was improved: The processing of the gmake
 6374   directives 'ifeq' and 'ifneq' was improved to allow else clauses.
 6375   The processing of the nmake directive 'if' was added. Merging of
 6376   dependencies for rules with the same target was improved.
 6377 - The parse function for time values (library time.s7i) was improved
 6378   to allow fractions of a second.
 6379 - The functions getSubNodes and getContent and a for-loop for xmlNode
 6380   values were defined in the library xmldom.s7i.
 6381 - The compiler was improved to initialize bstring literals correctly,
 6382   when pointers are 64-bit and integers are 32-bit.
 6383 - The font libraries cronos16.s7i, cronos27.s7i, modern27.s7i and
 6384   vecfont18.s7i were improved to include vectorfont.s7i.
 6385 - The font libraries stdfont10.s7i, stdfont12.s7i, stdfont14.s7i,
 6386   stdfont16.s7i, stdfont18.s7i, stdfont20.s7i and stdfont24.s7i were
 6387   improved to include bitmapfont.s7i.
 6388 - The program dnafight.sd7 was improved to limit the speed of the
 6389   animation.
 6390 - The program make7.sd7 was improved to recognize the options
 6391   correctly. Additionally make7 inherits also all improvements of
 6392   makedata.s7i and make.s7i.
 6393 - The program ftp7.sd7 was improved to accept the option -?.
 6394 - The graphic libraries drw_x11.c and drw_win.c were improved to draw
 6395   the background of maximized windows with the color of the last
 6396   clear command.
 6397 
 6398 20121007:
 6399 - An error message, that could occur when the Seed7 interpreter is
 6400   compiled, is now explained in the FAQ and in 'src/read_me.txt'.
 6401 - A description of the for-step-statement was added to the manual.
 6402 - The library make.s7i was improved. Now makefile dependencies can
 6403   contain colons (:) and equal signs (=). The parameters of the echo
 6404   command are parsed better now. Calls of the function callOwnProgram
 6405   are also avoided now. This way the library works correctly, when it
 6406   is used by programs other than make7.sd7.
 6407 - The library tar.s7i was improved to set the file mode, when an
 6408   archive is extracted.
 6409 - Test cases for a variant of the @:= operator, which copies a string
 6410   to another, were added to the program chkstr.sd7.
 6411 - Interpreter and compiler were improved to support the situation,
 6412   when source and destination of the @:= operator (action STR_POSCPY)
 6413   are identical.
 6414 - The compiler was improved to support the action ITF_DESTR.
 6415 - The compiler was improved, to call C compiler and linker with
 6416   specific options, such that unneeded functions are omitted (when
 6417   the linker and executable file format support this feature).
 6418 - The compiler was improved to remove debug symbols, unless called
 6419   with -g (some makefiles now define LINKER_OPT_NO_DEBUG_INFO).
 6420 - The function name(PROGRAM) was improved, to return the program name
 6421   without following symbolic links.
 6422 - The function path(PROGRAM) was improved, to follow symbolic links
 6423   (see function followLink in cmd_rtl.c). Consequently dir(PROGRAM)
 6424   also follows symbolic links.
 6425 - The function CommandLineToArgvW in cmd_win.c was improved.
 6426 - The files itf_rtl.c and itf_rtl.h, which contain interface
 6427   functions, were added.
 6428 - The makefile mk_mingc.mak was added to support compilation of the
 6429   self extracting version of Seed7.
 6430 
 6431 20120923:
 6432 - Experimental support for automatic memory management with reference
 6433   counting was added to the interpreter.
 6434 - The libraries external_file.s7i, field.s7i, stritext.s7i, gzip.s7i,
 6435   listener.s7i, pixmap_file.s7i, shell.s7i, socket.s7i, strifile.s7i,
 6436   dir.s7i, utf16.s7i, utf8.s7i and xmldom.s7i were improved to use
 6437   the function toInterface.
 6438 - The function name(PROGRAM) was improved, to return the name of the
 6439   program without extension and without path.
 6440 - The interpreter was improved to support the action ITF_DESTR.
 6441 
 6442 20120909:
 6443 - The chapters about predefined statements and the foreign function
 6444   interface in the manual, were improved.
 6445 - An explanation, why the div operator is used for integer divisions,
 6446   was added to the FAQ.
 6447 - The FAQ about garbage collection was improved.
 6448 - Links to EBNF syntax descriptions and exceptions were added to the
 6449   HTML version of the manual.
 6450 - EBNF syntax descriptions in the manual were improved.
 6451 - Interpreter and compiler were improved to support the actions
 6452   CMD_ENVIRONMENT and CMD_GET_SEARCH_PATH.
 6453 - The library shell.s7i was improved to define the functions
 6454   getSearchPath and environment.
 6455 - The function path(PROGRAM) was improved to return the accurate
 6456   value under all circumstances.
 6457 - Several preprocessor defines were moved from "common.h to the new
 6458   include file "config.h".
 6459 - In cmdlib.c the function toArraytype() was introduced and used in
 6460   cmd_environment() and cmd_getSearchPath().
 6461 - In cmd_rtl.c the functions add_stri_to_array() and
 6462   complete_stri_array() were introduced and used in read_dir(),
 6463   getSearchPath() and cmdEnvironment().
 6464 - Parameter names in drw_win.c, drw_x11.c and drw_dos.c were changed
 6465   to fit to the names used in graph.s7i.
 6466 - Parameter names in clib_file.s7i, keybd.s7i, sockbase.s7i,
 6467   socket.s7i, utf8.s7i, fil_rtl.c, gkb_rtl.c, kbd_rtl.c, soc_dos.c,
 6468   soc_rtl.c and ut8_rtl.c were changed to fit to each other.
 6469 - The function conv_from_os_stri() was added to striutl.c .
 6470 - The function concat_path in str_rtl.c was improved to work
 6471   correctly, when the relative path contains "..".
 6472 - In several makefiles defines for SEARCH_PATH_DELIMITER and
 6473   os_environ were added and defines for
 6474   MAP_ABSOLUTE_PATH_TO_DRIVE_LETTERS were replaced with
 6475   defines for OS_PATH_HAS_DRIVE_LETTERS.
 6476 - A description of several C preprocessor macros used in "version.h"
 6477   and "config.h" was added to the file "src/read_me.txt".
 6478 - Parameter names were added to function definitions in various
 6479   libraries.
 6480 - Documentation comments were added or improved in the files
 6481   "clib_file.s7i", "external_file.s7i", "socket.s7i", "fil_rtl.c" and
 6482   "striutl.c".
 6483 - The function determineEnvironDefines was added to "chkccomp.c".
 6484 
 6485 20120826:
 6486 - A chapter, which explains the foreign function interface, was added
 6487   to the manual.
 6488 - Syntax descriptions, code examples and tables in the HTML version
 6489   of the manual were improved.
 6490 - Documentation comments were added to the file "striutl.c".
 6491 - A description of several C preprocessor macros used in "version.h"
 6492   was added to the file "src/read_me.txt".
 6493 
 6494 20120806:
 6495 - The new library image.s7i was added. The contents of this library
 6496   was extracted from the program "carddemo.sd7".
 6497 - The new library make.s7i was added. The contents of this library
 6498   was extracted from the program "make7.sd7".
 6499 - The function 'str' and the 'parse' operator were added to the
 6500   library bstring.s7i.
 6501 - The function readDir was added to the library tar.s7i.
 6502 - A documentation comment was improved in the library bigint.s7i.
 6503 - The generation of bstring constants in the compiler (comp.sd7) was
 6504   improved.
 6505 - The function intStrHex was renamed to intStrPow2Base in the files
 6506   "int_rtl.c", "int_rtl.h" and in the compiler. The new function is
 6507   used to convert an integer to a string, when the number base is a
 6508   power of two.
 6509 - The function stri_export was renamed to stri_export_utf8 in the C
 6510   source files.
 6511 - The function cp_to_cstri was renamed to cp_to_cstri8 in the C
 6512   source files.
 6513 - Documentation comments were added and improved in the file
 6514   "striutl.c".
 6515 - The makefile mk_msvc.mak was changed to write a definition of
 6516   LIMITED_CSTRI_LITERAL_LEN to "version.h".
 6517 
 6518 20120721:
 6519 - Documentation comments were improved in the libraries idxarray.s7i,
 6520   array.s7i, dir.s7i, external_file.s7i, osfiles.s7i, duration.s7i
 6521   and time.s7i.
 6522 - Parameter names were added to function definitions in the
 6523   libraries array.s7i, bigfile.s7i, hash.s7i and idxarray.s7i.
 6524 - The compiler was improved to generate better inline code for set
 6525   membership (operator: in).
 6526 - The functions 'cmdFileType' and 'cmdFileTypeSL' in "cmd_rtl.c" were
 6527   improved to return FILE_ABSENT, when the file name is too long
 6528   (stat() respectively lstat() return an error and errno has the
 6529   value ENAMETOOLONG) or when the file name is an empty string.
 6530 - The new libraries subrange.s7i, ref_list.s7i and reference.s7i were
 6531   added. The contents of this libraries were extracted from the
 6532   seed7_05.s7i library.
 6533 
 6534 20120703:
 6535 - The manual was improved to contain more links and to use more
 6536   coloring.
 6537 - Parameter names were added to function definitions in the
 6538   libraries array.s7i, integer.s7i, bigint.s7i, float.s7i, keybd.s7i,
 6539   bitsetof.s7i, idxarray.s7i, boolean.s7i, hashsetof.s7i, socket.s7i,
 6540   char.s7i, file.s7i, bitset.s7i, poll.s7i, sockbase.s7i and
 6541   string.s7i .
 6542 - Documentation comments were improved in the libraries string.s7i,
 6543   poll.s7i and progs.s7i .
 6544 - The new libraries "bstring.s7i" and "category.s7i" were added. The
 6545   contents of this libraries were extracted from the "progs.s7i"
 6546   library.
 6547 - Interpreter and compiler were improved to explain the option -?.
 6548 
 6549 20120617:
 6550 - FAQ and manual were improved to contain more links. The additional
 6551   links improve also the Seed7 homepage.
 6552 - The FAQ answer, which explains abstract data types, was improved.
 6553 - The type 'PRIMITIVE_FILE' was renamed to 'clib_file'.
 6554 - Documentation comments were improved in the libraries array.s7i,
 6555   bigrat.s7i, bitset.s7i, boolean.s7i, integer.s7i, charsets.s7i,
 6556   bigint.s7i, complex.s7i, dir.s7i, echo.s7i, char.s7i, keybd.s7i,
 6557   line.s7i, listener.s7i, null_file.s7i, scanfile.s7i, shell.s7i,
 6558   socket.s7i, stdio.s7i, strifile.s7i, string.s7i, stritext.s7i,
 6559   bigfile.s7i, text.s7i, utf16.s7i, utf8.s7i and wrinum.s7i.
 6560 - The new libraries "enable_input.s7i" and "enable_output.s7i" were
 6561   added. The contents of this libraries were extracted from the
 6562   "enable_io.s7i" library.
 6563 - The new library "clib_file.s7i" was added. The contents of this
 6564   library was extracted from the "external_file.s7i" library.
 6565 - The compiler (comp.sd7) was improved to accept a Windows path.
 6566 - The example program "make7.sd7" was improved to support the
 6567   commands 'ifneq', '-include' and '+='.
 6568 - The program "toutf8.sd7" and the library "charsets.s7i" were
 6569   improved to support the code pages 277, 280 and 297.
 6570 - The control characters of the code pages 037, 273, 285, 500 and
 6571   1047 in "charsets.s7i" were improved.
 6572 
 6573 20120603:
 6574 - An alternate version of the function 'filInputReady' was added to
 6575   the file "fil_unx.c" (thanks to Rainer Weikusat and Geoff Clare
 6576   for their help). The new function is used when "version.h" does
 6577   not define the macro 'read_buffer_empty'.
 6578 - A check and a definition of the macro 'read_buffer_empty' for
 6579   HPUX was added to "chkccomp.c" (thanks to Richard Kettlewell and
 6580   Marc for their suggestions).
 6581 - The example program "make7.sd7" was improved. Now it supports the
 6582   commands 'ifeq', 'wildcard' and 'include'. The commands of a rule
 6583   can now contain empty lines. Pattern rules can now be combined with
 6584   dependency rules (rules without commands).
 6585 - The "ftp7.sd7" example program was improved to support the commands
 6586   'delete' and 'rename'.
 6587 - The FAQ and the manual were improved to contain more links. The
 6588   additional links improve also the Seed7 homepage.
 6589 - The new libraries "array.s7i", "hash.s7i", "bitset.s7i," "set.s7i",
 6590   "bitsetof.s7i", "hashsetof.s7i", "idxarray.s7i" and "struct.s7i"
 6591   were added. The contents of this libraries were extracted from the
 6592   "seed7_05.s7i" library. They are included from "seed7_05.s7i", so
 6593   no change in existing programs is necessary.
 6594 - Documentation comments were added to "array.s7i", "idxarray.s7i",
 6595   "pixmapfont.s7i", "bitset.s7i", "bitsetof.s7i", "hashsetof.s7i",
 6596   "set.s7i", "hash.s7i" and "bigint.s7i".
 6597 - The function 'moveFile' was added to the "ftp.s7i" library.
 6598 - Comment blocks with deactivated code were removed from the
 6599   "seed7_05.s7i" library.
 6600 - The program "chkccomp.c" was improved, to produce no error, when
 6601   the macro 'filInputReady' cannot be defined.
 6602 
 6603 20120520:
 6604 - The FAQ and the manual were improved to contain more links. The
 6605   additional links improve also the Seed7 homepage.
 6606 - Documentation comments were added to "boolean.s7i", "charsets.s7i"
 6607   and "vectorfont.s7i"
 6608 - Documentation comments were improved in "integer.s7i", "font.s7i",
 6609   "duration.s7i", "enable_io.s7i", "listener.s7i", "scanfile.s7i",
 6610   "poll.s7i", "shell.s7i" and "socket.s7i".
 6611 - The function 'bigParse' in "big_rtl.c" was improved, to work up to
 6612   9 times faster. The bigInteger operator 'parse' is implemented with
 6613   'bigParse'.
 6614 - The factorial operator (!) was added to "bigint.s7i".
 6615 - A for-until-loop for 'bitset' was added to "seed7_05.s7i".
 6616 - Tests for the 'parse' operator, when it parses integer literals
 6617   with a + sign, were added to "chkbig.sd7".
 6618 - Tests of the function 'compare' were added to "chkbool.sd7".
 6619 - Tests of the bigInteger operator 'parse' were added to
 6620   "chkexc.sd7".
 6621 - The compiler was improved to generate better inline code for set
 6622   membership (operator: in).
 6623 - The example program "make7.sd7" was improved. Now it accepts :=
 6624   to assign a value to a macro.
 6625 - The libraries "bigint.s7i", "float.s7i" and "math.s7i" were
 6626   improved, to use 'in' parameters instead of 'ref' parameters.
 6627 - Spaces at the end of the line were removed in "file.s7i",
 6628   "ftp.s7i", "osfiles.s7i", "stdio.s7i", "pol_sel.c", "read_me.txt",
 6629   "pol_unx.c" and "soc_rtl.c".
 6630 
 6631 20120506:
 6632 - A typo in the manual, concerning the 'integer' operator 'rpad',
 6633   was fixed (thanks to Robert A Duff for pointing it out).
 6634 - The compiler (comp.sd7) was improved to generate optimized code
 6635   for the integer 'mod' operator (thanks to Andrew Haley,
 6636   Stefan Ram, Scott Fluhrer and Gene for their help).
 6637 - The compiler was improved to generate optimized code for the
 6638   integer operators 'mdiv' and 'mod', when the divisor is a negated
 6639   power of two.
 6640 - The FAQ answers, which explain possible compilation errors and the
 6641   templates of Seed7, were improved.
 6642 - The chapter explaining primitive actions in the manual was
 6643   improved.
 6644 - The compiler was improved to use inline code for set membership
 6645   (operator: in) and set exclusion. The inlining is done instead of
 6646   calling 'setElem' respectively 'setExcl'.
 6647 - The compiler was improved to use 'setIsEmpty' (which is defined in
 6648   "set_rtl.c"), when a set is compared with the empty set (action
 6649   "SET_EQ" and "SET_NE").
 6650 - Interpreter, compiler and runtime library were improved to support
 6651   the actions "PRG_INTERPRETER" (returns the path of the hi
 6652   interpreter), "SET_NEXT" (used in for-loops over sets) and
 6653   "SET_RANGELIT" (used to create sets like {1 .. 5} ).
 6654 - In "chkset.sd7" the tests for set union and set membership were
 6655   improved.
 6656 - The checks of relation operators in "chkset.s7i" were split into
 6657   several functions.
 6658 - The example program "printpi2.sd7" was improved.
 6659 - The function 'bigEqSignedDigit' was added to "big_rtl.c" and
 6660   "big_gmp.c". This function is used in the compiler to optimize
 6661   bigInteger comparisons (= and <>) with small signed numbers.
 6662 - The functions 'reduce' and / in "bigrat.s7i" were improved.
 6663 - The performance of the function setCard in "set_rtl.c" was
 6664   improved.
 6665 - The functions 'setSymdiff' and 'setUnion' were improved to raise
 6666   MEMORY_ERROR, when the computation of the data size would
 6667   overflow.
 6668 - The performance of the function 'prot_set' in "traceutl.c" was
 6669   improved.
 6670 - The example program "make7.sd7" was improved. Now it processes
 6671   make commands in makefiles correctly and accepts tabs before the
 6672   dependencies of a rule. Additionally make7 now allows repeated
 6673   target names when there no commands.
 6674 - Checks for 'mod' and 'mdiv' were added to "chkint.sd7".
 6675 - A documentation comment was added to the function 'cp_to_cstri'
 6676   in the file "striutl.c".
 6677 - The macros 'likely' and 'unlikely' were added to if-statements
 6678   checking for exception conditions in the file "set_rtl.c".
 6679 - A description of possible compilation errors was added to the file
 6680   "src/read_me.txt".
 6681 - In "shell.s7i" the function 'shell' was overloaded and the
 6682   function 'callOwnProgram' was added.
 6683 
 6684 20120415:
 6685 - Documentation comments were added to "shell.s7i".
 6686 - A description of several C preprocessor macros used in "version.h"
 6687   was added to the file "src/read_me.txt".
 6688 - In "chkset.sd7" tests for set difference and symmetric difference
 6689   were added and tests for set intersection and set membership were
 6690   improved.
 6691 - The compiler (comp.sd7) was improved to support the functions
 6692   'pipe2' and 'pty' (actions: CMD_PIPE2 and CMD_PTY).
 6693 - The compiler was improved to provide better optimization for set
 6694   difference, intersection, union and membership.
 6695 - The tracing support for sets in the compiler was improved.
 6696 - The program "chkccomp.c" was improved to use the C compiler to
 6697   determine elements from the FILE structure.
 6698 - The new experimental function 'cmdPty' was added to "cmd_unx.c"
 6699   and "cmd_win.c".
 6700 - The function 'filInputReady' in "fil_unx.c" and "fil_win.c" was
 6701   improved to use the macro 'read_buffer_empty' (which is defined in
 6702   "version.h" by the program "chkccomp.c").
 6703 - The makefiles were changed to write several macro definitions to
 6704   "version.h", before the program "chkccomp.c" is compiled. This way
 6705   "chkccomp.c" gets information about the C compiler from
 6706   "version.h".
 6707 - The functions 'setDiff' and 'setSymdiff' in "set_rtl.c" were
 6708   improved to work correctly for big sets.
 6709 - The function 'setNotElem' was removed from "set_rtl.c" and the
 6710   compiler was changed to use !setElem() instead of setNotElem().
 6711 - The function 'prot_set' in "traceutl.c" was improved to work
 6712   correctly, when 64-bit bitset elements are used.
 6713 
 6714 20120401:
 6715 - The program "chkccomp.c" was changed to define the macros
 6716   'likely' and 'unlikely' only when __GNUC__ >= 3 holds (thanks
 6717   to "Rugxulo" for pointing out, that GCC 2.95.3 does not
 6718   support __builtin_expect() ).
 6719 - The library "modern27.s7i", which defines the vector font
 6720   modern27, was added.
 6721 - The compiler (comp.sd7) was improved to initialize global
 6722   interface variables correctly.
 6723 - The function cmdPipe2() in "cmd_win.c" was improved to work
 6724   correctly.
 6725 - In "drw_win.c" the functions drawRectangle(), drwPArc(),
 6726   drwPFArcPieSlice(), drwPCircle(), drwClear(), drwPFCircle(),
 6727   drwPFEllipse(), drwPLine(), drwPolyLine(), drwFPolyLine() and
 6728   drwPRect() were improved to raise MEMORY_ERROR when CreatePen()
 6729   or CreateSolidBrush() fails.
 6730 - In various makefiles the definition of likely() and unlikely()
 6731   was removed and a definition of USE_BUILTIN_EXPECT was added.
 6732 - The descriptions of paths in "seed7/src/read_me.txt", were
 6733   improved.
 6734 
 6735 20120318:
 6736 - The example program "testfont.sd7" was improved to display more
 6737   fonts and more characters.
 6738 - The library "vectorfont.s7i", which supports vector fonts, was
 6739   added.
 6740 - The libraries "cronos16.s7i", "cronos27.s7i" and
 6741   "vecfont18.s7i", which define the vector fonts cronos16,
 6742   cronos27 and vecFont18 respectively, were added.
 6743 - A standard bitmap font with size 20 was defined in the new
 6744   library "stdfont20.s7i".
 6745 - The pilcrow character was added to the standard bitmap fonts.
 6746 - Some characters in the standard bitmap fonts were improved.
 6747 - The function 'filInputReady' in "fil_unx.c" was improved to
 6748   use poll() instead of select().
 6749 
 6750 20120304:
 6751 - The "ftpserv.sd7" example program was improved to support the
 6752   commands RNFR and RNTO and to work correctly, when the listener
 6753   cannot open a passive data port.
 6754 - The font support was improved, such that caching of character
 6755   pixmaps works.
 6756 - Some characters in the standard bitmap fonts were added or
 6757   improved.
 6758 - The functions 'socSend' and 'socSendto' in "soc_rtl.c" were
 6759   improved to work correctly under 64-bit systems.
 6760 - The function 'fltSci' in "flt_rtl.c", was improved to avoid
 6761   a C compiler warning about the change of a constant value.
 6762 - The function 'redraw' in "drw_x11.c" was changed, such that it
 6763   does not use a parameter of type 'XExposeEvent'.
 6764 - The functions 'drwHeight', 'drwWidth', 'drwXPos' and 'drwYPos'
 6765   in "drw_x11.c" were improved to raise RANGE_ERROR when the
 6766   window does not exist.
 6767 - The function 'handleExpose' was introduced in "gkb_x11.c", to
 6768   handle the job of calling 'redraw'.
 6769 - The type 'unsigned int' was replaced by 'sysizetype' in
 6770   'findid.c', 'findid.h', 'identutl.c', 'identutl.h', 'literal.c',
 6771   'numlit.c', 'scanner.c' and 'symbol.h'.
 6772 - Some improvements were done in 'prg_comp.c', 'reflib.c',
 6773   'analyze.c', 'exec.c', 'infile.c', 'info.c' and 'typlib.c' to
 6774   reduce the number of warnings.
 6775 - Support for the unused action "ENU_SIZE" was removed.
 6776 
 6777 20120219:
 6778 - A call of clearerr(stdin) was added to the function
 6779   kbdKeyPressed() in the file "kbd_inf.c". This fixes a bug, which
 6780   happen under FreeBSD (thanks to Pietro Cerutti for pointing out
 6781   the error and for suggesting this fix).
 6782 - The FAQ answer, which explains the portability of Seed7, was
 6783   improved.
 6784 - The function 'copyFile' was added to the library "file.s7i" and
 6785   the files "ftp.s7i" and "ftpserv.sd7" were changed to use it.
 6786 - The function 'removeFile' was added to the library "ftp.s7i".
 6787 - The function 'signOn' was added to the libraries "listener.s7i"
 6788   and "socket.s7i".
 6789 - The function 'signOff' was improved in "listener.s7i" and
 6790   "socket.s7i", to use a 'socket' instead of a 'PRIMITIVE_SOCKET'
 6791   parameter.
 6792 - The "gkbd.sd7" example program was improved.
 6793 - The "panic.sd7" example program was improved to use DRAW_FLUSH
 6794   less often.
 6795 - The function 'readDir' was added to "osfiles.s7i" as replacement
 6796   for 'read_dir'. The function 'read_dir' is deprecated and
 6797   should not be used.
 6798 - The functions 'open_dir' and 'open_dir_path' were renamed to
 6799   'openDir' and 'openDirPath' respectively.
 6800 - The functions 'find_window', 'enter_window', 'remove_window' and
 6801   'gkbWindow' were moved from "drw_x11.c" to "gkb_x11.c".
 6802 - Trace statements were added to "drw_x11.c" and "gkb_x11.c".
 6803 - A description of several C preprocessor macros used in "version.h"
 6804   was added to the file "src/read_me.txt".
 6805 - The makefiles "mk_bcc32.mak", "mk_bccv5.mak", "mk_cygw.mak",
 6806   "mk_mingw.mak", "mk_msvc.mak", "mk_msys.mak" and "mk_nmake.mak"
 6807   were changed to write a definition of QUOTE_WHOLE_SHELL_COMMAND to
 6808   "version.h".
 6809 
 6810 20120205:
 6811 - FAQ answers, explaining call-by-name and how it is implemented in
 6812   Seed7, were added.
 6813 - The "ftpserv.sd7" example program was improved to work with
 6814   various ftp client programs.
 6815 - The speed of the function 'socLineRead' in "soc_rtl.c" was
 6816   improved (this function implements getln() for sockets).
 6817 - The Unicode support of the "ftp.s7i" library and the "ftp7.sd7"
 6818   example program was improved.
 6819 - Documentation comments were improved in "poll.s7i" and
 6820   "osfiles.s7i".
 6821 - The files "pol_sel.c" and "pol_unx.c" were improved to use the
 6822   const qualifier.
 6823 - The compiler (comp.sd7) was improved to generate optimized code
 6824   for the actions "STR_ELEMCPY" and "STR_POSCPY" (which were used
 6825   by the @:= operator).
 6826 - Test cases for the @:= operator were added to "chkstr.sd7".
 6827 - The program "chkccomp.c" was changed to include "version.h" and
 6828   to define OS_OFF_T_SIZE. This way "chkccomp.c" can use the macro
 6829   definitions for os_off_t, TURN_OFF_FP_EXCEPTIONS and
 6830   DEFINE_MATHERR_FUNCTION from "version.h" instead of "chkccomp.h".
 6831 - The files "cmd_rtl.c" and "fil_rtl.c" were changed to use the
 6832   macro OS_OFF_T_SIZE.
 6833 - In "osfiles.s7i" the type 'fileType' was introduced as result type
 6834   for 'fileType' and 'fileTypeSL'.
 6835 - The function 'str' for the type 'fileMode' was improved in
 6836   "osfiles.s7i".
 6837 - The number of calls of fileno() was reduced in "con_cap.c",
 6838   "con_tcp.c", "kbd_inf.c" and "kbd_poll.c".
 6839 - Result variables were renamed in "external_file.s7i", "ftp.s7i",
 6840   "osfiles.s7i", "shell.s7i", "socket.s7i", "string.s7i", "tar.s7i",
 6841   "utf16.s7i", "utf8.s7i" and "ftpserv.sd7".
 6842 
 6843 20120115:
 6844 - The functions shellEscape and toShellPath were added to the
 6845   "shell.s7i" library.
 6846 - The compiler (comp.sd7) was improved to use 'toShellPath'. Now the
 6847   compiler works for source files, which contain spaces in their
 6848   name.
 6849 - Compiler and interpreter were improved to support the action
 6850   "CMD_SHELL_ESCAPE" (this action implements the function
 6851   'shellEscape').
 6852 - The "ftp7.sd7" example program was improved to support the 'dir'
 6853   command.
 6854 - The "ftpserv.sd7" example program was improved to support the
 6855   commands FEAT, MLST, MLSD, DELE, MODE and STRU.
 6856 - The functions listDir and bigFileSize were added to the "ftp.s7i"
 6857   library.
 6858 - The configuration program "setpaths.c" was improved to support
 6859   the compilation of Seed7 in a directory with an Unicode name,
 6860   which contains characters outside of the Basic Multilingual Plane.
 6861 
 6862 20120101:
 6863 - The type 'pollData' was moved from "socket.s7i" to "poll.s7i".
 6864   The functions supported by 'pollData' are 'clear', 'addCheck',
 6865   'removeCheck', 'getCheck', 'poll', 'getFinding', 'hasNext',
 6866   'iterChecks', 'iterFindings', 'nextFile' and 'for'.
 6867 - The type 'inetListener' was moved from "socket.s7i" to
 6868   "listener.s7i". The functions supported by 'inetListener' are
 6869   'openInetListener', 'close', 'signOff', 'listen', 'accept' and
 6870   'waitForRequest'.
 6871 - The type 'socketAddress' was moved from "socket.s7i" to
 6872   "sockbase.s7i". The functions supported by 'socketAddress' are
 6873   'numericAddress', 'inetSocketAddress', 'inetListenerAddress' and
 6874   'getHostname'.
 6875 - The file "pol_dos.c" was added (thanks to "Rugxulo" for pointing
 6876   out, that it was missing).
 6877 - Support for the actions POL_ADD_READ_CHECK POL_ADD_WRITE_CHECK,
 6878   POL_FILES, POL_HAS_NEXT_READ_FILE, POL_HAS_NEXT_WRITE_FILE,
 6879   POL_NEXT_READ_FILE, POL_NEXT_WRITE_FILE, POL_READY_FOR_READ,
 6880   POL_READY_FOR_WRITE, POL_REMOVE_READ_CHECK,
 6881   POL_REMOVE_WRITE_CHECK and SOC_SELECT_INPUT was removed from
 6882   interpreter and compiler.
 6883 - Support for the actions POL_ADD_CHECK, POL_GET_CHECK,
 6884   POL_GET_FINDING, POL_HAS_NEXT, POL_ITER_CHECKS, POL_ITER_FINDINGS,
 6885   POL_NEXT_FILE, POL_REMOVE_CHECK and SOC_GET_ADDR was added to
 6886   interpreter and compiler.
 6887 - The files "pollib.c", "pollib.h", "pol_dos.c", "pol_sel.c",
 6888   "pol_unx.c", "pol_drv.h", "soclib.c", "soclib.h", "soc_rtl.c" and
 6889   "soc_dos.c" were added or improved.
 6890 - The "ftpserv.sd7" example was improved to take the IP address for
 6891   the "PASV" response from the control socket.
 6892 - The console driver "con_win.c" was improved, such that keypressed
 6893   recognizes control-C as normal keyboard input.
 6894 - The function 'socGets' was improved to avoid realloc(), when
 6895   the string read is shorter than requested.
 6896 
 6897 20111218:
 6898 - The type 'pollData' and the functions 'clear', 'addReadCheck',
 6899   'addWriteCheck', 'removeReadCheck', 'removeWriteCheck', 'poll',
 6900   'readyForRead', 'readyForWrite', 'files', 'hasNextReadFile',
 6901   'hasNextWriteFile', 'nextReadFile' and 'nextWriteFile' were added
 6902   to the "socket.s7i" library.
 6903 - The makefile "mk_djgpp.mak" was improved to use 'djecho' (thanks
 6904   to "Rugxulo" for his help).
 6905 - The library "duration.s7i" was improved to support the operators
 6906   +:= and -:= for the type 'duration'.
 6907 - The function 'startProcess' in the library "shell.s7i" was
 6908   overloaded to work with a single string parameter.
 6909 - The function 'socWrite' in "soc_rtl.c" was improved.
 6910 - Interpreter, compiler and runtime library were improved to support
 6911   'pollData' (polltype) and the actions "POL_ADD_READ_CHECK",
 6912   "POL_ADD_WRITE_CHECK", "POL_CLEAR", "POL_CPY", "POL_FILES",
 6913   "POL_HAS_NEXT_READ_FILE", "POL_HAS_NEXT_WRITE_FILE",
 6914   "POL_NEXT_READ_FILE", "POL_NEXT_WRITE_FILE", "POL_POLL",
 6915   "POL_READY_FOR_READ", "POL_READY_FOR_WRITE",
 6916   "POL_REMOVE_READ_CHECK", "POL_REMOVE_WRITE_CHECK" and "POL_VALUE".
 6917 - The files "pollib.c", "pollib.h", "pol_sel.c", "pol_unx.c" and
 6918   "pol_drv.h" were added to support the type 'pollData'.
 6919 - The "ftpserv.sd7" example program was improved to work silently.
 6920 - In "hsh_rtl.c" the function 'hshIdxWithDefault' was renamed to
 6921   'hshIdxEnterDefault' and a new function 'hshIdxWithDefault' was
 6922   introduced.
 6923 - In "ref_data.c" the functions 'refCmpGeneric' and 'genericCreate'
 6924   were replaced with 'uintCmpGeneric' and 'intCreateGeneric'
 6925   respectively.
 6926 - The program "chkccomp.c" was improved to define _matherr(), which
 6927   handles floating point errors, when necessary.
 6928 
 6929 20111204:
 6930 - The makefile "mk_djgpp.mak" was improved to work for DJGPP under
 6931   DOS (thanks to "Rugxulo" for his help to improve "mk_djgpp.mak").
 6932 - The old makefile "mk_djgpp.mak" was renamed to "mk_djgp2.mak".
 6933 - The option -?, which writes helping information, was added to the
 6934   hi interpreter and to the compiler (comp.sd7).
 6935 - The "ftp7.sd7" example program was improved to support the command
 6936   "help".
 6937 - The "sydir7.sd7" example program was improved to accept Unix and
 6938   DOS paths.
 6939 - The directions N, S, W, E were renamed to NORTH, SOUTH, WEST and
 6940   EAST in "dna_base.s7i", "blue.dna", "green.dna", "indigo.dna",
 6941   "red.dna", "tan.dna", "violet.dna" and "white.dna".
 6942 - Result variables were renamed in "bigrat.s7i", "complex.s7i",
 6943   "rational.s7i" and "time.s7i".
 6944 - Interpreter, compiler and runtime library (files "cmd_unx.c",
 6945   "cmd_win.c", "cmd_drv.h", "cmdlib.c", "cmdlib.h" and "primitiv.c")
 6946   were improved to support the new action "CMD_START_PROCESS".
 6947 - A definition of the function 'startProcess' was added to the
 6948   "shell.s7i" library.
 6949 - The function get_primact in "actutl.c" was improved to suppress
 6950   writing the list of actions, which are implemented by the same
 6951   function.
 6952 - The function timNow() in "tim_dos.c", "tim_unx.c" and "tim_win.c"
 6953   and the functions timFromTimestamp() and timSetLocalTZ() in
 6954   "tim_rtl.c" were improved to use localtime_s(), when the
 6955   prepocessor macro USE_LOCALTIME_S is defined.
 6956 - An include command for "math.s7i" was added to "bas7.sd7",
 6957   "lander.sd7" and "planets.sd7".
 6958 
 6959 20111111:
 6960 - Documentation comments were improved in "dir.s7i", "stdio.s7i"
 6961   and "enable_io.s7i".
 6962 - Test cases for the operators 'sci' and 'exp' in "chkflt.sd7" were
 6963   changed to succeed on all supported platforms.
 6964 - The compiler (comp.sd7) was improved, to create better debugging
 6965   information for compiler generated (DYNAMIC) dispatcher functions.
 6966 - The compiler was improved to define and use the macro 'do_setjmp'
 6967   and to work correctly for empty programs.
 6968 - The program "chkccomp.c" was improved to write one of the
 6969   preprocessor macros ROUND_HALF_TO_EVEN, ROUND_HALF_UP or
 6970   ROUND_HALF_AWAY_FROM_ZERO to "version.h". This macros describe
 6971   the rounding behaviour, when float values are converted to
 6972   strings with 'printf'.
 6973 - Result variables were renamed in "echo.s7i", "gzip.s7i",
 6974   "line.s7i",, "external_file.s7i" "null_file.s7i", "osfiles.s7i",
 6975   "stdio.s7i", "strifile.s7i", "stritext.s7i" and "utf16.s7i".
 6976 - The files "drw_win.c", "fil_win.c" and "striutl.c" were improved
 6977   to reduce the number of compiler warnings.
 6978 
 6979 20111101:
 6980 - Documentation comments were improved in "scanfile.s7i",
 6981   "scanstri.s7i" and "float.s7i".
 6982 - The operators 'sci' and 'exp' were added to "float.s7i". This
 6983   operators write floating point values in scientific notation.
 6984 - Test cases for the operators 'sci' and 'exp' were added to
 6985   "chkflt.sd7".
 6986 - The function 'getInteger' was added to "scanfile.s7i" and
 6987   "scanstri.s7i".
 6988 - The "comanche.sd7" webserver was improved to write information
 6989   about the option -? respectively -h, when an error was found.
 6990 - The compiler (comp.sd7) was improved, to create better debugging
 6991   information for compiler generated create, destroy, copy and
 6992   times functions (actions: ARR_CREATE, HSH_CREATE, SCT_CREATE,
 6993   ARR_DESTR, HSH_DESTR, SCT_DESTR ARR_CPY, HSH_CPY, SCT_CPY and
 6994   ARR_TIMES).
 6995 - The creation of code for for-loops in the compiler was improved.
 6996 - Test cases for the for-loop were added to "chkprc.sd7".
 6997 - Interpreter, compiler and runtime library (function 'fltSci' in
 6998   "flt_rtl.c") were improved to support the new action "FLT_SCI".
 6999 - The debugging options in "mk_msvc.mak" were improved.
 7000 - Parameters were renamed in the files "color.s7i", "complex.s7i",
 7001   "time.s7i", "duration.s7i" and "shell.s7i".
 7002 
 7003 20111014:
 7004 - The FAQ answer, explaining the -v option of the interpreter, was
 7005   improved.
 7006 - The function 'skipSpaceOrTab' was added to "scanstri.s7i".
 7007 - Documentation comments were added to "utf8.s7i".
 7008 - The compiler (comp.sd7) was improved to generate better code for
 7009   the actions "INT_POW" and "STR_APPEND".
 7010 - The support for macros, in the "make7.sd7" utility, was improved.
 7011 - The files "drw_x11.c", "findid.h" and "scanner.c" were changed to
 7012   reduce the number of warnings issured by clang.
 7013 - Functions were moved from "kbd_rtl.c" to the new file "gkb_rtl.c"
 7014   and prototypes were moved from "kbd_rtl.h" to the new file
 7015   "gkb_rtl.h". This was done together with changes in the makefiles,
 7016   to avoid linker errors, when programs are compiled with -O2.
 7017 - The function 'processOptions' in "hi.c" was improved to support
 7018   the new logic of the option -v.
 7019 
 7020 20111003:
 7021 - A check for MEMORY_ERROR was removed from "chkexc.sd7" (thanks to
 7022   Pietro Cerutti for pointing out problems under 64-bit FreeBSD).
 7023 - Documentation comments in "complex.s7i", "draw.s7i", "float.s7i",
 7024   "external_file.s7i", "forloop.s7i", "html_ent.s7i", "keybd.s7i",
 7025   "null_file.s7i", "socket.s7i", "stdio.s7i" and "xml_ent.s7i" were
 7026   improved.
 7027 - The compiler (comp.sd7) and the makefiles were improved, such that
 7028   executables only link console libraries (ncurses, etc.), when
 7029   necessary.
 7030 - The function 'encodeHtmlContent' was added to "html_ent.s7i".
 7031 - The function 'fromPercentEncoded' was moved from "cgi.s7i" to
 7032   "encoding.s7i".
 7033 - The functions 'toPercentEncoded', 'toUrlEncoded' and
 7034   'fromUrlEncoded' were added to the library "encoding.s7i".
 7035 - Compiler, runtime libraries and makefiles were improved to support
 7036   the configuration macros CONSOLE_LIB (name of the Seed7 console
 7037   library) and SYSTEM_CONSOLE_LIBS (link option for the console
 7038   library of the OS).
 7039 - The makefiles were improved to write all dependencies in the file
 7040   "depend", instead of "depend", "a_depend", "b_depend", "c_depend"
 7041   and "d_depend".
 7042 
 7043 20110918:
 7044 - Support for 'drwGetPixel' was added to the compiler (thanks to
 7045   DJ Redick, for reporting compilation problems with wator.sd7").
 7046 - FAQ answers, explaining how interpreter and compiler search for
 7047   include libraries, were improved.
 7048 - The function 'str', which converts a bigInteger number to a string
 7049   representation with a given base, was added to "bigint.s7i".
 7050 - Documentation comments in "float.s7i" and "socket.s7i" were
 7051   improved.
 7052 - In "float.s7i" the function 'isnan' was renamed to 'isNaN' and the
 7053   function 'isNegativeZero' was added.
 7054 - Runtime library and compiler (comp.sd7) were improved, such that
 7055   float operations work according to IEEE 754.
 7056 - The test program "chkflt.sd7" was improved to check IEEE 754
 7057   floating point conformance.
 7058 - The program "chk_all.sd7" was improved to call "chkflt.sd7".
 7059 - The "bas7" example program was improved (functions 'ERL' and 'LIST'
 7060   added, division by zero handled correctly).
 7061 - BigInteger multiplication in the compiler was improved to use
 7062   'bigSquare', when a number is multiplied with itself.
 7063 - The compiler was improved to take into account that the actions
 7064   "SCR_" were renamed to "CON_".
 7065 - The performance of 'bigCmp' and 'bigFromInt32' in "big_rtl.c", was
 7066   improved.
 7067 - The program "chkccomp.c" was improved to check the IEEE 754
 7068   support. It checks comparisons with NaN, the creation of negative
 7069   Zero and the 'pow' function with a zero base.
 7070 - To reach IEEE 754 floating point conformance the functions flt_cmp,
 7071   flt_eq, flt_ge, flt_gt, flt_isnegativezero, flt_le, flt_lt, flt_ne,
 7072   flt_pow in "fltlib.c" and the functions setupFloat, fltCmp, fltEq,
 7073   fltGe, fltGt, fltIsNegativeZero, fltLe, fltLt, fltPow, fltStr in
 7074   "flt_rtl.c" were added or improved.
 7075 - The makefiles were improved to link "chkccomp.c" with the math
 7076   library (e.g.: -lm).
 7077 
 7078 20110904:
 7079 - Declarations were moved from "seed7_05.s7i" to the new library
 7080   "forloop.s7i".
 7081 - For-loops, with traverse array elements and keys, were introduced
 7082   in "seed7_05.s7i".
 7083 - Test cases for bigInteger exponentiation, when it raises an
 7084   exception, were added to "chkexc.sd7".
 7085 - The recognition of constant expressions and their use to optimize
 7086   the program in the compiler ("comp.sd7"), was improved.
 7087 - Compiler options, to control the optimization of constant
 7088   expressions, were introduced. Allowed options are -oc0 (no
 7089   optimization), -oc1 (default), -oc2 and -oc3 (best optimization).
 7090 - The functions 'bigSquare' and 'bigLog2BaseLShift' were added to
 7091   "big_rtl.c" and "big_gmp.c" and used by the compiler.
 7092 - The functions 'uBigDigitSquare', 'uBigKaratsubaSquare' and
 7093   'uBigSquareK' were added to "big_rtl.c".
 7094 - The functions 'uBigDecr', 'uBigMultNegativeWithDigit',
 7095   'uBigMultPositiveWithNegatedDigit', 'bigAbs', 'bigGrow',
 7096   'bigMultSignedDigit', 'bigRShiftAssign' and 'bigShrink' in
 7097   "big_rtl.c" were improved.
 7098 - A free list memory management for 'biginttype' (bigInteger) values
 7099   was introduced in "big_gmp.c".
 7100 - All occurrences of the macro UTF32_STRINGS in *.c and *.h files
 7101   were removed. Strings will always use UTF-32 encoded characters.
 7102   Strings restricted to byte elements must use a different type.
 7103 - The functions 'conWrite' (in "con_rtl.c") and 'conText' (in
 7104   "con_win.c") were improved to allow writing Unicode characters to
 7105   the console.
 7106 - The random number generator (functions 'uint_rand' and 'intRand'
 7107   in "int_rtl.c") was improved.
 7108 - The functions 'stri_to_wstri' and 'stri_to_bstriw' were added to
 7109   "striutl.c".
 7110 - The experimental function 'inputReady' was added to "file.s7i",
 7111   "external_file.s7i", "comp.sd7", "fil_unx.c", "fil_win.c" and
 7112   "fil_drv.h". Because of buffering issues, 'inputReady' does
 7113   currently not work correctly for pipes.
 7114 - Support for 'SOC_INPUT_READY' was added to the compiler (comp.sd7).
 7115 - The experimental function pipe2 was added to "shell.s7i".
 7116 - Test cases for bigInteger multiplication and squaring were added
 7117   to "chkbig.sd7".
 7118 - The type 'flisttype' was introduced in "common.h" and used in
 7119   "heaputl.h", "big_rtl.c" and "big_gmp.c".
 7120 
 7121 20110816:
 7122 - An explanation how the syntax of Seed7 is defined, was added to
 7123   the FAQ.
 7124 - Documentation comments were added to "math.s7i", "shell.s7i"
 7125 - A declaration of Euler's number was added to "math.s7i".
 7126 - The function 'getCommandLineWord' was added to "scanstri.s7i".
 7127 - The functions 'shell', 'cmd_sh', 'popen' and 'popen8' in
 7128   "shell.s7i" were improved to work correctly under the supported
 7129   operating systems, even when command and parameters contain
 7130   spaces.
 7131 - The library "screen.s7i" was renamed to "console.s7i" and the
 7132   function 'open(SCREEN)' was renamed to 'open(CONSOLE)'.
 7133 - The makefile "mk_bcc32.mak" was improved to work correctly for
 7134   version 6.71 of bcc32 (thank you to the anonymous google account
 7135   user, for posting his findings to the Seed7 forum).
 7136 
 7137 20110801:
 7138 - The left and right shift operators for bigInteger were improved
 7139   to work with negative shift counts. Left shifting with a negative
 7140   shift count results in a right shift. Right shifting with a
 7141   negative shift count results in a left shift.
 7142 - The interpreter was improved to default to non-verbose program
 7143   parsing (verbose parsing is done with -v or -v2).
 7144 - The chapter explaining 'float' in the manual was improved.
 7145 - The "draw.s7i" library was improved to contain the functions
 7146   'getPixelColor' (obtain the color of a specified pixel from a
 7147   window or pixmap) and 'pixelToColor' (convert a pixel value to a
 7148   color).
 7149 - The function 'newPixmap' in "draw.sd7" and the files "drw_x11.c"
 7150   and "drw_win.c" were improved to allow creating pixmaps, when no
 7151   window was opened.
 7152 - Documentation comments were added to "integer.s7i", "string.s7i"
 7153   and "wrinum.s7i".
 7154 - The function 'inputReady' was added to the "socket.s7i" library.
 7155 - The "string.s7i" library, interpreter and compiler were improved
 7156   to support an overloaded version of the @:= operator. With
 7157   stri @:= [5] "abc"; the characters 5 to 7 in stri are overwritten
 7158   with "abc" (the primitive action is "STR_POSCPY").
 7159 - The function 'daysInMonth' was added to the "time.s7i" library.
 7160 - Declarations were moved from "seed7_05.s7i" to the new library
 7161   "char.s7i".
 7162 - Checks were added to "chkbig.sd7", "chkexc.sd7", "chkstr.sd7"
 7163 - The performance of 'uBigIncr', 'uBigDecr', 'bigDecr', 'bigIncr',
 7164   'bigPred', 'bigPredTemp', 'bigSucc' and 'bigSuccTemp' in
 7165   "big_rtl.c", was further improved.
 7166 - The performance of 'bigImport' and 'bigCLit' in "big_rtl.c", was
 7167   improved.
 7168 - The handling of the action "ARR_IDX" in the compiler (comp.sd7)
 7169   was improved.
 7170 - The functions 'bigLShift', 'bigLShiftAssign', 'bigRShift' and
 7171   'bigRShiftAssign' in "big_rtl.c" were adjusted to the new shift
 7172   behaviour for bigInteger values.
 7173 - The prototypes of 'wgetenv' and 'wsetenv' in "cmd_win.c" were
 7174   improved to use the const qualifier.
 7175 - The macros HEAP_REALLOC_BIG and REALLOC_BIG_CHECK_SIZE in
 7176   "big_rtl.c" and the macros HEAP_REALLOC_STRI, GROW_STRI and
 7177   REALLOC_STRI_CHECK_SIZE in "heaputl.h" were improved to avoid
 7178   unused expression results (which get a warning with clang).
 7179 - The operator lpad0 (function strLpad0 in "str_rtl.c") was improved
 7180   to add zero characters ('0') after an optional leading sign
 7181   ('+' or '-').
 7182 
 7183 20110717:
 7184 - FAQ answers, explaining how interpreter and compiler look for
 7185   include libraries, were improved.
 7186 - The 'str' function for 'duration' values was improved to provide
 7187   micro seconds, when they are not zero.
 7188 - Two 'getHttp' functions in "gethttp.s7i" were improved to allow
 7189   redirections which refer to other redirections.
 7190 - A documentation comment was written for 'getHostname' in
 7191   "socket.s7i".
 7192 - Checks for left shift in "chkint.sd7" were improved to check only
 7193   cases were no overflow occurs.
 7194 - Checks for the 'pos' function were added to "chkstr.sd7".
 7195 - The performance of 'uBigIncr', 'uBigDecr', 'bigDecr', 'bigIncr',
 7196   'bigPred', 'bigPredTemp', 'bigSucc' and 'bigSuccTemp' in
 7197   "big_rtl.c", was improved.
 7198 - The functions 'processBackslash' and 'CommandLineToArgvW' were
 7199   added to "cmd_win.c".
 7200 - The function 'wgetenv_wstri' was renamed to 'wgetenv' in
 7201   "cmd_win.c".
 7202 - The functions gkbGetc, processEvents, gkbKeyPressed,
 7203   mouseButtonPressed, keyboardButtonPressed, gkbButtonPressed,
 7204   gkbRawGetc, gkbButtonXpos, gkbButtonYpos and drwFlush were moved
 7205   from "drw_x11.c" to the new file "gkb_x11.c".
 7206 - The performance of 'strPos' in "str_rtl.c", was improved.
 7207 - The compiler was improved to generate the function
 7208   'int_raise_error' and to use the function 'raiseError' to create
 7209   calls of 'int_raise_error'.
 7210 - The compiler (comp.sd7) was improved to generate better code for
 7211   the action "REF_TRACE", when the object category is REFOBJECT.
 7212 - The generation of the string constant table, in the compiler, was
 7213   improved.
 7214 - The configuration macro OS_PATH_WCHAR was renamed to OS_STRI_WCHAR
 7215   in several files.
 7216 - The macro os_getenv_string_free was defined in "os_decls.h".
 7217 - The functions seekFileLength, offsetTell and offsetSeek in
 7218   "fil_rtl.c" were improved to provide their functionality optionally
 7219   with os_fgetpos and os_fsetpos.
 7220 - The function offsetSeek in "fil_rtl.c" was improved to return -1,
 7221   when the offset does not fit into the offset type used by the seek
 7222   function of the operating system.
 7223 - Makefiles and C source files were changed to use 'os_fopen' instead
 7224   of 'wide_fopen' and 'fopen'.
 7225 
 7226 20110703:
 7227 - A new example program (ftpserv.sd7), a FTP (file transfer protocol) server,
 7228   was added.
 7229 - The type listener (defined in "socket.s7i") was improved. Now a listener
 7230   manages its accepted sockets.
 7231 - The new function 'waitForRequest' was added to "socket.s7i". It allows to
 7232   wait until a request can be read or an incoming connection is accepted.
 7233   With 'waitForRequest' a server is able to handle interleaved requests from
 7234   multiple clients.
 7235 - The functions 'eof' and 'hasNext' in "socket.s7i" were improved to work
 7236   like the corresponding functions of other files.
 7237 - The type socketAddress (defined in "socket.s7i") was improved to support
 7238   comparisons with '=' and '<>'.
 7239 - The compiler (comp.sd7) and the makefiles were improved, such that
 7240   executables only link graphic libraries (X11 or gdi), when necessary.
 7241 - The makefile mk_djgpp.mak was introduced. It allows compilation under DOS
 7242   with DJGPP.
 7243 - Support for Cygwin was improved to allow graphics with Cygwin/X.
 7244 - The functions 'compare' and 'hashCode' were added to the "file.s7i"
 7245   library. This allows files as keys of hash tables.
 7246 - Documentation comments were added or improved in the files "complex.s7i",
 7247   "file.s7i", "font.s7i" and "socket.s7i".
 7248 - The "ftp.s7i" library was improved to accept multiple line responses.
 7249 - The function 'quoteHtmlAttrValue' was added to "html_ent.s7i".
 7250 - The functions 'clear' in "screen.s7i" and "windows.s7i" were improved to
 7251   position the cursor in the top left edge.
 7252 - The "comanche.sd7" webserver was improved to allow the specification of a
 7253   port and to write help information, when it is called with -h or -? .
 7254 - The "make7.sd7" utility was improved to support the option -i .
 7255 - The meaning of the configuration macros SEED7_LIB, COMP_DATA_LIB and
 7256   COMPILER_LIB was changed to contain library names without path.
 7257 - Compiler, runtime libraries and makefiles were improved to support the
 7258   configuration macros DRAW_LIB (name of the Seed7 graphic library),
 7259   SYSTEM_DRAW_LIBS (link option for the graphic library of the OS) and
 7260   S7_LIB_DIR (absolute path of the Seed7 runtime libraries).
 7261 - The new file "os_decls.h", which defines macros for OS calls and structs,
 7262   was added. The definitions in "os_decls.h" were moved from "common.h".
 7263 - The file "setpaths.c" was improved to work under DOS and to be able to
 7264   handle the codepages 437 and 850.
 7265 - Functions in "striutl.h" were improved to decode operating system strings
 7266   with UTF-16 surrogate pairs to the UTF-32 strings of Seed7. Decoding and
 7267   encoding between codepages (437 and 850 are supported) and the UTF-32
 7268   strings of Seed7 was also added.
 7269 - The function 'socSelectInput' (defined as 'selectInput' with the action
 7270   "SOC_SELECT_INPUT" in "socket.s7i") was added to "soc_rtl.c".
 7271 - The function 'socInetAddr' in "soc_rtl.c" (defined as 'inetSocketAddress'
 7272   with the action "SOC_INET_ADDR" in "socket.s7i") was improved to return
 7273   an empty socket address when the host could not be found.
 7274 - The function 'openInetSocket' in "socket.s7i" was improved to return
 7275   STD_NULL when the socked could not be opened.
 7276 - The compiler was improved to support the actions "SOC_HAS_NEXT" and
 7277   "SOC_SELECT_INPUT".
 7278 - The functions 'readVolumeName' and 'closeVolumeList' were moved from
 7279   "cmd_win.c" to "dir_rtl.c".
 7280 - The function 'openVolumeList' was added to "cmd_unx.c".
 7281 - The functions 'drwOpen' and 'drwOpenSubWindow' were changed to raise
 7282   FILE_ERROR when it is not possible to open a window.
 7283 - Calls of 'getenv' in 'examineSearchPath' ("arr_rtl.c") and
 7284   'init_lib_path' ("infile.c") were replaced with 'os_getenv'.
 7285 - Several explanations were added to the file "src/read_me.txt".
 7286 - The file "soc_dos.c" was added and the files "scr_dos.c" and "scr_wat.c"
 7287   were improved.
 7288 - The function 'prot_os_stri' was added to "traceutl.c".
 7289 - The handling of the element 'tm_isdst' from 'struct tm' (filled when
 7290   localtime() is called) was changed. Now the the flag 'is_dst' is only
 7291   set when tm_isdst > 0 holds.
 7292 
 7293 20110619:
 7294 - A new example program (ftp7.sd7), an FTP internet file transfer program,
 7295   was added.
 7296 - The "ftp.s7i" library, which supports the FTP protocol, was added.
 7297 - The functions 'numericAddress', 'service' and 'getHostname' were added to
 7298   the "socket.s7i" library.
 7299 - Support for the actions SOC_ADDR_NUMERIC, SOC_ADDR_SERVICE and
 7300   SOC_GET_HOSTNAME were added to the compiler (comp.sd7).
 7301 - The compiler was improved to recognize unsupported options and superfluous
 7302   parameters.
 7303 - The functions 'socAddrNumeric', 'socAddrService', 'socGetAddr', 'socSelect',
 7304   'socSelectOne', 'socGetHostname' and 'socInputReady' were added to
 7305   "soc_rtl.c" (some were commented out).
 7306 - The functions 'select_addrinfo' and 'dump_addrinfo' in "soc_rtl.c" were
 7307   improved.
 7308 - The functions 'soc_addr_numeric', 'soc_addr_service', 'soc_get_addr',
 7309   'soc_get_hostname', 'soc_input_ready' and 'soc_select' were added to
 7310   "soclib.c" (some were commented out).
 7311 - The file "soc_rtl.c" was improved to reduce the number of compiler warnings.
 7312 - Documentation comments were improved in the file "socket.s7i".
 7313 - Compiler, runtime libraries and makefiles were improved to support the
 7314   configuration macro CPLUSPLUS_COMPILER.
 7315 
 7316 20110605:
 7317 - The new libraries "boolean.s7i", "integer.s7i" and "string.s7i" were
 7318   added. The contents of this libraries were extracted from the "seed7_05.s7i"
 7319   library. They are included from "seed7_05.s7i", so no change in existing
 7320   programs is necessary.
 7321 - Declarations of color constants were moved from "draw.s7i" to "color.s7i".
 7322 - The declaration of 'graph_file' was moved from "draw.s7i" to the new
 7323   library "graph_file.s7i".
 7324 - The declaration of 'duration' was moved from "time.s7i" to the new
 7325   library "duration.s7i".
 7326 . The declaration of 'pixmapFontFile' was moved from "pixmapfont.s7i" to
 7327   the new library ""pixmap_file.s7i".
 7328 - The functions 'getATime', 'getCTime', 'getMTime', 'setATime' and 'setMTime'
 7329   were moved from "time.s7i" to "osfiles.s7i"
 7330 - The function 'bigFileSize' was moved from "bigfile.s7i" to "osfiles.s7i".
 7331 - Documentation comments were added or improved in the files
 7332   "bigint.s7i", "bigrat.s7i", "bitmapfont.s7i", "complex.s7i", "dir.s7i",
 7333   "duration.s7i", "echo.s7i", "enable_io.s7i", "external_file.s7i",
 7334   "file.s7i", "float.s7i", "font.s7i", "graph_file.s7i", "integer.s7i",
 7335   "keybd.s7i", "line.s7i", "math.s7i", "null_file.s7i", "osfiles.s7i",
 7336   "pixmap_file.s7i", "rational.s7i", "screen.s7i", "socket.s7i", "stdio.s7i",
 7337   "strifile.s7i", "string.s7i", "utf16.s7i", "text.s7i", "time.s7i" and
 7338   "window.s7i".
 7339 - The function 'read_zip_dir' was added to the "zip.s7i" library.
 7340 - Checks for length, tell and seek with STD_NULL were added to "chkexc.sd7".
 7341 - Interpreter, compiler and runtime library were improved to support the
 7342   action STR_RIPOS. This allows searching for a string from a given position
 7343   to the left.
 7344 - Checks for the function 'rpos' were added to "chkstr.sd7".
 7345 - Documentation comments were added or improved in the files "big_rtl.c",
 7346   "str_rtl.c" and "int_rtl.c".
 7347 - The experimental actions REF_CAST, ITF_TO_HEAP and ITF_TO_INTERFACE were
 7348   added.
 7349 - The functions 'disconnect_entity' and 'disconnect_param_entities' were
 7350   added to "name.c".
 7351 - The function 'act_create' in "actlib.c" was improved to remove the names
 7352   from the formal parameters. This is done with 'disconnect_param_entities'.
 7353 
 7354 20110522:
 7355 - FAQ answers, explaining that Seed7 is not a descendant of Pascal and
 7356   how Seed7 uses abstract data types, were added.
 7357 - Documentation comments were added or improved in the files "bigfile.s7i",
 7358   "bigint.s7i", "bigrat.s7i", "binary.s7i", "cgi.s7i", "charsets.s7i",
 7359   "complex.s7i", "encoding.s7i", "float.s7i", "getf.s7i", "gzip.s7i",
 7360   "inifile.s7i", "keybd.s7i", "rational.s7i", "shell.s7i", "socket.s7i",
 7361   "strifile.s7i", "stritext.s7i", "time.s7i", "utf16.s7i", "utf8.s7i",
 7362   "fil_rtl.c" and "ut8_rtl.c".
 7363 - The new libraries "color.s7i", "enable_io.s7i", "external_file.s7i",
 7364   "file.s7i", "null_file.s7i", "osfiles.s7i", "stdio.s7i", and "text.s7i"
 7365   were added. The contents of this libraries were extracted from the
 7366   "seed7_05.s7i" library. Programs, which need functionality from
 7367   "text.s7i", "osfiles.s7i" or "color.s7i", must now include them.
 7368 - To keep basic compatibility, the "stdio.s7i" library is included from
 7369   "seed7_05.s7i", but in a future version this may change. To cope with
 7370   this change programs, which use standard I/O, should include "stdio.s7i".
 7371 - The interpreter and the runtime library were improved to support forward
 7372   declarations of variables (the action DCL_FWDVAR is used for this purpose).
 7373 - All usages of the function 'fileExists' and its definition in the
 7374   "seed7_05.s7i" library, were removed. The functions 'fileType' and
 7375   'fileOpenSucceeds' can be used as replacement.
 7376 - Checks for 'sqrt' were added to the "chkbig.sd7" program.
 7377 - The bigInteger 'sqrt' function was improved, to return 0_ for sqrt(0_)
 7378   instead of raising an exception.
 7379 - The logic of 'null_file' and 'socket' was changed, such that the functions
 7380   'length', 'seek' and 'tell' raise FILE_ERROR (This files are not seekable).
 7381 - The function 'replaceHexChars' in "cgi.s7i" was renamed to
 7382   'fromPercentEncoded'.
 7383 - The function 'removeUtf16SurrogatePairs' in "charsets.s7i" was renamed
 7384   to 'replaceUtf16SurrogatePairs'.
 7385 - The new function 'openSocket' was introduced in "socket.s7i".
 7386 - Unnecessary definitions were removed from "graph.s7i".
 7387 
 7388 20110508:
 7389 - FAQ answers about Seed7s application area, Unicode support, Seed7s
 7390   closures and how the compiler implements them, were added.
 7391 - A new example program (sydir7.sd7), an utility to synchronize directory
 7392   trees, was added.
 7393 - The comanche.sd7 webserver was improved to use the Seed7 interpreter (hi)
 7394   to execute CGI scripts with the extension ".sd7".
 7395 - Interpreter, compiler and runtime library were improved to support the
 7396   action CMD_TO_OS_PATH.
 7397 - The compiler (comp.sd7) was improved to create #line directives with the
 7398   path notation of the operating system.
 7399 - The file "setpaths.c" was added. It is used during the make process to
 7400   write the configuration macros SEED7_LIB, COMPILER_LIB, COMP_DATA_LIB
 7401   and SEED7_LIBRARY to the file "version.h".
 7402 - The makefiles mk_mingw.mak, mk_nmake.mak, mk_msvc.mak, mk_bcc32.mak and
 7403   mk_bccv5.mak were improved to use the new file "setpaths.c", instead of
 7404   creating their own versions of "setpaths.c".
 7405 - The configuration macros SEED7_LIB, COMPILER_LIB, COMP_DATA_LIB and
 7406   SEED7_LIBRARY were changed to use the standard path representation and
 7407   UTF-8 encoding.
 7408 - The function relativeToProgramPath was added to the file "striutl.c".
 7409 
 7410 20110424:
 7411 - Information about the lines of code in Seed7 was added to the FAQ.
 7412 - The FAQ answers about supported operating systems and the analyze
 7413   phase of the interpreter, were improved.
 7414 - Several spelling errors in the FAQ and in the manual were fixed.
 7415 - The appearance of tables in the FAQ and in the manual was improved.
 7416 - Variants of the function 'timAwait', which work with poll() and ppoll(),
 7417   were added to the file "tim_unx.c".
 7418 - The makefiles "makefile", "mk_linux.mak", "mk_cygw.mak" and "mk_osx.mak"
 7419   were improved to select one version of the function 'timAwait'.
 7420 - Descriptions of the configuration macros AWAIT_WITH_POLL,
 7421   AWAIT_WITH_PPOLL, AWAIT_WITH_SIGACTION and AWAIT_WITH_SIGNAL were added
 7422   to the file "src/read_me.txt".
 7423 
 7424 20110403:
 7425 - The compiler (comp.sd7) was improved to generate less code to initialize
 7426   arrays. Repeated elements in array initializations are recognized and
 7427   the initialization is done with loops instead of individual assignments.
 7428   When compiling panic.sd7 this optimization reduces the size of the
 7429   generated C program by 77% and the size of the executable by 69%.
 7430 - The compiler (comp.sd7) was improved to generate string literals with
 7431   reduced space requirements.
 7432 - The function 'getArgv' in "arr_rtl.c" was changed to assume that the
 7433   parameters 'arg_0' and 'exePath' are not NULL.
 7434 - The code, to recognize constant expressions in the compiler, was improved.
 7435 - The superfluous functions 'gkbXpos' and 'gkbYpos' were removed from
 7436   "drw_dos.c".
 7437 
 7438 20110320:
 7439 - An explanation where the interpreter looks for include files, was added to
 7440   the FAQ.
 7441 - An explanation how the directory of the predefined include libraries
 7442   is determined, was added to the FAQ.
 7443 - An explanation how the Seed7 compiler gets information about C compiler and
 7444   runtime, was added to the FAQ.
 7445 - A description of several C preprocessor macros used in "version.h" was
 7446   added to the file "src/read_me.txt".
 7447 - Missing functions were added to the file "drw_dos.c".
 7448 - The function 'bstTail' was added to the file "bst_rtl.c".
 7449 
 7450 20110306:
 7451 - The support for CGI programs in the comanche.sd7 webserver was improved.
 7452 - The first steps towards evaluating pure functions in the compiler (when they
 7453   are called with constant parameters), were done.
 7454 - The compiler (comp.sd7) was improved to generate code with fewer temporary
 7455   variables for the actions SET_ELEM and SET_NOT_ELEM.
 7456 - The function 'evaluate' (defined in "progs.s7i" and implemented in "exec.c",
 7457   "prglib.c" and "prg_comp.c") was improved to work correctly when the
 7458   evaluation raises an exception.
 7459 - Parameter names were added to the prototypes in the files "exec.h",
 7460   "executl.h", "expr.h", "identutl.h", "match.h", "objutl.h", "name.h",
 7461   "object.h", "parser.h", "runerr.h", "symbol.h" and "token.h".
 7462 - The files "memory.c" and "memory.h" were renamed to "objutl.c" and
 7463   "objutl.h" respectively.
 7464 - The function 'uintCmpGeneric' was introduced in the file "int_rtl.c" and
 7465   used in compiled programs.
 7466 - The example programs "chk_all.sd7" and "chkprc.sd7" were improved.
 7467 - The file "drw_x11.c" was changed to reduce the number of warnings generated
 7468   by the C compiler.
 7469 - Missing functions were added to the file "drw_dos.c".
 7470 
 7471 20110220:
 7472 - The handling of closure parameters in the compiler (comp.sd7) was improved.
 7473 - A free string memory management for small strings was introduced in
 7474   "heaputl.h". This improves the performance of some programs with string
 7475   processing by up to 20 percent.
 7476 - The "socket.s7i" library was improved to provide protocol independent
 7477   network access.
 7478 - The function 'addrFamily' was added to the "socket.s7i" library.
 7479 - Several changes were done to support compiling with a C++ compiler.
 7480 - The compiler (comp.sd7) was improved to generate runtime library prototypes
 7481   with const qualifier.
 7482 - The macros 'likely' and 'unlikely' were added to if-statements checking for
 7483   exception conditions in the files "cmd_rtl.c" and "soc_rtl.c".
 7484 - The const qualifier was added to function prototypes in "hsh_rtl.c" and
 7485   "hsh_rtl.h".
 7486 - The functions 'socInetAddr', 'socInetLocalAddr' and 'socInetServAddr' in
 7487   "soc_rtl.c" were improved to optionally use the function 'getaddrinfo'.
 7488   With 'getaddrinfo' it is possible to access computers with IPv4 and IPv6
 7489   addresses. For Linux this feature is activated.
 7490 - Interpreter, compiler and runtime library were improved to support the
 7491   action SOC_ADDR_FAMILY.
 7492 - The compiler (comp.sd7) was improved to generate better code when accessing
 7493   the element of an array that was the result of another computation.
 7494 - The compiler (comp.sd7) was improved to generate code with fewer temporary
 7495   variables for the actions ARR_IDX, ARR_LNG, STR_EQ and STR_NE.
 7496 - The initialization of string constants in the compiler was improved.
 7497 
 7498 20110203:
 7499 - Many thanks to Bogdan Lisovich for his help to investigate and fix a
 7500   compilation problem under Mac OS.
 7501 - The fannkuch-redux benchmark "fannkuch.sd7" from "Bart C" was added
 7502   (Many thanks to "Bart C" for releasing "fannkuch.sd7" under the GPL).
 7503 - The comanche.sd7 webserver was improved to support CGI programs.
 7504 - The chapter explaining 'operating system access' in the manual was improved.
 7505 - The function 'getCgiParameters(file)' was added to "cgi.s7i".
 7506 - The functions 'setenv' and 'file(PROGRAM)' were added to "seed7_05.s7i"
 7507 - The interpreter and the compiler were improved to support the function
 7508   'getenv'.
 7509 - Several changes were done to support compiling with a C++ compiler.
 7510 - The keyword INLINE was removed from the functions bigCmp, bigCreate,
 7511   bstCmp, bstCreate, fltCmp, intCmp, rflCreate, setCmp, setCreate, strCompare
 7512   and strCreate (C++ does not generate an externally visible function for
 7513   inline functions).
 7514 - The compiler (comp.sd7) was improved to generate runtime library prototypes
 7515   with constant types.
 7516 - The function timFromIntTimestamp was introduced in "tim_rtl.c" and used
 7517   in "timlib.c" and in compiled code.
 7518 - The example programs dirtst.sd7, eliza.sd7, fib.sd7, gkbd.sd7, hamu.sd7,
 7519   kbd.sd7, rand.sd7, rever.sd7, sl.sd7, snake.sd7 and tak.sd7 were improved
 7520   to use the operator <& instead of multiple calls of write.
 7521 - The const qualifier was added to function prototypes in "arr_rtl.c",
 7522   "arr_rtl.h", "big_rtl.c", "big_gmp.c", "big_drv.h", "blockutl.c",
 7523   "blockutl.h", "drw_x11.c", "drw_win.c", "drw_drv.h", "fil_rtl.c",
 7524   "fil_rtl.h", "ref_data.c", "ref_data.h", "soc_rtl.c", "soc_rtl.h",
 7525   "tim_rtl.c", "traceutl.c" and "traceutl.h".
 7526 - The macro 'os_fstat_struct' was introduced in the files "mk_bccv5.mak",
 7527   "common.h"" "infile.c", "fil_rtl.c", "cmd_rtl.c".
 7528 - Parameter names were added to the prototypes in the files "blockutl.h",
 7529   "dir_win.h", "doany.h" and "traceutl.h".
 7530 
 7531 20110116:
 7532 - The chapter explaining 'operating system access' in the manual was improved.
 7533 - The standard path representation was changed to forbid drive letters
 7534   (instead of "C:" the standard path "/c" must be used).
 7535 - The programs comanche.sd7, comp.sd7 and make7.sd7 were improved to work
 7536   with the new standard path representation.
 7537 - The spacing between characters in the standard bitmap fonts was improved.
 7538 - The example programs startrek.sd7, wiz.sd7, mind.sd7, wumpus.sd7 and
 7539   addup.sd7 were improved to use the operator <& instead of multiple calls
 7540   of write.
 7541 - In the "seed7_05.s7i" library the functions toStdPath and convDosPath were
 7542   added and improved respectively.
 7543 - The interpreter and the compiler were improved to support for-until loops
 7544   for the type 'ref_list'.
 7545 - The recognition of constant expressions in the compiler was improved.
 7546 - The initialization of hash constants in the compiler was improved to
 7547   use the function hshEmpty when possible.
 7548 - The initialization of string constants in the compiler was improved to
 7549   use string slices which point to an array of characters.
 7550 - The 'const' specifier and the macros 'likely' and 'unlikely' were added to
 7551   several *.c and *.h files.
 7552 - The implementation of the function path(PROGRAM) in the interpreter was
 7553   improved.
 7554 - The drawing functions for filled areas were improved in "drw_x11.c".
 7555 - The function 'create_hash' in "hsh_rtl.c" was improved.
 7556 
 7557 20110102:
 7558 - The function convDosPath was added to the "seed7_05.s7i" library. It
 7559   converts a path with backslashes and drive letters to the standard path
 7560   representation. E.g.: "C:\seed7" is converted to "/c/seed7". When a path
 7561   is already in the standard path representation it is left unchanged.
 7562 - Functions with path parameters or path result were improved to accept
 7563   and return file paths with the standard path representation. The standard
 7564   path representation uses a slash as path separator. Under Windows a
 7565   standard path like "/c" is mapped to the drive letter "C:". Reading the
 7566   directory "/" under Windows returns a list of available drives.
 7567 - The function path(PROGRAM), which returns the absolute path of the program,
 7568   was added to the "seed7_05.s7i" library.
 7569 - The function dir(PROGRAM), which returns the directory containing the
 7570   program, was added to the "seed7_05.s7i" library. The dir(PROGRAM) function
 7571   allows placing configuration data in the directory of the program.
 7572 - The function getenv was improved to work with Unicode environment
 7573   variables.
 7574 - The "bas7.sd7" Basic interpreter was improved to interpret RND() as RND
 7575   and MID statements as equivalent to MID$ statements.
 7576 
 7577 20101219:
 7578 - The handling of closures in the compiler ("comp.sd7") was improved. When
 7579   possible closures are implemented with code inlining. When this is not
 7580   possible closures are implemented with C functions and a corresponding
 7581   data structure to hold the environment data.
 7582 - A new example program (make7.sd7), a make utility which can be used to
 7583   manage the compilation process, was added. Make7 is capable to compile
 7584   the Seed7 release with every mk_*.mak makefile released with Seed7.
 7585 - Code was moved from the "tar7.sd7" example program to the new library
 7586   "tar.s7i". The "tar.s7i" library allows programs to deal with tar files
 7587   without the need to call external programs.
 7588 - The directory seed7/bin was introduced as place for executables and
 7589   runtime libraries. This should allow installing Seed7 by adding the
 7590   seed7/bin directory to the PATH. Additionally the environment variable
 7591   SEED7_LIBRARY can be defined to contain the path of the seed7/lib directory.
 7592 - The performance of the str function (conversion to string), for integer and
 7593   bigInteger values, was improved.
 7594 - The standard bitmap fonts were improved to reduce the spacing between
 7595   characters.
 7596 - The FAQ answers explaining portability and debugging were improved.
 7597 - The chapters explaining string functions and stack traces in the manual
 7598   were improved.
 7599 - Tests for the 'lpad0' operator were added to the "chkint.sd7" program.
 7600 - Compiler and interpreter were improved to support the action BST_STR, which
 7601   converts a byte string to an UTF-32 string.
 7602 
 7603 20101205:
 7604 - The chapter explaining the file open function in the manual was improved.
 7605 - The file open function was improved to return STD_NULL on an attempt to
 7606   open a directory.
 7607 - Interpreter and compiler were improved to support Unicode program arguments
 7608   under Windows.
 7609 - The file "chkccomp.c" was added. It is used during the make process to
 7610   determine properties of the C compiler and the C runtime library.
 7611 - The makefiles were improved to use the new generic file "chkccomp.c",
 7612   instead of creating their own versions of "chkccomp.c".
 7613 - The time/duration field 'mycro_second' and the functions 'getMycroSeconds',
 7614   'toMycroSeconds' and 'MYCRO_SECONDS' were renamed to 'micro_second',
 7615   'getMicroSeconds', 'toMicroSeconds' and 'MICRO_SECONDS' respectively. This
 7616   changes were done in the example programs and in the "time.s7i" library.
 7617 - The functions 'setATime' and 'setMTime' in 'time.s7i' were improved to raise
 7618   RANGE_ERROR when the specified time is illegal or outside the allowed range.
 7619 - The carddemo.sd7 example program was improved to allow moving, raising and
 7620   lowering cards with the mouse and mouse buttons.
 7621 - The function 'getHttp' in the "gethttp.s7i" library was improved to handle
 7622   the status codes 301, 302, 303 and 307.
 7623 - The functions 'hashCode', 'compare', 'setContent', 'toBottom' and 'toTop'
 7624   were added to the "graph.s7i" library and the compiler was improved to
 7625   support them.
 7626 - Bitmap fonts were improved to allow scaling.
 7627 - The function 'skipSpaceOrTab' was added to the "scanfile.s7i" library.
 7628 - The "chkhsh.sd7" example program was improved.
 7629 - The compiler was improved to generate code, which defines functions for
 7630   'hsh_create' and 'hsh_destr' before they are used.
 7631 - The compiler was improved to generate code with parenthesis around C comma
 7632   operator expressions. This is necessary to allow using such an expression as
 7633   argument of a C macro.
 7634 - The handling of the action 'bst_idx' in the compiler was fixed to use
 7635   'bstritype' instead of 'stritype'.
 7636 - The compiler was improved to use the function 'generic_sct_cpy'. This
 7637   function was introduced to allow changing an element of a hash, when the
 7638   hash has struct elements.
 7639 - The "tar7.sd7" example program was improved to check if a file already
 7640   exists.
 7641 - The function 'bst_cpy' in "bstlib.c" was fixed to use 'take_bstri' instead
 7642   of 'take_stri'.
 7643 - The function 'cmdFileType' in "cmd_rtl.c" was improved to return FILE_ABSENT
 7644   when one element in the path is not a directory.
 7645 - The "drw_x11.c" driver was improved: Expose events now draw only the exposed
 7646   area. The exposed area is not cleared before the expose event is delivered.
 7647   Expose events for the whole window are avoided, when a window is resized.
 7648 - The function 'drwFlush' in "drw_x11.c" now proceeds until no expose events
 7649   are present.
 7650 - The function 'find_window' in "drw_x11.c" now manages the windows with a
 7651   hash table instead of a linked list.
 7652 - The new function 'processEvents' in "drw_x11.c" looks for expose events and
 7653   processes them.
 7654 - Documentation comments were added to the function 'filOpen' in the file
 7655   "fil_rtl.c".
 7656 - The files "kbd_inf.c" and "kbd_poll.c" were improved to use utf8_mode also
 7657   when the LANG environment variable contains the substring "utf8".
 7658 
 7659 20101121:
 7660 - The chapters explaining integer and bigInteger in the manual were improved.
 7661 - Several improvements and a bugfix were done in the "gzip.s7i" library.
 7662 - The function openGunzipFile and other functions to support a gunzipFile
 7663   were added to the "gzip.s7i" library.
 7664 - The "tar7.sd7" (tar archiving utility) example program was improved.
 7665 - The function getCStringLiteralText was added to the "scanstri.s7i" library.
 7666 - The function timeInTimeZone was added to the "time.s7i" library.
 7667 - Several tests of the integer power operator (**) were added to the
 7668   "chkexc.sd7" program.
 7669 - The function check_power in the "chkint.sd7" program was improved.
 7670 - The compiler (comp.sd7) was improved to generate better code for the
 7671   actions INT_POW and BIG_IPOW.
 7672 - The compiler was improved to use string slices for the actions STR_HEAD,
 7673   STR_RANGE, STR_SUBSTR and STR_TAIL.
 7674 - The compiler and the files "seed7_05.s7i", "arrlib.c" and "arr_rtl.c" were
 7675   improved to allow appending an element to an array with the &:= operator.
 7676 - String and array indexing functions in the compiler were improved.
 7677 - The file "seed7/read_me" was renamed to "seed7/read_me.txt".
 7678 - The function cmdConfigValue in "cmd_rtl.c" was improved to support the config
 7679   values ALLOW_STRITYPE_SLICES and CC_SOURCE_UTF8.
 7680 - Several makefiles were changed such that #undef commands are not written
 7681   to the file "version.h".
 7682 - Alternate versions of strAppend and strCopy, which support string slices,
 7683   were added to the file "str_rtl.c".
 7684 - The functions strHeadSlice, strRangeSlice, strSubstrSlice and strTailSlice
 7685   were added to the file "str_rtl.c".
 7686 - The memory management of strings in the files "heaputl.c" and "heaputl.h" was
 7687   improved to support string slices.
 7688 - The files "ref_data.c", "reflib.c", "infile.c", "infile.h", "error.h",
 7689   "info.c", "info.h", "match.c" and "runerr.c" were changed to improve the
 7690   action REF_FILE.
 7691 - Parameter names were added to the prototypes in the *lib.h files.
 7692 - The function strLpadTemp was added to the file "str_rtl.c" and used in the
 7693   compiler.
 7694 
 7695 20101107:
 7696 - The chapter explaining exception handling in the manual was improved.
 7697 - The support for bitmap fonts was improved to use fontProperties as base type.
 7698 - The '-' function, which computes the difference of two 'time' values (with a
 7699   'duration' result) in "time.s7i", was improved.
 7700 - The function cmdConfigValue in "cmd_rtl.c" was improved to support the config
 7701   values C_COMPILER_VERSION and GET_CC_VERSION_INFO.
 7702 - In the file "fil_rtl.c" the functions myLseek, myFseek and myFtell were
 7703   renamed to os_lseek, os_fseek and os_ftell respectively.
 7704 - The makefiles were changed to define os_fseek, os_ftell, C_COMPILER_VERSION
 7705   and GET_CC_VERSION_INFO.
 7706 - Documentation comments were added to the function alternate_utime in the file
 7707   "tim_win.c".
 7708 
 7709 20101024:
 7710 - The FAQ answers explaining extensible programming and object orientation,
 7711   were improved.
 7712 - The chapters explaining UTF-16 files and exception handling in the manual,
 7713   were improved.
 7714 - The standard bitmap font was improved to define more characters.
 7715 - Documentation comments were added to the library "utf16.s7i".
 7716 - The "bas7.sd7" (Basic interpreter) example program was improved to avoid an
 7717   endless loop when the label or line number of a goto does not exist.
 7718 - Several changes were done to improve the configuration of the Seed7
 7719   interpreter.
 7720 
 7721 20101010:
 7722 - The first steps towards support of bitmap fonts were done.
 7723 - The standard bitmap font was defined for the sizes 10, 12, 14, 16, 18 and 24.
 7724 - A new example program (testfont.sd7), which writes with the standard font
 7725   in various sizes, was added.
 7726 - The initialization of the random number generator in the function
 7727   uint_rand in "int_rtl.c" was improved.
 7728 - The function timMycroSec was defined in "tim_unx.c" and "tim_win.c".
 7729 
 7730 20100919:
 7731 - The chapter explaining string indexing in the manual was improved.
 7732 - The compiler (comp.sd7) and the hi interpreter were improved to support the
 7733   actions "ITF_CMP" and "ITF_HASHCODE".
 7734 - The parameter names of the functions arc, chord and pieslice in the
 7735   "draw.s7i" library were changed to startAngle and sweepAngle.
 7736 - The compiler was improved such that compiled programs which use SIGALARM
 7737   (the functions 'wait' and 'await' from the "time.s7i" library may use
 7738   SIGALARM) can be terminated with ctrl-c followed by * and enter.
 7739 - Parameter names were added to the prototypes in the file "drw_drv.h".
 7740 - The function drwPFArcPieSlice in "drw_win.c" was implemented.
 7741 - The functions drwFCircle and drwPFCircle in "drw_x11.c were improved.
 7742 
 7743 20100905:
 7744 - The chapter explaining the type 'time' in the manual was improved.
 7745 - The support for source level debugging in the compiler (comp.sd7) was
 7746   improved. Now the option -g generates better #line directives and the 'main'
 7747   function is arranged such that the current line shown by a debugger is
 7748   correct when the program is started.
 7749 - In the "seed7_05.s7i" library the function "rpos" was overloaded to do a
 7750   reverse search for a character in a string starting from a given position.
 7751 - The files "str_rtl.c", "strlib.c", "primitiv.c" and the compiler were
 7752   improved to support the primitive action STR_RCHIPOS (which implements the
 7753   new overloaded 'rpos' function).
 7754 
 7755 20100822:
 7756 - A new example program (dragon.sd7), which draws a dragon curve, was added.
 7757 - A new example program (fractree.sd7), which draws a fractal tree, was added.
 7758 - The chapters explaining the types 'time' and 'duration' in the manual were
 7759   improved.
 7760 - The '-' function, which computes the difference of two 'time' values (with a
 7761   'duration' result) in "time.s7i", was improved.
 7762 - The functions 'daysInYear', 'getYears', 'getMonths', 'getDays', 'getHours',
 7763   'getMinutes', 'getSeconds' and 'getMycroSeconds' were added to the "time.s7i"
 7764   library.
 7765 - The "time.s7i" functions 'years', 'months', 'days', 'hours', 'minutes',
 7766   'seconds' and 'mycro_seconds' were renamed to 'toYears', 'toMonths', 'toDays',
 7767   'toHours', 'toMinutes', 'toSeconds' and 'toMycroSeconds' respectively.
 7768 - The "bas7.sd7" example program was improved to use the new "time.s7i"
 7769   functions.
 7770 - The makefiles were improved to determine the size and the signedness
 7771   (regarding the function 'localtime') of time_t values.
 7772 - The functions 'timToTimestamp' and 'timSetLocalTZ' in "tim_rtl.c" were
 7773   improved to take the size and signedness of time_t into account.
 7774 
 7775 20100801:
 7776 - The FAQ was improved to contain three main sections.
 7777 - Instructions to verify the correctness of the interpreter were added to the
 7778   FAQ and to the file "src/read_me.txt".
 7779 - Instructions how to use the Seed7 interpreter were added to the FAQ.
 7780 - An explanation how static type checking works, when types are first-class
 7781   objects, was added to the FAQ.
 7782 - The FAQ answers explaining the compilation of the Seed7 interpreter and how
 7783   to compile Seed7 programs, were improved.
 7784 - References to the manual were added to several FAQ answers.
 7785 - The chapters explaining string literals, character literals, exceptions and
 7786   stack traces in the manual were improved.
 7787 - Tests for the 'str' function, where the base of the number system is provided
 7788   as parameter, were added to "chkint.sd7".
 7789 - The compiler (comp.sd7) was improved to generate better code for interface
 7790   (dynamic) functions. Now a runtime exception is raised when no adequate
 7791   implementation function is found.
 7792 - A definition of 'ACTION_ERROR' was added to "common.h" and "comp.sd7".
 7793 - The interpreters stack traces with function call notation, were improved.
 7794 
 7795 20100718:
 7796 - The first steps towards support of variable functions and closures in the
 7797   compiler ("comp.sd7") were done.
 7798 - The generation of code for 'for' loops and the 'div' operator in the compiler
 7799   was improved.
 7800 - The compiler function 'getTemporaryToResultExpr' was improved to generate
 7801   code without casts from 'floattype' to 'generictype'.
 7802 - The function 'rand_32' in "int_rtl.c" was renamed to 'uint_rand' and improved
 7803   to work better for 64-bit integers.
 7804 - A bug that could occur when loading a saved game was fixed in the example
 7805   program "castle.sd7".
 7806 - Tests for conversions from integer to float were added to the "chkflt.sd7"
 7807   example program.
 7808 
 7809 20100704:
 7810 - The Seed7 interpreter (hi) was improved to support stack traces with
 7811   function call notation.
 7812 - The "progs.s7i" library was improved to support indexing and 'for' loops
 7813   for 'bstring' values.
 7814 - Indexing tests for constant arrays were added to the "chkexc.sd7" program.
 7815 - The compiler was improved to generate code for array and string indexing with
 7816   temporary values of type 'uinttype' instead of 'memsizetype'.
 7817 - The compiler was improved to generate code with the type 'rtlValueunion'
 7818   instead of 'valueunion' (this is the same type as in the file "data_rtl.h").
 7819 - The compiler was improved to create dynamic dispatcher functions which copy
 7820   a struct value when necessary (in function 'process_dynamic_action_call').
 7821 - The compiler ("comp.sd7") was improved to initialize constant 'bstring'
 7822   values correctly.
 7823 - The compiler option -e was improved to create an executable which sends a
 7824   signal when an uncaught exception occurs (A caught exception does not send
 7825   a signal).
 7826 - The files "bstlib.c", "primitiv.c" and the compiler ("comp.sd7") were
 7827   improved to support the primitive action BST_IDX (which allows indexing of
 7828   'bstring' values).
 7829 - A definition of the type 'rtlStructtype' was added to "data_rtl.h".
 7830 - The files "traceutl.c" and "runerr.c" were improved to define and use the
 7831   functions 'printformparam' and 'prot_name'.
 7832 - Variables were renamed in the files "strlib.c", "bstlib.c" and "ref_data.c".
 7833 - Checks for negative line and column values and casts to 'size_t' were
 7834   added to the files "scr_inf.c", "scr_cap.c" and "scr_tcp.c".
 7835 
 7836 20100620:
 7837 - Documentation comments were added to the libraries "graph.s7i", "keybd.s7i"
 7838   and "time.s7i".
 7839 - The compiler (comp.sd7) was improved to support the option -te which enables
 7840   tracing of exceptions in the generated executable.
 7841 - Some types generated by the compiler were renamed to make them unique (This
 7842   helps a debugger to distinguish types when values are displayed).
 7843 - The declaration of 'flush' in "seed7_05.s7i" was improved (This way the
 7844   compiled example program "sl.sd7" works with the correct cursor position).
 7845 - The functions 'prc_for_to' and 'prc_for_downto' in "prclib.c" were changed
 7846   to terminate the loop when an exception was raised (This way the loop
 7847   variable has the correct value when an exception occurs).
 7848 - The performance of the functions 'strAppend', 'strAppendTemp',
 7849   'strConcatTemp', 'strHeadTemp' and 'strPush' in "str_rtl.c" was improved.
 7850 - Several functions in "big_rtl.c" were improved to avoid a MEMORY_ERROR in
 7851   the strange case when a 'realloc' which shrinks memory fails.
 7852 - The function alloc_positive_copy_of_negative_big and its calls in "big_rtl.c"
 7853   were improved to avoid memory leaks in out of memory situations.
 7854 - The functions 'bigIncr' and 'bigDecr' in "big_rtl.c" were improved to work
 7855   as transactions in out of memory situations.
 7856 - The functions 'bigSuccTemp' and 'bigPredTemp' were improved to work without
 7857   calling 'bigIncr' and 'bigDecr' respectively.
 7858 - The handling of constant expressions for values with the categories
 7859   ARRAYOBJECT, STRUCTOBJECT, HASHOBJECT and INTERFACEOBJECT in the compiler
 7860   was improved.
 7861 - The support for the actions "CMD_SHELL" and "REF_TRACE" in the compiler was
 7862   improved.
 7863 - Code in the compiler was moved from the function 'generate_main' to
 7864   'init_array_constants', 'init_struct_constants', 'init_hash_constants' and
 7865   'init_interface_constants'.
 7866 - The creation of array constants in the compiler was improved to use a 'for'
 7867   loop over a 'ref_list' instead of an 'integer' 'for' loop and an index
 7868   access to an element of the (possible long) 'ref_list' (This speeds up
 7869   compilation of programs with huge array constants).
 7870 - The function 'addTypeCategoryForLocalVars' was added to the compiler.
 7871 - The macro 'unlikely' was added to if statements which check for error
 7872   conditions in the files "str_rtl.c", "big_rtl.c" and "heaputl.c".
 7873 - The macros 'likely' and 'unlikely' were defined in the file "common.h" and
 7874   in several makefiles.
 7875 - Several functions in "flistutl.c" and "heaputl.c" were improved to produce
 7876   a correct heap statistic.
 7877 - The const qualifier was added to function prototypes in "prg_comp.c" and
 7878   "prg_comp.h".
 7879 - The functions 'prg_decl_objects', 'prg_error_count', 'prg_match',
 7880   'prg_match_expr', 'prg_syobject' and 'prg_sysvar' in "prglib.c" were changed
 7881   to call the corresponding functions from "prg_comp.c".
 7882 - The functions 'scr_setpos' and 'scr_write' in "scrlib.c" were changed to
 7883   call the corresponding functions from "scr_rtl.c".
 7884 - The function 'printparam' was added to "traceutl.c".
 7885 
 7886 20100606:
 7887 - An explanation of the difference between overloading and object orientation,
 7888   was added to the FAQ.
 7889 - The function 'popen8', which opens an UTF-8 pipe, was added to the
 7890   "shell.s7i" library.
 7891 - Checks for 'log2' were added to the "chkbig.sd7" program.
 7892 - Checks for file exceptions were added to the "chkexc.sd7" program.
 7893 - A check for the 'keys' function for hash tables was added to "chkhsh.sd7".
 7894 - A definition of voidHtmlElements, a set containing HTML element names which
 7895   possibly have no closing tags, was added to the "html.s7i" library.
 7896 - The experimental function 'readHtml' was added to the "xmldom.s7i" library.
 7897 - Calls of 'rflNe' in the compiler "comp.sd7" were replaced with '!rflEq'.
 7898 - Checks with MAX_UTF8_EXPANSION_FACTOR were added to functions in "actutl.c",
 7899   "cmd_rtl.c", "flt_rtl.c", "striutl.c", "str_rtl.c" and "syvarutl.c".
 7900 - The function "parseFile" was improved to work with Unicode file names and to
 7901   raise FILE_ERROR when the file is not found or RANGE_ERROR when a backslash
 7902   is used as path delimiter.
 7903 - The files arrutl.c and arrutl.h were removed and the function "qsort_array"
 7904   was moved to "arrlib.c".
 7905 - Macros with name endings _SIZE_OK and _CHECK_SIZE were introduced in
 7906   "heaputl.h" and used in various files.
 7907 - Comparisons with MAX_STRI_LEN and MAX_BSTRI_LEN were added in various files
 7908   to make sure that there are no overflows when the size of a string or
 7909   bstring is computed.
 7910 - Macros with name endings _SIZE_OK and _CHECK_SIZE were introduced and used
 7911   in "big_rtl.c".
 7912 - The type 'offsettype' was renamed to 'os_off_t' in "fil_rtl.c" and the
 7913   makefiles were improved to write a definition of 'os_off_t' to "version.h".
 7914 - When FTELL_WRONG_FOR_PIPE is defined it is assumed that fseek does also
 7915   not work correctly for pipes.
 7916 - File read and write functions in "fil_rtl.c" and "ut8_rtl.c" are checked
 7917   for error conditions and FILE_ERROR is raised when an error happens.
 7918 - The functions 'find_include_file' and 'init_lib_path' were improved and the
 7919   function 'free_lib_path' was introduced in the file "infile.h".
 7920 - A comment was added to 'genPointList' in "graph.s7i" and the implementation
 7921   of 'drwGenPointList' in "drw_x11.c" and "drw_win.c" was fixed.
 7922 - In several makefiles functionality was moved from the help program
 7923   'chkftell.c' to 'chkccomp.c'.
 7924 - Parameter names were added to the prototypes in several header files.
 7925 - Declarations of a variable named 'cmp' were changed from 'int' to 'inttype'
 7926   in the files "arrlib.c", "arr_rtl.c", "hshlib.c" and "hsh_rtl.c".
 7927 - The function 'rflNe' was removed from the file "rfl_data.c".
 7928 
 7929 20100516:
 7930 - Seed7 now supports the 64-bit versions of Linux and Mac OS X. Many thanks
 7931   to "Mensanator" for his help to reach this goal.
 7932 - The compiler (comp.sd7) was improved to generate C programs with fewer
 7933   casts and with no parentheses around the right hand side of assignments.
 7934 - The compiler was improved to use the hash 'typeCategory' and 'category'
 7935   values instead of various hashes like 'bigint_types'.
 7936 - The functions 'compare' and 'hashCode' were added to the "complex.s7i"
 7937   library to allow complex numbers as keys for hash tables.
 7938 - The "progs.s7i" library was improved to allow 'case' statements for
 7939   'category' values.
 7940 - The FAQ, explaining function and operator overloading, was improved.
 7941 - The "chk_all.sd7" example program was improved to remove an old executable
 7942   before calling the compiler.
 7943 - The 'gets' function for UTF-8 files was improved to work correctly when
 7944   reading from a pipe (see functions 'ut8Gets', 'read_and_alloc_utf8_stri'
 7945   and 'read_utf8_string' in "ut8_rtl.c").
 7946 - The functions 'remainingBytesInFile', 'read_string', 'read_and_alloc_stri'
 7947   and 'filGets' in "fil_rtl.c" were added or improved.
 7948 - The macros 'ALLOC_STRI' and 'REALLOC_STRI' and the functions 'growStri',
 7949   'strMult', 'filGets', 'ut8Gets' and 'socGets' were improved to avoid
 7950   overflows when the size of a memory request is computed.
 7951 
 7952 20100502:
 7953 - The "chk_all.sd7" example program was improved to write detailed information
 7954   when tests fail.
 7955 - The "shell.s7i" library was improved such that 'popen' behaves correctly
 7956   when the created pipe is closed with 'close'.
 7957 - The compiler and the runtime library were improved to use the correct
 7958   exception handling function in compiled and interpreted code (When the
 7959   compiled compiler analyzes a source program the interpreter will execute
 7960   some expressions).
 7961 - The macro processing of the compiler was improved to work better for
 7962   function macros.
 7963 - The functions seekFileLength, offsetTell, offsetSeek, remainingBytesInFile,
 7964   getFileLengthUsingSeek, getBigFileLengthUsingSeek, filBigLng, filBigSeek,
 7965   filBigTell, filClose, filGets, filPclose, filSeek and filTell in
 7966   "fil_rtl.c" were added or improved. This way the types integer and
 7967   offsettype both can have a size of 32- or 64-bit in any combination.
 7968 - The function ut8Gets in "ut8_rtl.c" was improved to use remainingBytesInFile.
 7969 - The makefiles "mk_osx.mak", "mk_linux.mak", "mk_cygw.mak" and "makefile"
 7970   were improved to define USE_FSEEKO. This causes the use of 'fseeko' and
 7971   'ftello' as seek and tell functions in "fil_rtl.c".
 7972 - Support for the actions BST_CMP, BST_HASHCODE and FIL_PCLOSE was added to
 7973   the interpreter and the compiler.
 7974 - The handling of types in the compiler was improved such that subtypes of
 7975   'boolean', 'enum', 'integer', 'bigInteger', 'float', 'char', 'string' and
 7976   'bstring' are supported better.
 7977 - A definition of the type 'bstring' was added to the "progs.s7i" library.
 7978 - The compiler and the interpreter were improved to support 'bstring' as key
 7979   and value for hash tables and 'ref_list' as value for hash tables.
 7980 - A definition of an assignment statement for exceptions was added to the
 7981   "seed7_05.s7i" library.
 7982 - Tests for the integer parse function were added to "chkint.sd7".
 7983 - The config value LITTLE_ENDIAN was renamed to LITTLE_ENDIAN_INTTYPE in
 7984   several files.
 7985 - The compiler was improved to use the functions bstriLiteral and typeLiteral
 7986   to write occurrences of 'bstring' and 'type' literals to the generated C
 7987   program.
 7988 - The compiler was improved to create prototypes for the functions bstCmp,
 7989   bstCmpGeneric, bstCreateGeneric, bstHashCode, bstValue, drwGenPointList,
 7990   filClose, filPclose, rflCreateGeneric and typStr.
 7991 - The function rflCmp was added to "rfl_data.c".
 7992 - The handling of the flag FTELL_WRONG_FOR_PIPE was moved from "cmd_rtl.c"
 7993   to "fil_rtl.c".
 7994 - Usages of the constant ULONG_MAX were replaced by UINTTYPE_MAX in the
 7995   files "flt_rtl.c", "int_rtl.c" and "int_rtl.h".
 7996 - The function drwGenPointList was changed to use an array parameter in
 7997   "drwlib.c", "drw_drv.h", "drw_win.c", "drw_x11.c" and "comp.sd7".
 7998 - The processing of bstParse, bstValue, drwPFArcPieSlice, setSConv, typStr
 7999   and array cpy_* in the compiler was improved.
 8000 - The const qualifier was added to function prototypes in "rfl_data.c" and
 8001   "rfl_data.h".
 8002 
 8003 20100418:
 8004 - Many thanks to "Mensanator" for his help to debug some 64-bit / Mac OS X
 8005   problems.
 8006 - The chapters explaining operating system files, primitive actions and the
 8007   types 'float' and 'type' in the manual were improved.
 8008 - A free list memory management for small 'biginttype' (bigInteger) values
 8009   was introduced in "big_rtl.c". This improves the performance of some
 8010   programs by up to 40 percent.
 8011 - The macro definition of REALLOC_BIG in "big_rtl.c" was changed to cooperate
 8012   with the free list memory management.
 8013 - The file common.h was improved to add a capacity to the struct bigintstruct.
 8014 - The graph.s7i library was improved.
 8015 - The chk_all.sd7 example program was improved to close the pipe files.
 8016 - The compiler (comp.sd7) was improved to handle empty structs correctly.
 8017 - The compiler was improved to produce better code when local functions use
 8018   variables from surrounding functions.
 8019 - Some changes in the compiler were done to make sure that always the same
 8020   C program is generated.
 8021 - The compiler was changed to create a typedef before a type is used.
 8022 - The compiler was improved to create data structure definitions which are
 8023   helpful for a debugger.
 8024 - The compiler was improved to produce better code for the copy actions arr_cpy,
 8025   big_cpy, bst_cpy, drw_cpy, prg_cpy, rfl_cpy, sct_cpy, set_cpy and str_cpy.
 8026 - The compiler was improved to produce better code for the actions prc_for_to,
 8027   prc_for_downto, hsh_for, hsh_for_data_key, hsh_for_key.
 8028 - Casts were added to compiler generated function calls of bstCreate,
 8029   bstDestr, bstCpy, arrBaselit, arrBaselit2, arrExtend, arrGen, drwFPolyLine,
 8030   drwPolyLine, prgExec, rflHead, setSConv, prgDestr and to various other
 8031   places.
 8032 - The compiler was improved to create prototypes for the functions bigGcd,
 8033   bigOdd, bigPredTemp, bigSuccTemp, cmdChdir, cmdConfigValue, cmdMkdir,
 8034   drwBackground, drwGenPointList, drwNewPixmap, drwPolyLine, drwFPolyLine,
 8035   drwSetTransparentColor, prgDestr, prgExec, refType, rflHead, setIConv,
 8036   setSConv, strGetenv, strToUtf8, strUtf8ToStri and setupFloat.
 8037 - The function ref_type in "reflib.c" was improved to reliably raise an
 8038   exception when the type is NULL.
 8039 - Unused variables were removed in the files cards.s7i, draw.s7i, gzip.s7i,
 8040   seed7_05.s7i, addup.sd7, bas7.sd7, carddemo.sd7, chk_all.sd7, comanche.sd7,
 8041   comp.sd7, lander.sd7, mahjong.sd7, mandelbr.sd7, panic.sd7, sl.sd7,
 8042   snake.sd7, sokoban.sd7, sudoku7.sd7 and tar7.sd7 .
 8043 - Return statements were changed to omit parentheses in the files actutl.c,
 8044   analyze.c, bst_rtl.c, dir_dos.c, dir_rtl.c, dir_win.c, drw_rtl.c, fil_rtl.c,
 8045   flt_rtl.c, hsh_rtl.c, kbd_inf.c, kbd_poll.c, kbd_rtl.c, reflib.c, rfl_data.c,
 8046   soc_rtl.c, tim_rtl.c and ut8_rtl.c .
 8047 
 8048 20100404:
 8049 - Many thanks to "Mensanator" for his help to investigate 64-bit and Mac OS X
 8050   problems.
 8051 - The chk_all.sd7 check program was improved to check that the interpreted
 8052   compiler and the compiled compiler generate the same C programs.
 8053 - Checks for 'set of char' were added to the "chkset.sd7" program.
 8054 - The compiler (comp.sd7) and the interpreter (hi) were improved to support the
 8055   actions BST_EQ, BST_NE and BST_PARSE.
 8056 - The compiler (comp.sd7) was improved to support the actions BST_APPEND and
 8057   CHR_CMP.
 8058 - The compiler (comp.sd7) was improved to make sure that the same types are used
 8059   in generated C programs and in the runtime library.
 8060 - The generation of string constants in the compiler was improved to work
 8061   correctly when the string size is stored as 64-bit unsigned value.
 8062 - The generation of set constants in the compiler was improved to work correctly
 8063   when bitsettype elements have a size of 64-bit.
 8064 - The compiler was improved to use the union type 'valueunion' instead of
 8065   'float2int'.
 8066 - The functions arrBaselit, arrBaselit2, arrExtend and arrGen in "arr_rtl.c"
 8067   were changed to use parameters of type rtlGenerictype instead of rtlObjecttype.
 8068 - The functions bigCmpGeneric, chrCmpGeneric, fltCmpGeneric, intCmpGeneric,
 8069   refCmpGeneric, setCmpGeneric, strCmpGeneric and typCmpGeneric were introduced
 8070   as compare functions with parameters of type rtlGenerictype.
 8071 - The functions bst_append, bst_cpy, bstAppend and bstCpy (defined in "bstlib.c"
 8072   and "bst_rtl.c") were improved to work correctly when source and destination
 8073   are identical.
 8074 - The function cmdConfigValue in "cmd_rtl.c" was improved to support the config
 8075   values INTTYPE_SIZE, FLOATTYPE_SIZE and LITTLE_ENDIAN.
 8076 - Several makefiles were changed to define FLOAT_SIZE, DOUBLE_SIZE and
 8077   LITTLE_ENDIAN.
 8078 - The functions bigCreateGeneric, intCreateGeneric, drwCreateGeneric,
 8079   setCreateGeneric and strCreateGeneric were introduced as create functions with
 8080   a parameter and a result of type rtlGenerictype.
 8081 - The function intDestrGeneric was introduced as destroy function with a
 8082   parameter of type rtlGenerictype.
 8083 
 8084 20100321:
 8085 - Many thanks to "Mensanator" for his help to investigate the problems Seed7
 8086   had on his 64-bit Mac OS computer. Many of the improvements towards support
 8087   of 64-bit systems and Mac OS X result from his help (see below). Note that this
 8088   release does not support 64-bit systems out of the box, but it certainly is a
 8089   milestone to reach this goal.
 8090 - The FAQ, how to compile the interpreter, was improved.
 8091 - The file "read_me" was improved to explain compilation under Linux and to
 8092   refer to "src/read_me.txt" for other operating systems.
 8093 - An explanation how to compile under Mac OS X was added to "src/read_me.txt".
 8094 - An explanation how to correct a make error and a linker error was added to
 8095   "src/read_me.txt".
 8096 - The compiler (comp.sd7) was improved to use the function "integerLiteral" and to
 8097   produce C code with more casts and an improved helemlist type.
 8098 - The prototype definitions for gkbKeyPressed, kbdKeyPressed, prgSysvar,
 8099   refItftosct and typValue generated by "comp.sd7" were improved.
 8100 - All usages of '8 * sizeof(bigdigittype)' as shift count in "big_rtl.c" were
 8101   replaced by 'BIGDIGIT_SIZE'.
 8102 - The makefiles and common.h were changed to make sure that int32type, uint32type,
 8103   int64type and uint64type have the size implied by their name.
 8104 - The files big_gmp.c, big_rtl.c, drw_x11.c, error.c, fatal.c, match.c, stat.c,
 8105   str_rtl.c and traceutl.c were improved to use better formats in printf() calls.
 8106 - Errors in bigToInt32 and bigToInt64 (file "big_rtl.c"), triggered by negative
 8107   numbers when BIGDIGIT_SIZE is less than 32 and 64 respectively, were fixed.
 8108 - The function cmdConfigValue in "cmd_rtl.c" was improved to make sure
 8109   that the same types are used in the interpreter and in the compiler (by
 8110   providing an interface to INT32TYPE, UINT32TYPE, INT64TYPE, UINT64TYPE,
 8111   INT32TYPE_LITERAL_SUFFIX, INT64TYPE_LITERAL_SUFFIX and POINTER_SIZE).
 8112 - The chkbig.sd7 program was improved with checks for the functions 'ord' and
 8113   'bigInteger conv'.
 8114 - The chkint.sd7 program was improved with checks for powers of 2 and with more
 8115   checks for the functions 'str' and 'integer conv'.
 8116 - The file "common.h" was improved to define several types and constants for
 8117   integers of different sizes.
 8118 - The system to define the (text) screen and keyboard driver was improved to
 8119   work without the file "inf_conf.h".
 8120 - The keyboard driver "kbd_inf.c" was improved to define the functions
 8121   return_char_if_present(), consume_chars_present() (which both encapsulate calls
 8122   of "tcsetattr") and key_table_init().
 8123 - A new keyboard driver "kbd_poll.c", which can be used when "tcsetattr" does not
 8124   work correctly (e.g. under Mac OS X and Cygwin), was added.
 8125 - The makefiles "mk_osx.mak" and "mk_cygw.mak" were improved to use "kbd_poll.c".
 8126 - The interpreter option -v was improved to write the line numbers of all lines
 8127   processed (changes in "option.h").
 8128 - Changes in "arrlib.c" were done to reduce the number of warnings generated by the
 8129   C compiler.
 8130 
 8131 20100307:
 8132 - The functions in the gethttp.s7i library were improved to allow the specification
 8133   of a port number as part of the location (e.g.: localhost:1080/index.htm).
 8134 - The tarx.sd7 (tar archiving utility) example program was renamed to tar7.sd7 .
 8135 - The codepage 8859_11 was added to the charsets.s7i library.
 8136 - The bas7.sd7 (basic interpreter) example program was improved.
 8137 - The toutf8.sd7 example program was improved to write an explanation and to
 8138   support several IANA/MIME charset names.
 8139 - An explanation what to do, when the path of the bcc32 C compiler contains a space,
 8140   was added to 'src/read_me.txt'.
 8141 - Documentation comments were added to the charsets.s7i library.
 8142 
 8143 20100221:
 8144 - The generation of '#line' directives in the compiler (comp.sd7) was improved.
 8145   This allows better references to Seed7 source lines during debugging sessions.
 8146 - The makefile mk_bccv5.mak was added to support compilation with version 5.5 of
 8147   the bcc32 C compiler.
 8148 - Several makefiles were changed to define LINKER_OPT_OUTPUT_FILE (the linker
 8149   option which is used to specify the output file).
 8150 - A description of the C source files in the Seed7 package was added to the file
 8151   'src/read_me.txt'.
 8152 - Several changes in the interpreter and the runtime library were done to reduce the
 8153   number of warnings generated by the C compiler.
 8154 
 8155 20100207:
 8156 - The compiler (comp.sd7) was improved to support source level debugging with the
 8157   option '-g' (comp.sd7 generates C programs with '#line' directives and the C
 8158   compiler is called with a corresponding debugging option).
 8159 - An explanation what happens when an exception is not caught, was added to the
 8160   FAQ.
 8161 - The chapter in the manual, which explains a stack trace, was improved.
 8162 - The flag 'mayRaiseRangeError' was added to the "bigint.s7i" library to describe
 8163   that 'ord(bigInteger)' may raise RANGE_ERROR.
 8164 - The 'set of' type in "seed7_05.s7i" was improved to use 'HASHSET_OF' instead of
 8165   'BITSET_OF' when 'mayRaiseRangeError' is defined for 'ord'.
 8166 - The function 'getBits' was renamed to 'getBitsLe' in "gzip.s7i" ('Le' describes
 8167   that the bits are read in little endian order).
 8168 - A '=' operator was defined for 'HASHSET_OF' in "seed7_05.s7i".
 8169 - The 'strifile' functions 'getwd' and 'getln' were added to "strifile.s7i".
 8170 - The bas7.sd7 (basic interpreter) example program was improved.
 8171 - The compiler was improved to create executables where the message about an
 8172   uncaught exception uses the file and line of the raise statement.
 8173 - Several improvements in the compiler were done to call special case functions
 8174   for bigInteger operations.
 8175 - The experimental compiler option -e was introduced to send a signal when an
 8176   exception occurs.
 8177 - The compiler was improved to write a message when it cannot remove the old
 8178   executable.
 8179 - Several makefiles and the function 'cmdConfigValue' in "cmd_rtl.c" were improved
 8180   to define CC_OPT_DEBUG_INFO and LINKER_OPT_DEBUG_INFO and to rename
 8181   INHIBIT_C_WARNINGS to CC_OPT_NO_WARNINGS.
 8182 - The function 'bigZero', which initializes bigInteger variables with zero, was
 8183   added to "big_rtl.c" and "big_gmp.c".
 8184 - The function 'bigNe' was removed from "big_rtl.c" and "big_gmp.c" (compiler
 8185   and interpreter were changed to use a negation of "bigEq" instead).
 8186 - The function 'bigMultSignedDigit' was added to "big_rtl.c" and "big_gmp.c".
 8187 - A call of 'mpz_init' was added to the function 'bigImport' in "big_gmp.c".
 8188 - The 'normalize' function in "big_rtl.c" was improved to avoid resizing
 8189   bigInteger values.
 8190 - The interpreter was improved such that the appearance of a stack trace is more
 8191   like the one produced by a debugger.
 8192 
 8193 20100117:
 8194 - The seed7_05.s7i library was improved to support union (|), intersection (&),
 8195   difference (-) and symmetric difference (><) for sets implemented with hashes
 8196   like 'set of string'.
 8197 - The "tarx.sd7" example program was improved to create archives correctly, even
 8198   when the file names are longer than 100 chars.
 8199 - The bas7.sd7 (basic interpreter) example program was improved.
 8200 
 8201 20100103:
 8202 - The chapter explaining operating system access in the manual was improved.
 8203 - The "tarx.sd7" example program was improved to uncompress files when the z option
 8204   is used and to read file names with more than 100 chars correctly.
 8205 - Several changes in the interpreter and the runtime library were done to reduce the
 8206   number of warnings generated by the C compiler.
 8207 
 8208 20091220:
 8209 - The chapter explaining parameters in the tutorial of the manual was improved.
 8210 - The chapter explaining priority and associativity in the manual was improved.
 8211 - The function copy_file in "cmd_rtl.c" was improved to use mmap() only up to a
 8212   maximum size and to use munmap() to delete the mapped area.
 8213 - The function cmdRemove in "cmd_rtl.c" was improved to work correctly when
 8214   remove() is not able to remove empty directories.
 8215 - The function write_object in "error.c" was improved to write literals correctly.
 8216 - The function cp_to_os_path in "striutl.c" was improved to forbid paths
 8217   ending with slash except for the root path ("/") and a device root ("C:/").
 8218 
 8219 20091206:
 8220 - The chapters explaining operating system access, primitive actions and exceptions
 8221   in the manual were improved.
 8222 - The codepages 708, 862, 864 and 874 were added to the charsets.s7i library.
 8223 - The functions 'remove' and 'rename' were renamed to 'removeFile' and 'moveFile'
 8224   in various files.
 8225 - The functionality of 'removeFile' was changed such that removing a nonexisting file
 8226   raises an exception.
 8227 - The functionality of 'moveFile' was changed such that moving to an existing file
 8228   raises an exception.
 8229 - The compiler was improved to use the function floatLiteral to write occurrences
 8230   of float literals to the generated C program.
 8231 - The functions actStr, act_str, filLit, fltDgts, refCatStr, refStr, typStr and
 8232   typ_str were changed to use cstri_to_stri() instead of cstri_expand().
 8233 - The compiler (comp.sd7) and the interpreter (hi) were improved to support the
 8234   actions BST_LNG and BST_VALUE.
 8235 - The toutf8.sd7 example program was improved to support more codepages.
 8236 
 8237 20091115:
 8238 - The Unicode support for the functions shell, cmd_sh and popen was improved to
 8239   use wide char (UTF-16) functions under Windows and normal (UTF-8) functions under
 8240   Unix/Linux/BSD.
 8241 - The compiler (comp.sd7) was improved to support the actions CMD_FILEMODE,
 8242   CMD_SET_FILEMODE, DRW_OPEN_SUB_WINDOW, DRW_SETPOS, DRW_XPOS and DRW_YPOS.
 8243 - The compiler was improved to make sure that generated C programs always define
 8244   the create_... and destr_... functions.
 8245 - The handling of the HSH_IDX action in the compiler was improved.
 8246 - An error in the compiler concerning forward declarations of function pointers was
 8247   fixed.
 8248 - The function bigCpy in "big_rtl.c" was improved to work correctly when source and
 8249   destination are identical.
 8250 - Comments were added to the functions bigGrow and bigShrink in "big_rtl.c" to explain
 8251   that this functions work when source and destination are identical.
 8252 - Checks for the bigInteger assignment and the functions +:= and -:= were added to
 8253   the file "chkbig.sd7".
 8254 - The types os_path_stri and os_path_char were renamed to os_stritype and os_chartype
 8255   respectively in various files.
 8256 - The os_path_... macros were renamed to corresponding os_stri_... macros in various
 8257   files.
 8258 - The bas7.sd7 (basic interpreter) example program was improved.
 8259 - The functions gkbButtonPressed, drwOpen, drwOpenSubWindow, drwSetPos, drwHeight and
 8260   drwWidth in "drw_win.c" were improved to work correctly for subwindows.
 8261 - The function drwSetPos in "drw_x11.c" was improved to work correctly for subwindows.
 8262 - The functions prc_args, prc_repeat and prc_while in "prclib.c" were improved.
 8263 - The functions copyArgv and getArgv were added to "str_rtl.c".
 8264 
 8265 20091101:
 8266 - The interpreter (hi) and the compiler (comp.sd7) were improved such that the actions
 8267   STR_CPY, STR_APPEND, ARR_CPY, ARR_APPEND and SET_CPY work correctly when source and
 8268   destination are identical.
 8269 - The compiler was improved to use the functions stringLiteral, bigIntegerLiteral and
 8270   bitsetLiteral to write occurrences of string, bigInteger and bitset literals to
 8271   the generated C program.
 8272 - The functions arrHead, arrHeadTemp, arrRange, arrRangeTemp, arrTail and arrTailTemp
 8273   in the file "arr_rtl.c" were added or improved to avoid unnecessary copies of arrays
 8274   in compiled programs.
 8275 - The functions free_helem, free_hash, create_helem, create_hash and copy_hash in the
 8276   files "hshlib.c" and "hsh_rtl.c" were improved to increase the speed of the actions
 8277   HSH_CPY and HSH_CREATE in interpreted and compiled programs.
 8278 - The function chrCLit was added to the file "chr_rtl.c" to support the action CHR_CLIT
 8279   in the interpreter and in the compiler.
 8280 - The function chkPower in the file "chkbig.sd7" was improved.
 8281 - The function check_assign was added to the file "chkset.sd7".
 8282 - The functions check_string_append and check_string_assign in the file "chkstr.sd7"
 8283   were added or improved.
 8284 - Several improvements were done to avoid that old memory areas were accessed after
 8285   realloc() was called.
 8286 - The function bigLShiftOne was added to "big_rtl.c" and "big_gmp.c" to allow faster
 8287   computation of powers of two in compiled and interpreted programs.
 8288 - The functions bigIPowN, bigIPow1 and bigIPow in "big_rtl.c" were added or improved.
 8289 - The function drwOpenSubWindow in "drw_x11.c" was changed to omit the creation of a
 8290   graphic context.
 8291 - The function filWrite in "fil_rtl.c" was improved.
 8292 - The functions strAppend, strAppendTemp, strHead and strHeadTemp in "str_rtl.c" were
 8293   added or improved.
 8294 - A possible memory leak in 'while' and 'repeat' loops of compiled programs, which
 8295   can occur when the conditional expression produces temporary values in the heap,
 8296   was closed.
 8297 - The handling of the action STR_APPEND in the compiler was improved to use strPush
 8298   when possible.
 8299 - The handling of bigInteger expressions with constants in the compiler was improved.
 8300 - The compiler was improved to support the actions CHR_CLIT, CMD_FILETYPE_SL and
 8301   CMD_SYMLINK.
 8302 
 8303 20091018:
 8304 - The compiler (comp.sd7) was improved to support the primitive actions CMD_GET_CTIME
 8305   and TIM_FROM_TIMESTAMP.
 8306 - The handling of the action ARR_ARRLIT in the compiler was improved to work without
 8307   calling the function arrArrlit.
 8308 - The handling of the action ARR_IDX in the compiler was improved to use the function
 8309   arrIdxTemp when the array is a temporary value.
 8310 - The handling of the action DRW_OPEN in the compiler was improved.
 8311 - The interpreter (hi) and the compiler were improved to support the primitive actions
 8312   STR_PUSH, TIM_SET_LOCAL_TZ, DRW_OPEN_SUB_WINDOW, DRW_SETPOS, DRW_XPOS and DRW_YPOS.
 8313 - The bas7.sd7 (basic interpreter) example program was improved.
 8314 - The functions drwPointerXpos, drwPointerYpos, drwHeight and drwWidth in the file
 8315   drw_win.c were improved.
 8316 - The function arrArrlit was removed and the function arrIdxTemp was added in the file
 8317   arr_rtl.c .
 8318 - Parameter names were added to the function prototypes of the header file str_rtl.h .
 8319 - The functions closedir and wclosedir in dir_win.c were improved to call FindClose.
 8320 
 8321 20091004:
 8322 - The function isDigitString in the seed7_05.s7i library was improved.
 8323 - The bas7.sd7 (basic interpreter) example program was improved.
 8324 - The functions fltIPow and fltRand in the file flt_rtl.c were improved.
 8325 
 8326 20090920:
 8327 - A FAQ about extensible programming languages and the portability of Seed7 programs,
 8328   was added.
 8329 - The bas7.sd7 (basic interpreter) example program was improved.
 8330 - The function gkbButtonPressed in the file drw_win.c was improved.
 8331 
 8332 20090906:
 8333 - Various syntax descriptions in the manual were improved.
 8334 - The functions get_uint16_le, get_uint32_le, get_uint16_be and get_uint32_be in the
 8335   binary.s7i library were added or improved.
 8336 - The functions pointerXPos and pointerYPos were added to the graph.s7i library.
 8337 - The function buttonPressed was added to the keybd.s7i library.
 8338 - A default 'value' was added to the 'set of' types in the seed7_05.s7i library.
 8339 - The types filePermission and fileMode and the functions fileMode and setFileMode
 8340   were added to the seed7_05.s7i library.
 8341 - The carddemo.sd7 example program was improved to demonstrate taking and moving
 8342   a card with the mouse.
 8343 - Set membership tests were added to the chkset.sd7 program.
 8344 - The comanche.sd7 webserver was improved to use a "Content-Type" of "text/html" for
 8345   all files with extension ".htm" or ".html".
 8346 - The comanche.sd7 webserver was changed to catch the exception FILE_ERROR (which
 8347   is raised when a browser aborts a connection).
 8348 - The compiler (comp.sd7) was improved to do some optimizations for set membership
 8349   tests.
 8350 - Some spelling corrections were done in the startrek.sd7 example program.
 8351 - The tarx.sd7 example program was improved to read and write file modes.
 8352 - Several changes in the interpreter and the runtime library were done to reduce the
 8353   number of warnings generated by the C compiler.
 8354 - The functions arrAppend, arrCat and arrExtend in "arr_rtl.c" were improved to contain
 8355   checks for MEMORY_ERROR when the maximum index is not representable as integer.
 8356 - The function copy_any_file in "cmd_rtl.c" was improved to change the
 8357   ownership of a file after the timestamps and the file mode have been changed.
 8358 - The functions cmdFileMode and cmdSetFileMode were added to "cmd_rtl.c".
 8359 - The functions gkbButtonPressed, drwPointerXpos and drwPointerYpos were added to the
 8360   files "drw_x11.c" and "drw_win.c".
 8361 - The interpreter (hi) and the compiler (comp.sd7) were improved to support the primitive
 8362   actions CMD_FILEMODE, CMD_SET_FILEMODE, DRW_POINTER_XPOS, DRW_POINTER_YPOS and
 8363   GKB_BUTTON_PRESSED.
 8364 - The function alternate_utime was improved to correct buggy behaviour of bcc32
 8365   (Bcc32 sets the modification time of a file on a FAT filesystem wrong).
 8366 
 8367 20090816:
 8368 - The chapters explaining external files, the KEYBOARD file, files with line structure
 8369   and sockets in the manual were added or improved.
 8370 - The function timestamp1970ToTime was added to the 'time.s7i' library.
 8371 - The tarx.sd7 example program was improved.
 8372 - Documentation comments in the libraries rational.s7i, bigrat.s7i, keybd.s7i,
 8373   socket.s7i and time.s7i were improved.
 8374 - The function alternate_utime was introduced to allow changing the access and
 8375   modification times of directories under Windows.
 8376 - The makefiles mk_bcc32.mak, mk_mingw.mak, mk_msvc.mak, mk_msys.mak and mk_nmake.mak
 8377   were improved to support alternate_utime.
 8378 - The type 'screen_keybd_file' was renamed to 'console_keybd_file' and the keyboard file
 8379   'SCREEN_KEYBOARD' was renamed to 'CONSOLE_KEYBOARD' in the file 'keybd.s7i'.
 8380 
 8381 20090802:
 8382 - The FAQ about static type checking was improved.
 8383 - The chapters explaining the for-each statement and the types integer, hash and set in
 8384   the manual were improved.
 8385 - The chapters explaining the file types external_file, utf8_file, keyboard_file and
 8386   socket in the manual were added or improved.
 8387 - The chapters explaining file scanning and the function argv(PROGRAM) were improved.
 8388 - Documentation comments were added to the functions flush, writeln, eof, hasNext,
 8389   length, listen and accept in socket.s7i .
 8390 - The functions gets(utf16le_file, integer) and gets(utf16be_file, integer) in the
 8391   utf16.s7i library were improved.
 8392 
 8393 20090719:
 8394 - The charsets.s7i library was improved to support the character sets armscii_8, geostd8,
 8395   ns_4551_1, utf-16be, utf-16le and utf-7.
 8396 - The functions utf16beToStri, utf16leToStri, removeUtf16SurrogatePairs and utf7ToStri
 8397   were added to the charsets.s7i library.
 8398 - The functions getWord, getNonDigits and getQuotedText were added to the scanfile.s7i
 8399   library.
 8400 - The functions skipLine and getLine were added to the scanstri.s7i library.
 8401 - Several changes in the interpreter and the runtime library were done to reduce the
 8402   number of warnings generated by the C compiler.
 8403 - The file src/read_me.txt was improved to explain C compiler warnings because of unused
 8404   parameter 'arguments'.
 8405 
 8406 20090705:
 8407 - The chapter explaining the function 'getenv' in the manual was improved.
 8408 - The dom.s7i library was renamed to xmldom.s7i and its functionality was improved.
 8409 - A new library named inifile.s7i, which allows reading key value pairs from an INI file,
 8410   was added.
 8411 - The functions getLineComment, getLine, skipXmlComment, getXmlTagHeadOrContent
 8412   skipXmlTag, getNextXmlAttribute and getNextHtmlAttribute in scanfile.s7i were added
 8413   or improved.
 8414 - The functions getSymbol, skipXmlComment, getXmlTagHeadOrContent skipXmlTag,
 8415   getNextXmlAttribute and getNextHtmlAttribute in scanstri.s7i were added or improved.
 8416 - The function isDigitString was added to the seed7_05.s7i library.
 8417 - The functions open_utf16le and open_utf16be in the utf16.s7i library were improved.
 8418 - A new library named xml_ent.s7i, which supports XML entity handling, was added.
 8419 - The compiler comp.sd7 was improved to create more prototype definitions of extern
 8420   library functions.
 8421 - The interpreter (hi) and the compiler (comp.sd7) were improved to accept an UTF-8
 8422   byte order mark at the beginning of a source or include/library file.
 8423 - The types gmpBiginttype and rtlBiginttype in the files big_gmp.c and big_rtl.c were
 8424   replaced with biginttype (defined in common.h).
 8425 - The function bigLowestSetBit in big_rtl.c was improved to raise RANGE_ERROR when
 8426   the result does not fit in an integer.
 8427 - The function move_any_file in cmd_rtl.c was improved to raise FILE_ERROR when the
 8428   file cannot be renamed.
 8429 - The function hsh_idx in hshlib.c was improved to work correctly when the hash is
 8430   destroyed after indexing.
 8431 - The const qualifier was added in many *.c and *.h files.
 8432 - Several makefiles were changed to use BIGINT_LIB_DEFINE and BIGINT_LIB to decide about
 8433   the big integer library (big_rtl.c or big_gmp.c).
 8434 
 8435 20090621:
 8436 - The chapters explaining set types and primitive actions in the manual were improved.
 8437 - The codepages 720, 1125, 1255, 1256, 1258, 8859_6 and 8859_8 were added to the
 8438   charsets.s7i library.
 8439 - A new library named dom.s7i, which contains a simple dom parser, was added.
 8440 - Several changes in the interpreter and the runtime library were done to reduce the
 8441   number of warnings generated by the C compiler.
 8442 - The makefile mk_cygw.mak was improved to better support compilation with Cygwin.
 8443 - The file src/read_me.txt was improved to explain compiling under Windows with Cygwin.
 8444 - The function 'exit' was introduced to terminate a program with a return code.
 8445 - The functions setIsSubset and setIsProperSubset were introduced in set_rtl.c and used
 8446   in setlib.c and comp.sd7 to replace the functions setGe, setLe, setGt and setLt.
 8447 - The functions setCmp, setEq, setIsSubset and setIsProperSubset in set_rtl.c were
 8448   improved to avoid accessing memory beyond the set data structure.
 8449 - The function setDiff in set_rtl.c was improved.
 8450 - The chkset.sd7 program was improved with additional checks for the 'compare' function
 8451   and the set relations.
 8452 - The chk_all.sd7 check program was improved to take the changes in chkset.sd7 into
 8453   account.
 8454 - The compiler comp.sd7 was improved to support the compilation of the primitive action
 8455   SET_CMP.
 8456 - The compiler comp.sd7 was improved to compile programs with sets as parameters in
 8457   user defined functions also correctly with the bcc32 C compiler.
 8458 
 8459 20090607:
 8460 - The chkint.sd7 program was improved with additional checks for the binomial coefficient
 8461   (for values of k greater than n and for negative values of n) and 'bitLength'.
 8462 - The chkstr.sd7 program was improved with additional checks for string subranges
 8463   ([ A .. B ] and [ A len B ]).
 8464 - An error concerning array subranges was fixed in the function arr_range (arrlib.c).
 8465 - Several changes in the interpreter and the runtime library were done to reduce the
 8466   number of warnings generated by the C compiler.
 8467 - Occurrences of 'float' in the compiler (comp.sd7) were replaced with 'floattype'.
 8468 - Functions to compute the most and least significant bit of unsigned integers with
 8469   a width of 8, 16, 32 and 64 bits were added to the file int_rtl.c.
 8470 - The new functions ***MostSignificantBit and ***LeastSignificantBit were used in the
 8471   following functions: intBitLength, intLog2, bigBitLength, bigDiv, bigLog2,
 8472   bigLowestSetBit, bigMDiv, bigMod, bigRand, bigRem, setCmp, setMax, setMin and setRand.
 8473 
 8474 20090524:
 8475 - Prevention against a Mac OS X malloc() error was added to the function filGets
 8476   (in fil_rtl.c). When malloc() is not able to allocate memory it should return NULL.
 8477   The Mac OS X malloc() function additionally writes a message to stderr. This
 8478   behaviour is not according to K&R C, ANSI C, POSIX or SUS. Thanks to
 8479   John B. Matthews and Frank Goenninger for their help.
 8480 - The FAQ and the file src/read_me.txt were improved to explain what happens when
 8481   someone forgot to run 'make depend' before running 'make'.
 8482 - The compiler (comp.sd7) was improved to generate better C code to copy arrays and
 8483   hashes. Now the C code is accepted by gcc again and therefore panic.sd7 can again
 8484   be compiled under Linux.
 8485 - Several changes in the interpreter and the runtime library were done to reduce the
 8486   number of warnings generated by the C compiler.
 8487 - A new library named binary.s7i, which contains functions to read binary data from
 8488   a string or file, was added.
 8489 - A new library named zip.s7i, which contains a zip uncompression function, was added.
 8490 - The type 'SIZE_TYPE' was replaced by 'size_t' in various *.c and *.h files.
 8491 
 8492 20090510:
 8493 - A new example program, the Comanche webserver (comanche.sd7), was added.
 8494 - The function getNonDigits was added to the scanstri.s7i library.
 8495 - Experimental support for new attribute parameters was added.
 8496 - Memory leaks in the functions hsh_excl (hshlib.c) and hshExcl (hsh_rtl.c) were fixed.
 8497 
 8498 20090426:
 8499 - The function 'inflate' was added to the gzip.s7i library.
 8500 - The function getNextHtmlAttribute was added to the scanfile.s7i library.
 8501 - The functions getNextXmlAttribute and getNextHtmlAttribute were added to the
 8502   scanstri.s7i library.
 8503 - A sokoban puzzle game example program (sokoban.sd7) was added.
 8504 - A new library sokoban1.s7i, which contains the 90 classic sokoban levels, was added.
 8505 - Parameter names were added to the function prototypes of the header files actutl.h,
 8506   analyze.h, error.h and findid.h .
 8507 - The function cp_to_wpath was changed to raise RANGE_ERROR when a path contains a
 8508   backslash.
 8509 
 8510 20090413:
 8511 - A description of data struct elements was added to the chapters rational, bigRational,
 8512   complex, color and time in the manual.
 8513 - A description of the functions fileTypeSL, getATime, getCTime, getMTime, setATime,
 8514   setMTime and removeAnyFile was added to the chapter 'OS access' in the manual.
 8515 - The compiler (comp.sd7) was improved to correctly handle hashtables as elements of
 8516   structs.
 8517 - The compiler (comp.sd7) was improved to generate dispatcher functions which copy a
 8518   reference to a value when the interface needs the value itself (the value is used and
 8519   possibly freed afterwards by the caller).
 8520 - The functions getXmlTagHeadOrContent in the scanfile.s7i and scanstri.s7i libraries were
 8521   improved to correctly read the head of empty element tags when they have no attributes
 8522   (E.g: The tag head of "<aTag/>" is "<aTag" ).
 8523 - The functions getXmlCharacterReference and skipXmlTag were added to the scanfile.s7i
 8524   library.
 8525 - The ENABLE_SORT template function, which allows the generation of a sort function, was
 8526   added to the seed7_05.s7i library.
 8527 - The functions fileTypeSL, cloneFile and copyFile were added to the seed7_05.s7i library.
 8528 - The functions str_dd_mm_yyyy, str_hh_mm, timestamp1970, time and getCTime were added to
 8529   the time.s7i library.
 8530 - The function alternate_localtime_r in the file tim_win.c was improved to correctly
 8531   handle daylight saving time.
 8532 - The tarx.sd7 example program was improved to use the function timestamp1970.
 8533 
 8534 20090329:
 8535 - The chapters explaining exponentiation and operating system functions in the manual
 8536   were improved.
 8537 - The function getSymbolInXmlTag in scanfile.s7i was fixed to really return "" when EOF
 8538   was reached.
 8539 - A documentation comment was added to the function getNextXmlAttribute in scanfile.s7i
 8540   and the function was improved to correctly handle tags ending with > and /> .
 8541 - The functions cmd_sh and popen were moved from progs.s7i and seed7_05.s7i to the new
 8542   library shell.s7i .
 8543 - The function 'shell' was introduced execute shell commands and to return the exit
 8544   code of the shell.
 8545 - The chkbig.sd7 program was improved to contain checks for the exponentiation of -1.
 8546 - The chkexc.sd7 program was improved to contain more checks for exceptions raised by
 8547   integer exponentiation.
 8548 - The compiler (comp.sd7) was improved to generate better code for some bigInteger
 8549   operations and to support the actions cmd_readlink and cmd_remove_any_file.
 8550 - Parameter names were added to the function prototypes of the header file big_drv.h .
 8551 - The functions bigSuccTemp and bigPredTemp were added to the files big_rtl.c and
 8552   big_gmp.c .
 8553 - A documentation comment was added to the function cp_to_command in the file striutl.c .
 8554 
 8555 20090309:
 8556 - The chapters about boolean, complex, char, string and time in the manual were improved.
 8557 - A new library named utf16.s7i, which contains support to read and write UTF-16 files,
 8558   was added.
 8559 - The functions removeAnyFile, readlink and symlink were added to the seed7_05.s7i
 8560   library.
 8561 - The seed7_05.s7i function fileType was improved to return the values FILE_ABSENT,
 8562   FILE_UNKNOWN, FILE_REGULAR, FILE_DIR, FILE_CHAR, FILE_BLOCK, FILE_FIFO, FILE_SYMLINK
 8563   and FILE_SOCKET.
 8564 - The functions strTimeZone, getATime, setATime, getMTime and setMTime were added to the
 8565   time.s7i library.
 8566 - The time.s7i functions str_date, str_time and toGMT were renamed to strDate, strTime
 8567   and getUTC respectively.
 8568 - The time.s7i function 'str' for the type 'time' was improved to include also a time
 8569   zone description.
 8570 - The K&R function headers in several files were corrected.
 8571 - The files tim_rtl.c and tim_rtl.h were introduced to support conversion between 'time'
 8572   and Unix timestamps with the functions mkutc, timFromTimestamp and timToTimestamp.
 8573 - The driver functions timAwait and timNow were improved in the files tim_dos.c,
 8574   tim_unx.c and tim_win.c .
 8575 - The functions remove_dir, remove_any_file, copy_dir, copy_any_file, cmdBigFileSize,
 8576   cmdFileType, cmdGetcwd and cmdSymlink in the file cmd_rtl.c were improved.
 8577 - The functions cmdGetATime, cmdGetMTime, cmdReadlink, cmdRemoveAnyFile, cmdSetATime
 8578   and cmdSetMTime were added to the file cmd_rtl.c .
 8579 - The feature test macro WCHAR_OS_PATH was renamed to OS_PATH_WCHAR in several files.
 8580 - Several makefiles were improved to create defines for HAS_SYMLINKS, USE_LOCALTIME_R,
 8581   INT64TYPE_SUFFIX_LL, OS_PATH_UTF8, OS_PATH_WCHAR, os_getcwd, os_opendir, os_readdir,
 8582   os_closedir, os_DIR, os_dirent_struct and os_lstat in the file version.h .
 8583 - The interpreter and the compiler (comp.sd7) were improved to support the new
 8584   primitive actions CMD_GET_ATIME, CMD_GET_MTIME, CMD_READLINK, CMD_REMOVE_ANY_FILE,
 8585   CMD_SET_ATIME and CMD_SET_MTIME.
 8586 - An explanation of the defines OS_PATH_WCHAR, OS_PATH_UTF8, os_getcwd, os_opendir,
 8587   os_readdir, os_closedir, os_DIR, os_dirent_struct and os_lstat was added to the file
 8588   'src/read_me.txt'.
 8589 - The function alternate_localtime_r was introduced to be used with bcc32 (which has
 8590   strange ideas about when daylight saving time begins).
 8591 - The files bas7.sd7 and planets.sd7 were adjusted to use the improved time functions.
 8592 - Spelling errors in the FAQ and in src/read_me.txt were fixed.
 8593 
 8594 20090222:
 8595 - A new example program (chkhsh.sd7), which checks hash table operations, was added.
 8596 - The logic to link to libraries in the compiler (comp.sd7) was improved.
 8597 - A compare function was added for the type 'boolean'.
 8598 - The file big_rtl.c was improved to avoid unnecessary shifts wider than the size of
 8599   the type (the result of this shifts was not used anyway).
 8600 - The functions remove_dir, remove_any_file, copy_file, copy_dir, copy_any_file and
 8601   move_any_file in the file cmd_rtl.c were improved to use 'os_path_stri' instead of
 8602   'char *'.
 8603 - The driver functions cmdCopy, cmdMove and cmdRemove were improved to use wide char
 8604   (UTF-16) functions under Windows and normal (UTF-8) functions under Unix/Linux/BSD.
 8605 - The file common.h was improved to contain default defines for os_rmdir, os_chown,
 8606   os_chmod, os_utime, os_utimbuf_struct, os_remove and os_rename.
 8607 - The functions dirOpen, dirRead and dirClose in the file dir_rtl.c were improved
 8608   to use os_opendir, os_readdir and os_closedir (defined in dir_rtl.h).
 8609 - Commands to create defines for MKDIR_WITH_ONE_PARAMETER, CHOWN_MISSING and
 8610   CHMOD_MISSING in the file version.h were removed from the makefiles.
 8611 - The K&R function headers in several files were corrected.
 8612 - An explanation of the defines WCHAR_OS_PATH, os_chdir, os_mkdir, os_rmdir, os_fstat,
 8613   os_stat, os_stat_struct, os_chown, os_chmod, os_utime, os_utimbuf_struct, os_remove
 8614   and os_rename was added to the file 'src/read_me.txt'.
 8615 
 8616 20090201:
 8617 - A new saving phase was added to the savehd7.sd7 example program. Savehd7 can be used
 8618   to save a potentially damaged harddisk partition to an image file.
 8619 - A new chapter about class methods was added to the manual.
 8620 - The chapter about the type 'type' in the manual, was improved.
 8621 - A check for NULL pointers was added to the function raise_with_arguments.
 8622 
 8623 20090118:
 8624 - The savehd7.sd7 example program, which can be used to save a potentially damaged
 8625   harddisk partition to an image file, was improved.
 8626 - A FAQ about compiling the Seed7 interpreter was added.
 8627 - The function bigFileSize was added to the bigfile.s7i library.
 8628 - The functions file_size and file_type were renamed to fileSize and fileType in the
 8629   seed7_05.s7i library.
 8630 - The driver functions cmdBigFileSize, cmdChdir, cmdFileType cmdFileSize, cmdMkdir were
 8631   improved to use wide char (UTF-16) functions under Windows and normal (UTF-8) functions
 8632   under Unix/Linux/BSD.
 8633 - In the files big_rtl.c and big_gmp.c the function bigFromInt32 was added and the
 8634   functions bigIConv and bigOrd were removed.
 8635 - In the file big_drv.h the macros bigIConv and bigOrd were added.
 8636 - In the file big_rtl.c the functions bigFromUInt32 and bigFromUInt64 were fixed.
 8637 - The feature test macro WIDE_CHAR_STRINGS was renamed to UTF32_STRINGS in various files.
 8638 - The primitive action CMD_LNG was renamed to CMD_FILESIZE.
 8639 - Several makefiles were improved to create defines for os_chdir, os_mkdir, os_fstat,
 8640   os_stat and os_stat_struct in the file version.h .
 8641 
 8642 20090104:
 8643 - A new example program (savehd7.sd7), which can be used to save a partially damaged
 8644   harddisk partition to an image file, was added.
 8645 - Several spelling errors in the FAQ and in the manual were fixed.
 8646 - The library line.s7i was improved to be useable as file which flushes every line.
 8647 - The bas7.sd7 (basic interpreter) example program was improved.
 8648 - The preprocessor macros HAS_INT64TYPE and INT64TYPE_IS_INT64 were replaced
 8649   by INT64TYPE in various files.
 8650 - The makefiles were improved to create defines for INT64TYPE and UINT64TYPE in the
 8651   file version.h .
 8652 - A makefile mk_osx.mak was added to support compilation under Mac OS X with Xcode.
 8653 - The type PRIMITIVE_FILE was improved to support the 'setbuf' function.
 8654 - Errors in the functions setIConv, prot_set and bigToInt64 were fixed.
 8655 
 8656 20081221:
 8657 - The chapter about the Seed7 structured syntax definition in the manual was improved
 8658   (thanks to James Harris for the suggestions and the proofreading).
 8659 - A new library named gethttp.s7i, which contains support to get data with the
 8660   HTTP protocol, was added.
 8661 - A new library named html.s7i, which contains support functions for HTML, was added.
 8662 - The bas7.sd7 (basic interpreter) example program was improved.
 8663 - The compiler (comp.sd7) was improved to support the addresses of ITF_CPY and
 8664   ITF_CREATE. That way hash tables with interface values are supported.
 8665 
 8666 20081208:
 8667 - A new chapter about the Seed7 structured syntax definition was added to the manual.
 8668 - The chapter about declarations in the manual was improved.
 8669 - The function getValueOfHeaderAttribute was added to the scanstri.s7i library.
 8670 - The seed7_05.s7i library was improved to support case statements for the type boolean.
 8671 - The wiz.sd7 example program was improved.
 8672 
 8673 20081116:
 8674 - The support for compilation with the bcc32 C compiler from BDS was improved such that
 8675   the chk_all.sd7 check program succeeds.
 8676 - The FAQ about the operating systems supported by Seed7, was improved.
 8677 - A chapter describing how to replace pointers with interface types was added to the
 8678   manual.
 8679 - The obsolete use of the operator >> and << for file input and output was removed
 8680   from the seed7_05.s7i library.
 8681 - The general check program chk_all.sd7 was improved to check also for the successful
 8682   compilation of the compiler.
 8683 - The compiler (comp.sd7) was improved to generate C programs which are acceptable for
 8684   the bcc32 C compiler.
 8685 - The compiler was improved to check that a temporary tmp_*.c file is marked with a
 8686   temp_marker.
 8687 - The documentation file src/read_me.txt was improved to explain the #define value
 8688   CHECK_INT_DIV_BY_ZERO.
 8689 
 8690 20081102:
 8691 - A new gzip.s7i library, which contains a gzip uncompression function, was added.
 8692 - The functions getXmlTagHeadOrContent, getSymbolInXmlTag, getHtmlAttributeValue and
 8693   getNextXmlAttribute were added to the scanfile.s7i library.
 8694 - In the library scanstri.s7i the function getXmlTagHeadOrContent was added and the
 8695   function getSymbolInHtmlTag was renamed to getSymbolInXmlTag.
 8696 - The call stack written by the (hi) interpreter, when an uncaught exception occurs, was
 8697   improved.
 8698 - The compiler (comp.sd7) was improved to write a file name and a line when an uncaught
 8699   exception occurs.
 8700 - The handling of sockets in the compiler was improved to support them also for the
 8701   cl C compiler from msvc.
 8702 - The makefiles were improved to define 'make clean' additionally to 'make clear' to
 8703   remove the object files and libraries which were created during the compilation process.
 8704 - The documentation file src/read_me.txt was improved to explain more #define values used
 8705   in the file version.h .
 8706 
 8707 20081019:
 8708 - The support for compilation with the cl C compiler from msvc was improved such that
 8709   the chk_all.sd7 check program succeeds.
 8710 - The chkexc.sd7 and chkflt.sd7 example programs were improved to check for more cases
 8711   of division by zero.
 8712 - The compiler (comp.sd7) was improved to take the config values ISNAN_WITH_UNDERLINE,
 8713   CHECK_INT_DIV_BY_ZERO and LINKER_FLAGS into account.
 8714 - The compiler was improved to avoid boolean expressions with too much parenthesis levels.
 8715 - The functions opendir and readdir in the files dir_dos.c and dir_win.c were improved to
 8716   make buffer overflows impossible.
 8717 - The files dir_rtl.c and dir_rtl.h were introduced to support reading directories based
 8718   on opendir(), readdir() and closedir() and optionally on the wide char functions
 8719   wopendir(), wreaddir() and wclosedir().
 8720 - An implementation of the functions wopendir(), wreaddir() and wclosedir() based on
 8721   the functions FindFirstFile() and FindNextFile() was added to dir_win.c .
 8722 - The documentation file src/read_me.txt was improved to explain compilation with bcc32.
 8723 - The makefiles mk_mingw.mak, mk_msys.mak, mk_nmake.mak, mk_msvc.mak and mk_bcc32.mak
 8724   were improved to support the new wide character directory read functions.
 8725 - The demo mode of the mahjong.sd7 example program was improved.
 8726 - The file scr_win.c was improved to support the keypad cursor keys better.
 8727 - The functions wstri_expand and wstri_to_stri were added to the file striutl.c .
 8728 
 8729 20081005:
 8730 - The chapter about primitive actions in the manual was improved.
 8731 - The definition of STD_NULL in the seed7_05.s7i library was improved to support
 8732   read and write operations with STD_NULL.
 8733 - The bas7.sd7 (basic interpreter) example program was improved to support file numbers
 8734   outside the range of 1 to 256 and to convert arrays to images when necessary.
 8735 - The compiler (comp.sd7) was improved to support local interface declarations and
 8736   dynamic functions which refer to constant values.
 8737 - Several improvements were done in the compiler to support generating C programs
 8738   acceptable for the cl compiler from msvc and for the bcc32 compiler.
 8739 - A check for double function pointers was added to the function get_primact() in the
 8740   file actutl.c .
 8741 - A boss mode was added to the lander.sd7 and sudoku7.sd7 example programs.
 8742 - The file common.h was improved to introduce the types int64type, uint64type,
 8743   int32type, uint32type, int16type, uint16type, int8type and uint8type.
 8744 - The functions bigULConv and bigLOrd were renamed to bigFromUInt64 and bigToInt64
 8745   respectively.
 8746 - The function bigCLit() was improved to avoid C code that the cl C compiler from msvc
 8747   miscompiles to the wrong machine code.
 8748 - The functions setupFloat and _matherr and the makefile mk_bcc32.mak were added
 8749   to support compilation with bcc32.
 8750 - The feature test macro HAS_LONGTYPE_64 was renamed to HAS_INT64TYPE in various files.
 8751 - The feature macros INHIBIT_C_WARNINGS and NO_EMPTY_STRUCTS were added or improved.
 8752 - The makefiles mk_mingw.mak, mk_msvc.mak and mk_nmake.mak were changed to create and
 8753   use the file setpaths.c instead of several other files.
 8754 
 8755 20080921:
 8756 - The chapters about object orientation and primitive actions in the manual,
 8757   were improved.
 8758 - The primitive actions BIG_MCPY, FLT_HSIN, FLT_HCOS and FLT_HTAN were renamed to
 8759   BIG_MULT_ASSIGN, FLT_SINH, FLT_COSH and FLT_TANH respectively.
 8760 - The bas7.sd7 (basic interpreter) example program was improved.
 8761 - The compiler (comp.sd7) was improved to support the primitive actions CHR_CONV,
 8762   FLT_PLUS, PRG_MATCH_EXPR, REF_CAT_PARSE, REF_CONV and REF_SETVAR.
 8763 - The compiler (comp.sd7) was improved to support HASHOBJECT constants.
 8764 - A binary gcd function (binaryGcd) was added to the gcd.sd7 example program.
 8765 - The X11 keyboard driver was improved to support the num-lock functionality.
 8766 - The functions hash_data_to_list and hash_key_to_list were added to the file listutl.c
 8767 - The is_var function defined in progs.s7i library was renamed to isVar.
 8768 - The functions matchExpr, setVar, hash_data_to_list and hash_key_to_list were added
 8769   to the progs.s7i library.
 8770 
 8771 20080902:
 8772 - The FAQ about development speed and type checking was improved.
 8773 - The chapters about boolean, bigInteger, rational, bigRational, float, char, complex,
 8774   string, reference, ref_list and program in the manual, were improved.
 8775 - The functions rflTail and rflRange were improved to raise MEMORY_ERROR instead of
 8776   RANGE_ERROR in out of memory situations.
 8777 - The 'conv' operator was improved to convert an integer to a float, rational, complex
 8778   or bigRational, to convert a float to a complex and to convert a bigInteger to
 8779   bigRational.
 8780 - The function getSymbolWithHtmlEntities was added to the scanfile.s7i library.
 8781 - The getc function for the type null_file was improved.
 8782 - The 'conj' operator was added for the type complex.
 8783 - The compiler (comp.sd7) was improved to support the primitive action FLT_ICONV.
 8784 - Several changes were done to support compilation when DO_HEAP_STATISTIC is defined.
 8785 - The documentation file src/read_me.txt was improved.
 8786 - The 'reference' functions category, getType, is_var, local_vars, local_consts, body,
 8787   array_to_list, array_min_index, array_min_index, struct_to_list, interface_to_struct,
 8788   getValue, setCategory, setType were improved to raise the exception RANGE_ERROR
 8789   when a reference is NIL or does not have the required category.
 8790 
 8791 20080817:
 8792 - The FAQ about static type checking was improved and an FAQ about development speed
 8793   and type checking was added.
 8794 - A chapter about the type 'category' was added to the manual.
 8795 - The chapters about boolean, string, set and reference in the manual, were improved.
 8796 - The functions toUuencoded and fromUuencoded were added to the encoding.s7i library.
 8797 - The html entity 'ang' and several comments were added to the html_ent.s7i library.
 8798 - The error management of the chkint.sd7 program was improved.
 8799 - The 'configValue' function was improved to support values for TWOS_COMPLEMENT_INTTYPE,
 8800   INTTYPE_64BIT and INTTYPE_LITERAL_SUFFIX.
 8801 - The function growStri was improved to work correctly in out of memory situations.
 8802 - The makefiles makefile, mk_cygw.mak, mk_linux.mak, mk_mingw.mak, mk_msvc.mak,
 8803   mk_msys.mak and mk_nmake.mak were improved to define TWOS_COMPLEMENT_INTTYPE when
 8804   appropriate.
 8805 - The file setlib.c was improved to work correctly with bitsettype's of different sizes.
 8806 
 8807 20080803:
 8808 - The charsets.s7i library was renamed to chartype.s7i .
 8809 - A new charsets.s7i library, which contains 44 codepages and the functions conv2unicode
 8810   and conv2unicodeByName, was added.
 8811 - The encoding.s7i library, which contains encoding and decoding functions for Base64
 8812   and Quoted-printable, was added.
 8813 - The functions 'ord' and 'conv' and a 'for' loop were added to the type 'category'
 8814   defined in the progs.s7i library.
 8815 - The functions getWord, getQuotedText and getHttpSymbol were added to the scanstri.s7i
 8816   library.
 8817 - The functions getSymbolOrComment, getSymbol and getSymbolInHtmlTag of the scanstri.s7i
 8818   library were improved to return symbols without leading whitespace.
 8819 - The function getHtmlTagOrContent was renamed to getXmlTagOrContent in the scanfile.s7i
 8820   library.
 8821 - A 'for key' loop for arrays, a 'for' loop for HASHSETs, a 'str' function to convert
 8822   integers to strings with base, a 'lpad0' operator for strings and the functions
 8823   striToUtf8, utf8ToStri and toInt were added to the seed7_05.s7i library.
 8824 - The files cgi.s7i and bas7.sd7 were improved to use the new toInt function.
 8825 - The interpreter and the compiler (comp.sd7) were improved to support the new
 8826   primitive actions INT_STR_BASED, STR_LPAD0, STR_TOUTF8 and STR_UTF8TOSTRI.
 8827 - The compiler (comp.sd7) was improved to generate better code for the primitive actions
 8828   ARR_IDX, STR_ELEMCPY and STR_IDX.
 8829 - The toutf8.sd7 example program was modified to use the new charsets.s7i library.
 8830 - The files heaputl.c, heaputl.h, str_rtl.c and strlib.c were improved to use strings
 8831   with capacity for the primitive actions STR_APPEND, STR_CAT and STR_HEAD.
 8832 - The makefiles were changed to use the $(CFLAGS) always when $(CC) is invoked.
 8833 - The socClose function in the file soc_rtl.c was improved to call close() or
 8834   closesocket() depending on the operation system.
 8835 - The functions socGetc, socLineRead and socWordRead of the file soc_rtl.c were improved
 8836   to interpret characters >= '\128\' as unsigned.
 8837 
 8838 20080720:
 8839 - The FAQs about reserved words and templates were improved.
 8840 - The chapters about boolean, integer, bigInteger, rational, float, complex, char
 8841   and array in the manual, were improved.
 8842 - A subrange type was added for the types integer, char and the enumeration types.
 8843 - The makefiles were improved to set the USE_SIGSETJMP macro in the version.h file.
 8844 - The flag USE_SIGSETJMP is now taken into account in the floating point exception
 8845   handling generated by the compiler.
 8846 - Support for the action ENU_CONV was added to the (hi) interpreter and the compiler.
 8847 - A subrange type is used now in the dnafight.sd7 example program.
 8848 - The function update_owner in the file match.c was improved to copy values instead
 8849   of just referring to them.
 8850 - The function getSymbolInHtmlTag was added to the scanstri.s7i library.
 8851 - The interpreter and the compiler (comp.sd7) were improved to support the function
 8852   /:= for the types float and complex.
 8853 - The file seed7/prg/files was replaced with seed7/prg/files.txt which contains
 8854   also a list of include files.
 8855 - The function strUtf8ToStri was added to the file str_rtl.c .
 8856 
 8857 20080707:
 8858 - Various FAQs about reserved words, user defined statements, static type checking,
 8859   garbage collection, container classes, primitive types and the difference between
 8860   object and primitive types were added or improved.
 8861 - The chapters about boolean, integer, bigInteger, rational, bigRational, float,
 8862   complex, char, string and program in the manual, were added or improved.
 8863 - A contour was added to a building in the lander.sd7 example program.
 8864 - Some debugging output was removed from the mahjong.sd7 example program.
 8865 - The function analyze and analyze_stri were renamed to parseFile and parseStri
 8866   respectively in the files progs.s7i, calc.sd7, comp.sd7 .
 8867 - The primitive actions PRG_ANALYZE and PRG_STR_ANALYZE were renamed to PRG_FIL_PARSE
 8868   and PRG_STR_PARSE respectively.
 8869 - The functions prgAnalyze and prgStrAnalyze were renamed to prgFilParse and prgStrParse
 8870   respectively.
 8871 
 8872 20080622:
 8873 - A new example program (cellauto.sd7), which simulates cellular automata, was added.
 8874 - Test cases for the @:= statement were added to the chkstr.sd7 program.
 8875 - The compiler (comp.sd7) was improved such that the generated code raises MEMORY_ERROR
 8876   when the 'malloc' function fails.
 8877 - Support for the actions SET_ICONV and SET_SCONV was added to the (hi) interpreter
 8878   and the compiler.
 8879 - The compiler was improved to optionally generate code without range checks for the
 8880   STR_ELEMCPY action.
 8881 - The handling of functions returning references to existing objects in the compiler
 8882   was improved.
 8883 - Parameter names were added to the function prototypes of the header files bln_rtl.h,
 8884   chr_rtl.h, cmd_rtl.h, flt_rtl.h and ut8_rtl.h.
 8885 - The compile time flag RSHIFT_DOES_SIGN_EXTEND is now taken into account for the
 8886   right shift in the macro 'bitset_pos' defined in the file set_rtl.h.
 8887 
 8888 20080608:
 8889 - The chapter about symbol scanning from a file in the manual, was improved.
 8890 - A new include file (cgi.s7i) to support the Common Gateway Interface, was added.
 8891 - A bug in the getLine function of the scanfile.s7i library was fixed.
 8892 - The functions fileExists was added to the seed7_05.s7i library.
 8893 - The handling of closures in the compiler (comp.sd7) was improved.
 8894 - A new example program (lander.sd7), which simulates a lunar landing, was added.
 8895 
 8896 20080525:
 8897 - A new chapter about complex numbers was added to the manual.
 8898 - A new chapter about symbol scanning from a file, was added to the manual.
 8899 - The makefile for Linux/BSD/Unix and the file mk_linux.mak were improved to be usable
 8900   for shells where a \n in the echo command leads to errors in the make process (thanks to
 8901   Wolfgang Raith, Jens Thoms Toerring and Arnold Hendriks for helping with this issue).
 8902 - The function cp_to_wstri was protected with 'ifdef USE_WFOPEN' in the files striutl.c and
 8903   striutl.h (thanks to Wolfgang Raith for pointing out compilation problems).
 8904 - The functions = and <> were added to the complex.s7i library.
 8905 - The documentation comments of the libraries scanfile.s7i and scanstri.s7i were improved.
 8906 - The functions skipLine and getLine were added to the scanfile.s7i library.
 8907 - The strifile.s7i library, which supports string based files, was added.
 8908 - The documentation comment of the get_symbol function in the file bas7.sd7 was improved.
 8909 - The function processFile which checks the functions getWhiteSpace and getSymbolOrComment
 8910   was added to the program chkscan.sd7 .
 8911 - The functions filWrite and ut8Write were improved to raise FILE_ERROR when the
 8912   call of fwrite() was not able to write the whole string.
 8913 - Support for the primitive action flt_cast was added to the interpreter and compiler.
 8914 - The function setToInt which can convert parts of a set to an integer was added to
 8915   set_rtl.c .
 8916 
 8917 20080508:
 8918 - The FAQ "Why a new programming language?" was improved.
 8919 - The descriptions of the functions 'rem', 'mod', '[ A .. B ] times C', minIdx, maxIdx,
 8920   rand(array), insert(array), category, local_vars, local_consts, setCategory, setParams,
 8921   'in'(ref_list), 'not in'(ref_list), make_list, pos(ref_list), '&:='(ref_list),
 8922   '@:='(ref_list) and the bufferChar variable in the manual were added or improved.
 8923 - The functions float cast, float varCast, boolean varConv, char varConv
 8924   TRACE_REF, pos(ref_list), [minIdx .. maxIdx], minIdx, maxIdx (+ usage of them),
 8925   minIntIdx, maxIntIdx, card(hashSet), xalloc, ord(enum), getwd(null_file) and
 8926   getln(null_file) in the seed7_05.s7i library were added or improved.
 8927 - The compiler (comp.sd7) support for the primitive actions arr_maxidx, arr_minidx,
 8928   flt_icast, int_pow, rfl_ipos and sct_alloc was added or improved.
 8929 - The compiler handling of INTERFACEOBJECTs and the generation of prototypes was improved.
 8930 - The compiler was improved to generate static dispatcher functions.
 8931 - The functions arr_maxidx and arr_minidx were added to the file arrlib.c.
 8932 - The function bigUIConv was added to the file big_gmp.c.
 8933 - The function rflIpos was added to the file rfl_data.c.
 8934 - The function flt_icast was added to the file fltlib.c.
 8935 - The functions refArrmaxpos, refArrminpos, ref_arrmaxpos and ref_arrminpos were renamed to
 8936   refArrmaxidx, refArrminidx, ref_arrmaxidx ref_arrminidx.
 8937 
 8938 20080420:
 8939 - An explanation how to uncompress the Seed7 package was added to the FAQ.
 8940 - The descriptions of the functions log2, gcd, lowestSetBit, 'rem', 'mdiv' and
 8941   'mod' in the manual were added or improved.
 8942 - The functions gcd and modInverse were added to the bigint.s7i library.
 8943 - The bigrat.s7i library was changed to use the gcd function from the bigint.s7i library.
 8944 - The chkbig.sd7 program was improved with additional checks for the monadic plus, 'div',
 8945   'rem', 'mdiv', 'mod' and bigInteger constants.
 8946 - The chkexc.sd7 program was improved with additional checks for bigInteger functions.
 8947 - The chk_all.sd7 program was improved to take the new checks into account.
 8948 - The compiler (comp.sd7) was improved to work also with GMP's bigInteger's.
 8949 - The compiler was improved to support big_plus and big_gcd.
 8950 - The handling of +:=, -:=, *:=, <<:= and >>:= in the compiler was improved to
 8951   avoid memory leaks.
 8952 - The handling of the bigInteger 'mdiv' and * in the compiler was improved to do some
 8953   optimizations like using shift operations instead.
 8954 - Three example programs printpi1.sd7, printpi2.sd7 and printpi3.sd7 were added.
 8955 - The big_gmp.c interface library was added to allow bigInteger computations based
 8956   on the mpz_ functions of the GMP library.
 8957 - The file big_rtl.h was renamed to big_drv.h.
 8958 - The file biglib.c was change to allow working with big_rtl.c or big_gmp.c .
 8959 - The file big_rtl.c was improved to work with a BIGDIGIT_SIZE of 32.
 8960 - The functions bigHexCStri, uBigMultSub, uBigSqare, bigClit, bigCmpSignedDigit, bigDiv,
 8961   bigGcd, bigGrow, bigImport, bigLShift, bigLShiftAssign, bigMDiv, bigMod, bigOdd, bigRem,
 8962   bigRShift, bigShrink and bigToBStri of the file big_rtl.c were added or improved.
 8963 - An error message about "match value failed" was suppressed in dcllib.c .
 8964 - The int_mdiv action (defined in intlib.c) was improved for speed.
 8965 - The function prot_bigint (defined in traceutl.c) was changed to use bigHexCStri.
 8966 - The function printtype (defined in traceutl.c) was changed to avoid writing a pointer value.
 8967 - A bug in the function typHashCode (defined in typ_data.c) was fixed.
 8968 - The file read_me.txt was improved to contain a chapter about warnings and a chapter
 8969   which explains how use the GMP library.
 8970 
 8971 20080406:
 8972 - The interpreter and the compiler (comp.sd7) were improved to support the functions
 8973   bitLength, lowestSetBit, <<, <<:=, >> and >>:= for the types integer and bigInteger
 8974   (inspired by Mensanator for a program which explores the Collatz Conjecture).
 8975 - The priority of the << and >> operators was changed from 19 to 9 in the file syntax.s7i.
 8976 - Uses of the obsolete file output operator << where replaced with write statements in
 8977   bas7.sd7, comp.sd7, ms.sd7, pac.sd7, sl.sd7, snake.sd7, tarx.sd7, tetg.sd7 and tet.sd7.
 8978 - Descriptions about the new integer/bigInteger functions <<, <<:=, >>, >>:=, bitLength and
 8979   lowestSetBit were added to the manual.
 8980 - The chkint.sd7 program was improved with additional checks in chkint for 'div', 'rem',
 8981   'mdiv', 'mod', <<, <<:=, >> and >>:= .
 8982 - The chkbig.sd7 program was improved with additional checks for **, compare, lowestSetBit,
 8983   <<, <<:=, >> and >>:= .
 8984 - The compiler (comp.sd7) was improved to create optimized/improved versions for the bigInteger
 8985   functions odd, compare, <, <=, >, >=, ** and for the integer functions 'mdiv' and 'mod'.
 8986 - A description about the type bigRational was added to the manual.
 8987 - An explanation about type inference was added to the FAQ.
 8988 - A new constructor for complex numbers from a float was added to the complex.s7i library.
 8989 - A boss mode was added to the panic.sd7 and mahjong.sd7 example programs.
 8990 - The bas7.sd7 (basic interpreter) example program was improved.
 8991 - The makefiles were improved to set the RSHIFT_DOES_SIGN_EXTEND macro in the version.h file.
 8992 - A bug in the primitive action flt_mcpy was fixed.
 8993 - The primitive action flt_str was improved to support denormal float numbers better.
 8994 
 8995 20080319:
 8996 - The functions getEscapeSequence, getCharLiteral, getStringLiteral, getSymbolOrComment and
 8997   getSymbol were added to the scanstri.s7i library.
 8998 - The file read_me.txt, which explains the compilation of the interpreter, was added to
 8999   the src directory.
 9000 - The actions act_value, big_value, chr_value, fil_value, flt_value, int_value, prg_value,
 9001   rfl_value, set_value, str_value and typ_value were improved to raise an exception for
 9002   references which are NIL or refer to an object with the wrong category.
 9003 - The support for the primitive actions itf_eq and itf_ne in the compiler (comp.sd7) was
 9004   improved.
 9005 - The handling of bitsets with negative elements in the compiler (comp.sd7) was improved.
 9006 - The bas7.sd7 (basic interpreter) example program was improved to support the -p
 9007   option which asks for a prompt at the end of the program.
 9008 - Support for the actions bst_append and bst_cat was added to the interpreter.
 9009 
 9010 20080302:
 9011 - A new chapter about compile errors was added to faq and to the read_me.
 9012 - The functions skipComment, getComment, skipLineComment, getLineComment and getNumber were
 9013   added to the scanstri.s7i library.
 9014 - A new example program (chk_all.sd7), which runs interpreted and compiled checks, was added.
 9015 - Support for the primitive action CMD_CHDIR was added to the compiler (comp.sd7).
 9016 - Several memory leaks, which happen in the handling of MEMORY_ERROR exceptions, were removed.
 9017 - All primitive actions which start with CLS_ were renamed such that the name starts with ITF_ .
 9018 - The files clslib.c and clslib.h were replaced by itflib.c and itflib.h .
 9019 - The objectcategory CLASSOBJECT was replaced with the objectcategory INTERFACEOBJECT.
 9020 - The functions popen and cmd_sh were improved to be consistent on all platforms. Now they
 9021   use always '/' as path delimiter and '\\ ' to describe spaces in the command path.
 9022 - The gets function for external_files was improved to work correctly when pipe files are
 9023   read as a whole.
 9024 - A workaround was added for a wrong behaviour of the ftell() function under MinGW for pipes.
 9025 - The -q option of the 'hi' interpreter was improved to suppress all interpreter messages.
 9026 - Several changes to remove C compiler warnings were done.
 9027 
 9028 20080217:
 9029 - A new chapter about object orientation was added to the manual
 9030   (Many thanks for the feedback to Leonardo Cecchi, Malcolm McLean and Reinder Verlinde).
 9031 - The manual was changed to mention that the 'in' parameter of arrays and structs
 9032   is a reference ('ref') parameter.
 9033 - The faq was improved to contain a paragraph about static type checking.
 9034 - The implementation type NULL_FILE was renamed to null_file.
 9035 - The struct copy of the compiler (comp.sd7) was changed to leave the dynamic type unchanged.
 9036 - The following primitive actions were added or improved in the compiler (comp.sd7):
 9037   FIL_ERR, FIL_IN, FIL_OUT, FLT_GROW, FLT_MCPY, HSH_INCL, HSH_LNG, INT_PLUS, PRG_EXEC,
 9038   PRG_STR_ANALYZE, SCR_CURSOR and STR_GETENV.
 9039 - The primitive action CLS_CREATE2 was changed to call the CLEAR_TEMP_FLAG macro
 9040   (This is a fix for a bug found by Leonardo Cecchi).
 9041 - The function match_subexpr_type was changed to allow normal (not DYNAMIC) interface
 9042   functions to be used for implementation values.
 9043 - The primitive action PRC_GETENV was renamed to STR_GETENV.
 9044 - The bas7.sd7 (basic interpreter) example program was improved.
 9045 - A bug in the primitive action RFL_NOT_ELEM was fixed.
 9046 - The functions copy_list, array_to_list and struct_to_list were change to return the
 9047   created list.
 9048 
 9049 20080203:
 9050 - The compiler (comp.sd7) was improved to allow the compilation of itself.
 9051 - The compiler now compiles the programs rever.sd7 and sl.sd7.
 9052 - The scanner.s7i library was renamed to scanfile.s7i and the getName function was
 9053   added to it.
 9054 - Three libraries dialog.s7i, scanstri.s7i and charsets.s7i were added.
 9055 - The functions str, digits and parse of complex.s7i were changed to use the
 9056   -0.5000+0.8660i format.
 9057 - The hasNext function, which allows an iterator like handling of files, was added to
 9058   the file interface.
 9059 - Two new object libraries s7_comp and s7_data were added to support the compiler.
 9060 - The following files were added: act_comp.c, act_comp.h prg_comp.c, prg_comp.h,
 9061   ref_data.c, ref_data.h, rfl_data.c, rfl_data.h typ_data.c, typ_data.h, datautl.c and
 9062   datautl.h .
 9063 - The following primitive actions were added or improved: CMD_FILETYPE, FIL_HAS_NEXT,
 9064   FIL_PRINT, FIL_VALUE, REF_ARRMAXPOS, REF_CAT_PARSE, REF_CAT_STR, RFL_NOT_ELEM
 9065 - The prototypes of several *.h files were improved to contain parameter names.
 9066 - The category of an object returned by refCategory is now an integer/enumeration like
 9067   type instead of a string.
 9068 - The bigAddTemp and bigSbtrTemp functions were added to allow optimized bigInteger
 9069   operations in the compiler.
 9070 - The bas7.sd7 (basic interpreter) example program was improved.
 9071 - The Exit function of the castle.sd7 example program was improved.
 9072 
 9073 20080120:
 9074 - Optimizations for the string functions =, <>, stri[num], &, upper, lower, pos, rpos, split
 9075   and for the array indexing were added to the compiler (comp.sd7).
 9076 - Documentation comments were added to bigint.s7i, draw.s7i, bas7.sd7 and mahjong.sd7.
 9077 - The bas.sd7 (basic interpreter) example program was improved and renamed to bas7.sd7.
 9078 - The functions polar, parse, str and digits were added or improved in complex.s7i.
 9079 - The read_dir, chdir, mkdir functions were improved to raise FILE_ERROR on failure.
 9080 - The functions open_dir and open_dir_path of the dir.s7i library were changed to return
 9081   STD_NULL when the directory does not exist.
 9082 - The functions getDigits, skipSpace, skipWhiteSpace were added to the scanner.s7i library.
 9083 - The digits function for the type float was improved to never return -0 .
 9084 - The new lpad0 operator was added to convert integers to strings with leading zeros.
 9085 - The time conversion functions str_yyyy_mm_dd, str_mm_dd_yy, str_mm_dd_yyyy, str_d_m_yy and
 9086   str_d_m_yyyy were added to the time.s7i library.
 9087 - Checks were added to the chkint.sd7 and chkstr.sd7 example programs.
 9088 - The code to handle a failing realloc for arrays was improved.
 9089 - Bugs in the compiler, with str_append and with val or ref parameters as result in the
 9090   return statement, were fixed.
 9091 
 9092 20080106:
 9093 - Documentation comments were added to the functions of the libraries bigint.s7i,
 9094   bigrat.s7i, complex.s7i, float.s7i, getf.s7i, keybd.s7i, rational.s7i, scanner.s7i,
 9095   socket.s7i, stritext.s7i, time.s7i and dna_base.s7i.
 9096 - The bas.sd7 (basic interpreter) example program was improved.
 9097 - The include mechanism was improved to avoid multiple includes.
 9098 - Part of the float.s7i library was moved to the new math.s7i library.
 9099 - The library html_ent.s7i, which contains functions to replace HTML entities by
 9100   characters and vice versa, was added.
 9101 - A new example program (chkhent.sd7) to check the new HTML functions was added.
 9102 - The compiler (comp.sd7) was improved to support the new 'rpos' function.
 9103 - The getHtmlTagOrContent function was added to the scanner.s7i library.
 9104 
 9105 20071227:
 9106 - The library cards.s7i which contains the card pictures of a french deck was added.
 9107 - The documentation of the draw.s7i library was improved.
 9108 - Some pictures were moved from castle.sd7 to pic16.s7i and pic32.s7i.
 9109 - The function rpos (reverse search for a character in a string) was added to the
 9110   seed7_05.s7i library.
 9111 - The bas.sd7 (basic interpreter) example program was improved.
 9112 - A new example program (carddemo.sd7), which demonstrates the playing cards of the
 9113   french deck, was added.
 9114 - Test cases for the rpos function were added to the chkstr.sd7 program.
 9115 
 9116 20071210:
 9117 - The interpreter was improved to flag match errors only once instead of multiple times.
 9118 - The graph.s7i library was improved to define the type pointList and the function
 9119   genPointList (to create a pointList from an integer array of x and y coordinates).
 9120 - The functions polyLine and fpolyLine (to draw polygons and filled polygons) were
 9121   added to the draw.s7i library .
 9122 - The functions pos (search for a character in a string) and isDigitString were added
 9123   to the seed7_05.s7i library.
 9124 - Several test cases were added to the chkint.sd7 and chkstr.sd7 programs.
 9125 - The drwSetTransparentColor function was added to the drw_x11.c driver.
 9126 - An analog clock program (clock3.sd7) provided by Volker Schuller was added.
 9127 - The compiler was improved to support the new graphic and string functions.
 9128 
 9129 20071125:
 9130 - The interpreter was improved to store the filename and the line of the definition of
 9131   an object.
 9132 - The line stored for an expression was improved to be identical with the line of the
 9133   operator symbol or function name.
 9134 - The stritext.s7i include file, which supports string array based text files, was added.
 9135 - The mahjong.sd7 example program was improved to draw darker vertical surfaces.
 9136 - The mahjong tiles of the mahjng32.s7i include file were improved to contain bigger digits.
 9137 - Several new functions like getHtmlSymbolOrComment, gray, file and line were added.
 9138 - The compiler was improved to support functions with 'in var' parameter called by DYNAMIC
 9139   dispatch functions with a corresponding 'val' parameter.
 9140 - The compiler was improved to support the ref_line and ref_file actions.
 9141 - An error was fixed in the strIpos function and test cases were added to the chkstr.sd7
 9142   program.
 9143 
 9144 20071110:
 9145 - The functions getSymbol, getWhiteSpace, getSymbolOrComment and getSimpleSymbol
 9146   of the scanner.s7i library were created or improved.
 9147 - A new example program (chkscan.sd7) to check the new scanner functions was added.
 9148 - A bug in the planets.sd7 example program was fixed.
 9149 - The manual was corrected to explain that the types 'char' and 'string' support Unicode.
 9150 - The actions cmd_ls and scr_write were improved to use utf-8 characters when available.
 9151 - The filOpen function was improved to use _wfopen under Windows.
 9152 - The timezone handling to get the Greenwich Mean Time was improved.
 9153 - A string in shisen.sd7 was enlarged to avoid a RANGE_ERROR exception
 9154   when accessing it.
 9155 
 9156 20071025:
 9157 - A new example program (mahjong.sd7) was added.
 9158 - An include file (mahjng32.s7i) which contains mahjong tiles was added.
 9159 - The interpreter and the compiler were improved to support the gkb_window action.
 9160 - The close interface function was changed to work for the type graphFile.
 9161 
 9162 20071010:
 9163 - The compiler (comp.sd7) was improved to support the 'remove(array, index)' function.
 9164 - The functions isLeapYear, daysInMonth, weekOfYear, weekDateYear and weekDateWeek
 9165   were added to the time.s7i library
 9166 - The exception checking program chkexc.sd7 was improved to check for exceptions
 9167   raised with arrays.
 9168 - Documentation for the bigInteger type was added to the manual.
 9169 - Some strings in pic32.s7i and pairs.sd7 were enlarged to avoid a RANGE_ERROR exception
 9170   when accessing them.
 9171 
 9172 20070925:
 9173 - The compiler support for fil_tell, hsh_contains, hsh_excl and str_idx was improved.
 9174 - The string indexing (str_idx) was changed to raise RANGE_ERROR for indices outside of
 9175   the string.
 9176 - Various spelling errors in faq.htm, faq.txt, manual.htm and manual.txt where fixed.
 9177 - The functions filBigLng, filBigSeek, filBigTell and filLng were improved to use _fseeki64
 9178   when available.
 9179 - The mandelbr.sd7, chkstr.sd7, chkexc.sd7 and wiz.sd7 example programs were improved.
 9180 - A protection against a buffer overflow in scrWrite was added.
 9181 - Several function prototypes were changed to use 'const' types.
 9182 
 9183 20070909:
 9184 - A gtk-server connection library (gtkserver.s7i), a test program (gtksvtst.sd7) and
 9185   documentation (see doc/gtksvdoc.txt) were added (Patch from Leonardo Cecchi).
 9186 - Some spelling corrections for read_me and a draft for a Cygwin makefile (mk_cygw.mak)
 9187   were added (Patches from Terrence Brannon).
 9188 - A Seed7 mailing list has been created under seed7-NOSPAMusers@lists.sourceforge.net
 9189   (Remove NOSPAM to get the email address).
 9190 - The planets.sd7 program was improved to show the name of a star when clicking on it.
 9191 - The stack trace of the hi interpreter for uncaught exceptions was improved.
 9192 
 9193 20070823:
 9194 - The compiler was improved to support nested exceptions.
 9195 - The planets.sd7 example program was improved to contain a panorama with stars and planets.
 9196 - An include file (stars.s7i) which contains the names and coordinates of stars was added.
 9197 - The intParse function was improved to accepts a plus (+) sign.
 9198 - The memory management of the socRecv function was improved.
 9199 - Some exception tests were added to chkexc.sd7
 9200 - A test for check_atan2 was added to the chkflt.sd7 program.
 9201 
 9202 20070807:
 9203 - The handling of local functions in the compiler (comp.sd7) was improved.
 9204 - The function 'option' (to get compile time defines) was renamed to 'configValue'.
 9205 - The compiler was improved to support the 'configValue' function.
 9206 - The 'ord' function for enumerations was changed to work without DYNAMIC.
 9207 - The changelog was reversed (sorted now from newest to oldest), and old entries were added.
 9208 - The address of the FSF was changed in various files.
 9209 
 9210 20070723:
 9211 - The compiler (comp.sd7) was improved to allow local functions.
 9212 - The compiler now supports arrays with indices of any type (not just integer indices).
 9213 - A new example program (mandelbr.sd7), to display fractals, was added.
 9214 - The -O2 option was added to the compiler (advantageous when compiling mandelbr.sd7).
 9215 - The compiler now generates static functions to allow more optimizations.
 9216 - A *:= operator and the sqrAbs function were added for the type 'complex'.
 9217 - The reflection was changed to use the 'getValue' function instead of the 'value' operator.
 9218 - The compiler was improved to support the conversion of integers to an enumeration type.
 9219 - The compiler now compiles the programs panic.sd7 and castle.sd7.
 9220 
 9221 20070710:
 9222 - The compiler (comp.sd7) support for different C compilers was improved.
 9223 - A support for socket send and recv was added to the compiler.
 9224 - A description of openInetSocket was added to the documentation.
 9225 - A pos function and the 'not in' operator was added for the type ref_list.
 9226 - The var_conv operator was renamed to varConv.
 9227 - Some setters (setCategory, setValue, setParams) were added to the reflection.
 9228 - The classtype of the interpreter was renamed to categorytype since it has
 9229   nothing to do with classes.
 9230 
 9231 20070624:
 9232 - As suggested by several users a socket library (socket.s7i) was added.
 9233 - Two example programs tst_srv.sd7 and tst_cli.sd7 to test socket functionality were added.
 9234 - The popen function was added (suggested by Leonardo Cecchi).
 9235 - The compiler was improved to support hash tables with floats, various for loops over
 9236   hash tables and the new socket library.
 9237 - The compiler now compiles the programs bas.sd7 and wordcnt.sd7.
 9238 - The wator.sd7 example program was improved.
 9239 - The heap management and the heap statistic was improved.
 9240 - Several function prototypes were changed to use 'const' types.
 9241 
 9242 20070607:
 9243 - An explanation of multiple dispatch was added to the FAQ.
 9244 - A bug in the 'str' function for 'complex' was fixed (found by Leejun).
 9245 - The interpreter was improved to support startsWith, endsWith, array_min_position, heapstat
 9246   and @:= (for ref_lists).
 9247 - The compiler support for drw_cpy, ref_trace, arr_head, arr_tail, arr_idx, varfunc, wintype,
 9248   array literals and dynamic functions (for enumerations) was improved.
 9249 - The compiler now writes a message when an uncaught exception was raised.
 9250 - The compiler was changed such that destr functions accept also NULL.
 9251 - The compiler now compiles the programs snake.sd7 and toutf8.sd7.
 9252 - The concentration game was renamed to pairs.sd7
 9253 - The functions drwCpy, drwCreate and drwDestr where moved to drw_rtl.c.
 9254 - The heap management and the heap statistic was improved.
 9255 
 9256 20070524:
 9257 - The file version.h was removed to force the creation of it with the "make depend" command.
 9258 - The read_me was changed such that a "rm version.h" is not necessary to compile.
 9259 - Several constant types were defined in data_rtl.h.
 9260 - The files str_rtl.c, str_rtl.h, set_rtl.c and set_rtl.h were changed to use constant types.
 9261 - A bug with compare functions for array sorts and hash tables was fixed.
 9262 - The makefile mk_linux.mak was added as copy of 'makefile'.
 9263 - The makefile mk_msvc.mak was added to allow experimental compilation with nmake and cl.
 9264 
 9265 20070507:
 9266 - As suggested by several users the include files were moved to the 'lib' directory.
 9267 - The search for include files was improved to work with an internal search path array.
 9268 - The 'hi' interpreter now contains a hardcoded include directory path defined in version.h.
 9269 - The makefiles mk_mingw.mak, mk_msys.mak and mk_nmake.mak were added for compilation under MinGW.
 9270 - The bigInteger multiplication was changed to use Karatsuba multiplication for bigger integers.
 9271 - Several constant types were defined in common.h.
 9272 
 9273 20070419:
 9274 - The compiler support for result variables, which are initialized with expressions, was improved.
 9275 - The bas (basic interpreter) example program was improved.
 9276 - The bigrat.s7i, rational.s7i libraries were improved.
 9277 - Some multiplication test cases were added to the chkbig.sd7 example program.
 9278 - The compiler was changed to mark its temporary *.c files with a temp_marker.
 9279 - Several performance improvements for uBigMultSub, uBigAddTo, uBigDiv, uBigMult,
 9280   uBigMultIntoHelp, bigGrow, bigMult and bigShrink were done.
 9281 
 9282 20070404:
 9283 - The support and documentation for the functions split, join, log2, bitLength and
 9284   the operator *:= were improved.
 9285 - The compiler support for the functions raise, log2 and split was improved.
 9286 - The bas (basic interpreter) example program was improved to support print using statements.
 9287 - The support of the for-step loop in the seed7_05.s7i include file was improved.
 9288 - Some improvements for the bigRational and bigInteger library were done.
 9289 - A bug in uBigAddTo which could cause an error in bigDiv, bigRem, bigMDiv, bigMod was fixed.
 9290 - The chkbig.sd7 program was improved to check the log2 function for bigInteger.
 9291 - The chkstr.sd7 program was improved to have more checks for the split function.
 9292 
 9293 20070319:
 9294 - The interpreter was changed to execute programs only when they have no errors.
 9295 - The option -x to execute programs, even when they have errors, was added to the interpreter.
 9296 - The *:= operator for the types integer, float, bigInteger and bigRational was added.
 9297 - The chkbig.sd7 program was improved to check the *:= operator for big integers.
 9298 - The compiler was improved to support the *:= operator and the arr_cat action.
 9299 - Several improvements for compile time error messages were done.
 9300 - The err.sd7 example program, which checks compile time error messages, was improved.
 9301 
 9302 20070305:
 9303 - The support for float was changed to use IEEE 754 NaN and Infinity instead of exceptions.
 9304 - The exception checking program chkexc.sd7 was improved and the chkflt.sd7 program was added.
 9305 - All exponentiation operators were improved to evaluate 0 ** 0 to 1.
 9306 - The associativity of the ** operator was changed to work right to left.
 9307 - A declaration for an = and <> operator was added for interface types.
 9308 - Basic support for exceptions in compiled programs was added.
 9309 - Parts of the manual describing float operations and exponentiation were improved.
 9310 - The performance of the flt_ipow action was improved.
 9311 - The compiler was improved to produce better code for the primitive actions
 9312   arr_sort, arr_times, cls_eq, cls_ne, flt_isnan, flt_log10, int_fact,
 9313   rfl_append, rfl_cpy, rfl_for, rfl_mklist, rfl_ne, rfl_tail and str_str.
 9314 
 9315 20070219:
 9316 - The support for hash tables, sets and console output in compiled programs was improved.
 9317 - Support for multiple dispatch of interface (DYNAMIC) functions was added to the compiler.
 9318 - The handling of parameters in the dispatch functions generated by the compiler was improved.
 9319 - Variable global arrays and structs in compiled programs are now initialized
 9320   with a copy of the initialization value.
 9321 - The compiler was improved to produce better code for the primitive actions
 9322   arr_idx, chr_ge, chr_gt, chr_le, chr_lt, fil_seek, set_cpy, str_cpy,
 9323   prc_option, prg_match, ref_itftosct, typ_isderived and typ_meta.
 9324 - A compare and a hashCode function was added for the type 'color'.
 9325 - A check for curr_hash != NULL was removed at various places since isit_hash takes care of it.
 9326 
 9327 20070204:
 9328 - An abstract data type to create interface types was added.
 9329 - The matching of functions was changed such that interface functions are
 9330   preferred over non interface functions.
 9331 - The error message which flags wrong access rights of actual parameters was improved.
 9332 - The sorting of directory entries for cmd_ls was improved.
 9333 - The Unicode support for prc_getenv and prc_option was improved.
 9334 - The -v (verbose) option was added to the interpreter.
 9335 - A small bug in the startrek.sd7 example program was fixed.
 9336 - The handling of interface (DYNAMIC) functions in the compiler was improved.
 9337 - The compiler was improved to support the actions arr_cpy, drw_create, drw_destr,
 9338   drw_pfarcchord and drw_pfarcpieslice.
 9339 - The handling of enumeration types in the compiler was improved.
 9340 - Several accessright changes for file functions in seed7_05.s7i and other libraries
 9341   allow the compiler to produce working code for more file functions.
 9342 
 9343 20070118:
 9344 - The compiler was improved to support interfaces (DYNAMIC functions).
 9345   With this improvement several example programs can be compiled now.
 9346 - The support for the actions gkb_busy_getc, gkb_xpos, gkb_ypos, kbd_busy_getc,
 9347   drw_pfellipse and arr_arrlit2 was added to the compiler.
 9348 - The X11 keyboard driver was improved.
 9349 
 9350 20070104:
 9351 - The hashtype was changed to maintain the size of the hash instead of computing it.
 9352 - The &:= statement for the type ref_list was added.
 9353 - The compiler was improved to support 'in var' parameters.
 9354 - A new include file (complex.s7i) to support complex numbers was added.
 9355 - The support for the bigIConv, bigOrd, cmdMkdir, drwPArc, drwPCircle, drwPFEllipse,
 9356   filBigLng, filBigSeek and filBigTell functions was added to the compiler.
 9357 
 9358 20061219:
 9359 - Support for local constant declarations was added to the compiler.
 9360 - The compiler was improved to support the actions big_abs, big_clit, big_hashcode,
 9361   big_value, cmd_ls, flt_grow, flt_shrink, gkb_gets, kbd_gets, set_arrlit and str_chsplit.
 9362 - The heap statistic was improved to work for bigInteger objects.
 9363 - The array compare functions = and <> have been improved.
 9364 - The support for arrays in the compiler was improved.
 9365 - The trace level 'h' was added to trace the heapsize.
 9366 - The exception handling was corrected to work with hash objects.
 9367 - A bug in the in_file handling of the analyzer was fixed.
 9368 - The 'hi' interpreter was improved to support the actions rfl_trace and str_split.
 9369 
 9370 20061204:
 9371 - The functions bigLength, seek, bigTell were added to support files with 64 bit offsets.
 9372 - The file functions getwd, getln, read and readln were changed to remove '\r' before '\n'.
 9373 - Parameters of type bigInteger were changed to use call by reference.
 9374 - The functions ord and conv for the bigInteger type were added.
 9375 - The putf function (to copy a string to a file) was changed and a writef function was added.
 9376 - Functions to split and join strings and a check for that functions were added.
 9377 - Comparisons = and <> for arrays were added.
 9378 - An implementation for 'set of string' based on the 'hash' type was added.
 9379 - Keyboard functionality was moved into the new file kbd_rtl.c.
 9380 - A new makefile makefile.msy for MinGW MSYS compilation was added.
 9381 
 9382 20061120:
 9383 - The rand function and the +:= and -:= operators were added to
 9384   the bigInteger library.
 9385 - The checks for bigInteger addition and subtraction in chkbig.sd7
 9386   were improved and checks for the +:= and -:= operators
 9387   were added.
 9388 - The compiler support for bigInteger was improved.
 9389 - The documentation (manual and faq) was improved.
 9390 
 9391 20061106:
 9392 - The hi interpreter was improved to support bigInteger literals.
 9393 - Changes have been done to allow a configurable bigdigit size
 9394   (Bigdigits are the building elements of a bigInteger).
 9395 - The mdiv function was added to the bigInteger library and the
 9396   chkbig.sd7 program.
 9397 - The chkbig.sd7 program was changed to use bigInteger literals.
 9398 - Several bigInteger functions have been improved.
 9399 - A bigrat.s7i include file to support bigRational numbers has been added.
 9400 - The compiler support for bigInteger, setBaselit and strTrim has
 9401   been improved.
 9402 
 9403 20061023:
 9404 - The bigInteger library was improved to support modulo, power and
 9405   several comparisons (<, >, <=, >=).
 9406 - Test cases for incr, decr, modulo, power and compare were added to
 9407   the chkbig.sd7 program.
 9408 - The compiler was improved to support the new bigInteger functionality.
 9409 
 9410 20061008:
 9411 - The bigInteger library was improved to support division and remainder.
 9412 - Test cases for division and remainder were added to the chkbig.sd7 program.
 9413 - The compiler was improved to support bigInteger division and remainder.
 9414 
 9415 20060926:
 9416 - The bigInteger library was improved to support addition, subtraction,
 9417   multiplication, negation, absolute value, string conversions and more.
 9418 - A lot of test cases have been added to the chkbig.sd7 program.
 9419 - The compiler was improved to support more bigInteger functionality.
 9420 - The makefile was changed to work on BSD (suggested by Dave Bodenstab).
 9421 
 9422 20060910:
 9423 - A new include file (bigint.s7i) and a new example program (chkbig.sd7) were added.
 9424 - Changes in the compiler to support some bigInteger functionality were done.
 9425 - Support for the str_elemcpy action was added to the compiler.
 9426 
 9427 20060826:
 9428 - A description of the 'attr' parameter was added to the manual.
 9429 - The first steps towards bigInteger support were done.
 9430 - The graphic and keyboard drivers for Windows have been improved.
 9431 - A check for the maximum of fish and sharks was added to the wator example program.
 9432 
 9433 20060808:
 9434 - A description of the 'func', 'varfunc' and 'proc' types was added to the manual.
 9435 - The 'parse' operator for the type 'time' was improved.
 9436 - The operators '<=', '>' and '<' were added for the type 'duration'.
 9437 - The Windows graphic driver was improved to use the SetPixel function.
 9438 - The filOpen function was changed to open files in binary mode.
 9439 
 9440 20060724:
 9441 - A new example program (bifurcation) was added.
 9442 - A trim function to remove leading and trailing spaces from strings was added.
 9443 - The Windows graphic driver was improved to support Windows 98.
 9444 - A changelog (chlog) was added.
 9445 
 9446 20060707:
 9447 - A little improvement of the castle example program was done.
 9448 - The drwText function of the Windows graphic driver
 9449   was changed to support Unicode characters.
 9450 - A new example program (planets) was added.
 9451 
 9452 20060622:
 9453 - A new example program (castle) was added.
 9454   Castle was inspired by the castle adventure from 1984.
 9455 - The graphic driver for Windows has been improved for
 9456   circle, arc, chord, pieslice, fellipse.
 9457 
 9458 20060606:
 9459 - The bas (basic interpreter) example program was improved to
 9460   support exit statements.
 9461 - A tiny bug in the panic example program was fixed.
 9462 - The hi interpreter was improved to write a stack trace when
 9463   an exception is not caught.
 9464 
 9465 20060520:
 9466 - The performance of the interpreter was raised by circa 8% with
 9467   an improved free list management.
 9468 - The graphic and keyboard drivers for Windows have been improved.
 9469 - A new primitive action (set_arrlit) was defined to create sets from
 9470   integer arrays.
 9471 - The bas (basic interpreter) example program was improved to support do loops.
 9472 - A sudoku example program (sudoku7) was added.
 9473 
 9474 20060506:
 9475 - The reporting of semantic errors was improved (now the
 9476   line number and the line itself is shown).
 9477 - A checkmark picture was added to pic16.s7i and pic32.s7i .
 9478 - A tiny inaccuracy in the heap statistic was fixed.
 9479 - The source and include file management of the interpreter
 9480   was simplified.
 9481 
 9482 20060420:
 9483 - The driver function tim_await (using seconds since 1970)
 9484   was replaced by timAwait (using the Gregorian calendar).
 9485 - The driver function timNow was changed to deliver a
 9486   timezone which includes the daylight saving time.
 9487 - Various pictures where added in pic16.s7i and pic32.s7i .
 9488 - The parse function for bitsets was fixed to work for
 9489   empty sets.
 9490 - A new example program toutf8 to convert files to utf-8
 9491   was added.
 9492 - The Windows driver function drwPRect was fixed.
 9493 
 9494 20060404:
 9495 - Function to close a graph_file
 9496 - Write graphic text under Windows
 9497 - Parse operator and reading for bitsets
 9498 - Allow hashtables for sets
 9499 - Date format according to ISO 8601
 9500 - New time functions dayOfWeek, julianDayNumber and
 9501   julianDayNumToTime
 9502 
 9503 20060314:
 9504 - Improvements for arrays and structs in the compiler
 9505 - Function strLit to support the compiler
 9506 - Improvements in bas example program.
 9507 - Subrange and for-loop for bitset
 9508 - Allow line comments in string literals
 9509 - Empty line count removed
 9510 
 9511 20060223:
 9512 - Some compiler improvements for sets and structs.
 9513 - New graphic function: copyArea
 9514 - Hashes for sets and types
 9515 - New time functions: dayOfYear, toGMT, -:=
 9516 - Utf-8 characters in string and char literals
 9517 - New standard files: STD_UTF8_IN, STD_UTF8_OUT, STD_UTF8_ERR
 9518 - Function file_type to get the type of a file
 9519 
 9520 20060205:
 9521 - The compiler (comp.sd7) can handle strings now.
 9522 - New example program wator.sd7 (Simulation with fish and sharks).
 9523 - Improved example program dnafight.sd7 .
 9524 - New rand function to select a random element from a set.
 9525 
 9526 20060126:
 9527 - Improvements in the compiler (comp.sd7)
 9528 - Changed wrinum.s7i to write roman, english and german numbers.
 9529 - Moved some pictures to pic16.s7i and pic32.s7i.
 9530 - Renamed NO_ERROR to OKAY_NO_ERROR (NO_ERROR is used in Windows).
 9531 - Defined compare and hashCode for the type 'reference'.
 9532 - In drw_win.c: Map characters 128 to 159 to Unicode chars.
 9533 - In scr_win.c: Map console characters to Unicode chars.
 9534 - Add #include "string.h" in files that use memcmp.
 9535 - Add functions to support compilation:
 9536   filLit, drwCpy, strHead, strRange, strTail and others.
 9537 - In kbd_inf.c: Add support for UTF-8 keys for KEYBOARD.
 9538 
 9539 20060118:
 9540 - Some improvements of the Windows support
 9541 - Console mode programs work
 9542 - Windows time driver works
 9543 - GDI Keyboard driver works
 9544 - Graphic programs work to some degree
 9545   The Windows port uses MinGW and the makefile "makefile.win".
 9546 - Changes in the time driver interface tim_drv.h to support compilation.
 9547 - Test program gkbd.sd7 for tests of the keyboard with x11/gdi - Windows.
 9548 
 9549 20060111:
 9550 - The beginning of Windows support
 9551   (Textmode programs work, Graphic programs work to some degree)
 9552   The Windows port uses MinGW and the makefile "makefile.win".
 9553 - The definition of
 9554   $ system "main" main;
 9555   has been moved to the seed7_05.s7i library.
 9556   Therefore it is not necessary to specify 'system "main"' in every program.
 9557 
 9558 20051203:
 9559 - Function to get the unsorted keys of a hash
 9560   (for sorted keys use the sort array function: sort(keys(aHash)) )
 9561 - Function to get the unsorted values of a hash
 9562   (for sorted values use the sort array function: sort(values(aHash)) )
 9563 - flip function for hashes to flip keys and values
 9564   (the result has the type: hash [baseType] array keyType )
 9565 - for loop to loop over the unsorted values of a hash
 9566 - for loop to loop over the unsorted keys of a hash
 9567 - for loop to loop over the unsorted values and keys of a hash
 9568 
 9569 20051124:
 9570 - Function to get the keys of a hash
 9571 - Sort function for arrays
 9572 
 9573 20051112:
 9574 - Now the Seed7 manual (in the package) uses color.
 9575 - Implement seek for UTF-8 files
 9576 - Fix and improve the gets function for UTF-8 files
 9577 - The Seed7 project page contains also screenshots, a manual
 9578   and an FAQ file. See http://sourceforge.net/projects/seed7
 9579 - Rename 'NL' system variable to 'writeln' and change the
 9580   corresponding logic
 9581 
 9582 20051104:
 9583 - Now Seed7 supports reading and writing UTF-8 files
 9584 - The Seed7 project page contains also screenshots, a manual
 9585   and an FAQ file. See http://sourceforge.net/projects/seed7
 9586 - A new pos function to search a string from a given position has
 9587   been added.
 9588 
 9589 20051025:
 9590 - Initial release.