57 Commits

Author SHA1 Message Date
Edgar Delaporte
a9e1efb00a Add an option to invoke gnatfuzz in test2prove.py in order
to generate better CE candidates.

Issue: #908
2025-06-04 07:19:05 +00:00
Edgar Delaporte
398f4e8b5a New files test
Issue: #908
2025-05-21 08:41:10 +00:00
Edgar Delaporte
ba5b4e7033 Support the use of gnattest json values as counter examples.
Add a new swicth --gnattest_values to indicate the json in
which values should be read.
Add the logic to parse these values and use them as counter examples.

Issue: #908
2025-05-21 08:41:10 +00:00
Edgar Delaporte
c43f6aa655 Add python script to integrate gnattest with gnatprove 2025-04-16 08:59:43 +00:00
Johannes Kanig
057e61f425 Copyright update 2025-01-06 09:47:26 +09:00
Johannes Kanig
4ad21638e0 Remove gitlab url from spark2014 repo 2024-11-24 23:34:33 +00:00
Johannes Kanig
a2c2126caf Use scripts from shared repo for pre-commit checks
Remove now unused scripts from spark2014 repo
2024-05-22 09:15:43 +00:00
Johannes Kanig
eed9eab7d2 File script to query gitlab issue stats 2024-03-27 08:54:52 +00:00
Johannes Kanig
64783e7097 cleanup script and support different copyright format 2024-01-16 09:00:55 +00:00
Johannes Kanig
3961734b0a file copyright script 2024-01-16 09:00:55 +00:00
Johannes Kanig
7e3c9139b8 Update copyright notices 2024-01-12 10:27:56 +00:00
Yannick Moy
151277c22f Remove support for manual proof through Why3 in SPARK
The SPARK plugin for GS offered two options to perform proof
at the VC level: one going through Coq, and one going through Why3
tactics. Only the first one remains. The second one is removed
because it is too complex to use.

Remove generated menu file for the GS plugin, as well as code to
generate this file.
Update the UG and develguide docs to reflect that change.
Update the why3 commit after removal of code for manual proof.
2023-10-12 07:25:21 +00:00
Johannes Kanig
eb54f61eff Adapt testsuite to absence of cvc4
* configuration.adb
(Set_Provers): remove check for cvc4 (obsolence message)
* gnatprove.conf: remove cvc4 configuration
* P804-001__driver: the test configuration now uses a modified version
    of cvc5 instead of a modified version of cvc4
* remove cvc4 from various plans
* update why3menus.py for manual proof menus
2023-10-09 23:39:39 +00:00
Johannes Kanig
47f3c838c3 fix all pre-commit violations in spark2014 repo 2023-09-20 09:36:25 +00:00
Yannick Moy
bf7e4e6879 Generate and use data representation for size/alignment attributes
GNATprove now generates data representation in JSON format by calling
the appropriate compiler for the target on sources of the project,
passing switches -gnatc to only perform semantic analysis and -gnatR2js
to generate a JSON file for every source input file, containing entries
for all source types and objects.

This generation takes place in a preliminary step of GNATprove, prior
to generating ALI files with global variable information. In the
translation phase to Why3, the JSON files for all sources in the closure
of the current main are read to populate a global table with data
representation information on types and objects, represented by their
location string.

Whenever translation hits a size or alignment attribute, it checks if
the corresponding value is not present in the global data representation
information, and retrieves it if present.

A new unit GNAT2Why.Data_Decomposition is defined to group the new variable
and subprogram for data decomposition.

Issue: eng/spark/spark2014#158
Issue: eng/spark/spark2014#168
2023-07-21 14:10:02 +00:00
Johannes Kanig
48f50e6ef1 W222-009 precommit check for testsuite markers
Add a precommit check to avoid committing testsuite markers such as
"SOUNDNESS BUG" in test output.

* check-empty-file.py: add comment
* check-testsuite-markers.py: new script to check for the testsuite
  markers
* .pre-commit-config.yaml: add a hook for the new script for .out files.
2023-02-23 09:04:48 +00:00
Johannes Kanig
8e838ba567 W125-001 add opam install script for SPARK
* Makefile:
  disable Coq libs explicitly
2023-02-04 11:13:28 +00:00
Johannes Kanig
5cb01f8443 W116-007 add option for Why3 logging
Add a new switch to Gnatprove to enable more logging by why3.

* configuration.adb
(Parse_Switches): add switch --why3-logging
(Compute_Why3_Args): pass switch to Why3 if enabled
2023-01-25 08:42:40 +00:00
Piotr Trojanek
222bba840e Add GDB pretty-printer for Entity_Name
no-tn-check

Change-Id: I07dca25e494c112f1f285a424eef59e9b88a1ab7
2023-01-13 08:12:44 +00:00
Piotr Trojanek
96dba1940c (no-tn-check) copyright update (cont.)
Change-Id: I9bd7fbd9f5955a2e5506d0dcfe6056b50d80de5e
2023-01-05 09:16:38 +00:00
Johannes Kanig
d022f23de0 (no-tn-check) Update copyright notices
Change-Id: I10991d89306d5dc0cbd356a35390465d3975b026
2022-01-03 08:39:39 +00:00
Johannes Kanig
b647075956 UA26-010 enforce python styles via flake8 and black
- Config mostly taken from anod repository
- Make all python files compliant
- Remove some obviously unused python files (still in python2
  syntax)

Change-Id: Ie90715f9e6e0a4831613faf0e9472706e210a7af
2021-12-16 10:26:01 +09:00
Johannes Kanig
0ba58d7595 UA26-010 check for empty test.out/test.opt files
Change-Id: I2a7ac762df1ac80b9afa1154ebc6f749401001dd
2021-12-15 18:26:15 +09:00
Johannes Kanig
84a19bbbc7 UA26-010 add check for submodules
Change-Id: I6d36375174772cf2eda73887c3d47861884a95a4
2021-12-15 12:12:47 +09:00
Carlin Bingham
d4e90c111d Fix misspelling of developer 2021-11-07 04:42:41 +13:00