In particular, rename "ada_main" to "gpr_main" and allow it to contain
both Ada and C mains. Also remove the now useless "with_c" argument, and
the unused "mains" one as well.
The actual feature behind this flag has been removed for a long time
(the generic introspection API, always generated, depends on the public
Ada API), so remove the last bits.
This allows GCC, when used to build C mains, to access the C header
through command line arguments instead of through the `C_INCLUDE_PATH`
environment variable, which lets GCC emit warnings for issues found in C
headers. This will be useful to detect issues in generated code.
In order to remove the language-specific introspection API, upcoming
changes will introduce uses of the generic API in LAL's implementation.
The generic API implementation depends on the public Ada API, so we need
to always generate the latter.
The impact on the testsuite execution time is acceptable: it goes from
1m26 before this patch to 1:37 on a beefy machine.
TN: W106-006
Use the same default values as in CompileCtx's constructor: None. This
should get rid of these strange version numbers in the testsuite, which
may annoy Maven for the upcoming Java bindings.
TN: W125-027
In order to avoid GPR warnings ("no C sources for this project") for all
projects that contain only Ada sources, make the C language optional in
generated project files.
TN: VA14-036
Printing the int value for the exception IDs makes test outputs
unstable, as IDs can change when new exceptions are added. Add an
exception name getter to restore stable output.
TN: VA14-036
So far, properties were allowed to raise Property_Error exceptions only:
other exceptions were considered as a low-level bug (i.e. assumed not
possible), which could corrupt the process state.
This commits allows language specs to allow additional kinds of
exceptions to be raised in property errors.
For #632
When running all tests, restrict each test to a single core, otherwise
we end up running spamming the host with N*N subprocesses despite
--jobs=N passed to the testsuite. However, keep inner parallelism to N
when running few tests, for dev convenience.
The previous commit for this ticket added a Valgrind suppression file
assuming that the testsuite would automatically pick it up. It is not
the case, so explicitly use gnat.supp in tests when running Ada
programs.
TN: V221-024
We happen to use short name only in its lower case form. Switch to the
lower case form only to avoid breaking the "one word, starting upper
case" rule (for instance with LAL for Libadalang).
TN: V126-009