Version 6.3

The following C++20 feature is now supported:

- Using enum

It also contains significant improvements in our support of concepts
and Microsoft modules (see below).

Our current C++20 implementation status (and links to the associated
standards committee papers) is available here:

    https://www.edg.com/cpp20_features.html

The following C++23 features are now supported:

- Make () more optional for lambdas
- if consteval
- Non-literal variables (and labels and gotos) in constexpr functions
- Deducing this

Our current C++23 implementation status (and links to the associated
standards committee papers) is available here:

    https://www.edg.com/cpp23_features.html

We are in the process of implementing modules.  Our initial support of
modules (completion date not yet known) will allow the consumption of
Microsoft IFC module files.  Although Microsoft module support is still
not complete, it is enabled in Microsoft mode when microsoft_version
is >= 1928.

Consuming Microsoft module files means importing IFC files produced by the
Microsoft compiler.  Currently, the compatibility of those files has a strong
dependence on the particular version of the Microsoft compiler used to produce
the files.  This version allows limited use of various IFC files shipped with
the Microsoft compiler, depending on what features the client code uses (i.e.,
some uses will be accepted while others will result in errors because of
features that are not yet supported).  The front end consumes files produced
by a pre-release version of the Microsoft compiler (19.30.30409.95, IFC version
0.33).  The front end issues an error and ignores the import if the IFC file
is not of the version supported.

The front end now addresses the Unicode source code vulnerabilities described
in paper www.trojansource.codes/trojan-source.pdf.  See the EDGcpfe/24810
Changes entry for more information.

Starting with version 6.0, the front end must be compiled as C++ code.
The minimum compiler requirements have not changed, so they continue to be:

     g++: 4.7.0 (it does not work with 4.6)
     clang: 3.2 (the oldest version we have tried)
     MSVC: VS 2015 (tested with build 19.00.24215.1)

The front end can be self-compiled with a C-generating back end version for
platforms that lack a native C++ compiler.   We do not use exception
handling or RTTI, so those can be disabled to produce more efficient code.

We do not use the standard library specified in the C++ standard, so if your
code uses the standard library you don't have to worry about our possible use
of an incompatible version of the library.

Our builtin function support is current with GCC 11.1.0 and Clang 13.0.0.

As usual, we have fixed bugs, added many minor features, and continued to
improve our various compatibility modes.  See the Changes_6.3 file for
full details (about 5,200 lines).

