improved expandimportc tool

This commit is contained in:
rumpf_a@web.de
2009-12-20 23:54:19 +01:00
parent f56816def0
commit 9dda24e475
6 changed files with 83 additions and 33 deletions

View File

@@ -6,17 +6,55 @@ News
2009-XX-XX Version 0.8.6 released
=================================
Version 0.8.6 has been released! Get it `here <download.html>`_. The version
jump from 0.8.2 to 0.8.6 acknowledges the fact that all development of the
compiler is now done in Nimrod.
Bugfixes
--------
- The pragmas ``hint[X]:off`` and ``warning[X]:off`` now work.
- Method call syntax for iterators works again (``for x in lines.split()``).
- Many bugfixes concerning macro evaluation.
- Many bugfixes concerning compile-time evaluation.
- Fixed a typo in ``removeDir`` for POSIX that lead to an infinite recursion.
- The compiler now checks that module filenames are valid identifiers.
- Empty patterns for the ``dynlib`` pragma are now possible.
- ``os.parseCmdLine`` returned wrong results for trailing whitespace.
- Inconsequent tuple usage (using the same tuple with and without named fields)
does not crash the code generator anymore.
- A better error message is provided when the loading of a proc within a
dynamic lib fails.
Additions
---------
- Added ``system.contains`` for open arrays.
- The PEG module now supports the *search loop operator* ``@``.
- Grammar/parser: ``SAD|IND`` is allowed before any kind of closing bracket.
This allows for more flexible source code formating.
- The compiler now uses a *bind* table for symbol lookup within a ``bind``
context. (See `<manual/#templates>`_ for details.)
- ``discard """my long comment"""`` is now optimized away.
- New ``--floatChecks: on|off`` switches and pragmas for better debugging
of floating point operations. (See
`<manual/#pre-defined-floating-point-types>`_ for details.)
Changes affecting backwards compatibility
-----------------------------------------
- The compiler does not skip the linking step anymore even if no file
has changed.
- ``os.splitFile(".xyz")`` now returns ``("", ".xyz", "")`` instead of
``("", "", ".xyz")``. Filenames starting with a dot are handled
differently.
- ``strutils.split(s: string, seps: set[char])`` never yields the empty string
anymore. This behaviour is probably more appropriate for whitespace splitting.
- The compiler now stops after the ``--version`` command line switch.
- Removed support for enum inheritance in the parser; enum inheritance has
never been documented anyway.
- The ``msg`` field of ``system.E_base`` has now the type ``string``, instead
of ``cstring``. This improves memory safety.
2009-10-21 Version 0.8.2 released
@@ -144,7 +182,7 @@ Documentation
2009-06-08 Version 0.7.10 released
==================================
Nimrod version 0.7.10 has been released! Get it `here <./download.html>`_.
Nimrod version 0.7.10 has been released!
Bugfixes
--------