not check the validity of assignment to an

%% There are claims that the Green Hills compiler can.

%% In C++ rhis was confirmed as undefined behaviour in

%% Some versiins of UBSAN caan check it with -fsanitize=enum

If there were a platform which used an underlying type of a

type is available either as a keyword (C23 and C++) or by

. They require a length-one input and throw an error if

attribute when used from C++ under all compilers.

called from Fortran and was wrongly declared:

which some package maintainers wish to avoid.

Note that the last three are keywords in C23 and C++11 so cannot be

avoided entirely.  However, with commonly-used compilers they can be

masked by a macro of the same name, often with a warning.

contains very experimental annotations for more clearly

identifying the API status of C entry points. These annotations

are used to produce indices for API, experimental API, and

embedded API entry points in the rendered versions.  This is very

preliminary and may be dropped if a better approach emerges.

Also for Fortran-callable entry points which are part of the API.

away from using non-API endpoints. This section will continue to

be updated as work on clarifying and tightening the C API

arguments are valid and should be used instead of

closure components.  The existing functions

Further non-API entry points have been added to those reported

in public header files will be removed in the near future, and

non-API entry points have been upgraded to

preparation for removing declarations and, where possible, hiding

Additional non-API entry points have been added to those

s, consistent with counting items in the

the current evaluation state and proceeding through the

of the requested entry from the call stack.

has been revised to describe the remapped

used from C code (but is recommended for new C code).

long-deprecated/obsolete Fortran features reported by

UTF-8 or Latin-1 strings in character data.  Set environment

with a true value for environment variable

check demo scripts analogously to tests.  This includes a check