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
Upcoming work will start to use command line arguments in a "main.py"
test script. Fix "path_wrapper.py" so that command line arguments are
correctly passed to "main.py".
TN: VA12-016
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
All tests which just check the presence/absence of errors when compiling
Lkt language specs have the same "test.py" script: put a reference
script in "python_support", create a new test driver to let tests use
it easily and migrate relevant tests to it.
For GitHub issue #622