Trying to compile on Windows gave me these errors:
adacovex-cache.adb:614:25: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:614:25: error: found type "Standard.Long_Integer"
adacovex-cache.adb:646:22: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:646:22: error: found type "Standard.Long_Integer"
adacovex-cache.adb:758:32: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:758:32: error: found type "Standard.Long_Integer"
adacovex-cache.adb:981:29: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:981:29: error: found type "Standard.Long_Integer"
adacovex.gpr: error: [Ada Compile] adacovex-cache.adb (adacovex.gpr) failed with status 1
adacovex-dir_cache.adb:49:27: error: expected type "Standard.Long_Long_Integer"
adacovex-dir_cache.adb:49:27: error: found type "Standard.Long_Integer"
adacovex.gpr: error: [Ada Compile] adacovex-dir_cache.adb (adacovex.gpr) failed with status 1
adacovex-cache.adb:614:25: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:614:25: error: found type "Standard.Long_Integer"
adacovex-cache.adb:646:22: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:646:22: error: found type "Standard.Long_Integer"
adacovex-cache.adb:758:32: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:758:32: error: found type "Standard.Long_Integer"
adacovex-cache.adb:981:29: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:981:29: error: found type "Standard.Long_Integer"
adacovex.gpr: error: [Ada Compile] adacovex-parsers-do178c.adb (adacovex.gpr) failed with status 1
adacovex-cache.adb:614:25: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:614:25: error: found type "Standard.Long_Integer"
adacovex-cache.adb:646:22: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:646:22: error: found type "Standard.Long_Integer"
adacovex-cache.adb:758:32: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:758:32: error: found type "Standard.Long_Integer"
adacovex-cache.adb:981:29: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:981:29: error: found type "Standard.Long_Integer"
adacovex.gpr: error: [Ada Compile] adacovex-parsers-source.adb (adacovex.gpr) failed with status 1
adacovex-cache.adb:614:25: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:614:25: error: found type "Standard.Long_Integer"
adacovex-cache.adb:646:22: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:646:22: error: found type "Standard.Long_Integer"
adacovex-cache.adb:758:32: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:758:32: error: found type "Standard.Long_Integer"
adacovex-cache.adb:981:29: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:981:29: error: found type "Standard.Long_Integer"
adacovex.gpr: error: [Ada Compile] adacovex-parsers-manifest.adb (adacovex.gpr) failed with status 1
1. In the file src/adacovex-cache.adb
• Line 614 (inside PStamp_Lookup):
• Original: Now : constant Long_Long_Integer := System.OS_Lib.To_C (System.OS_Lib.Current_Time);
• Fix: Now was changed to Long_Integer and the cast was applied below on line 616: Long_Long_Integer (Now).
• Line 646 (inside PStamp_Record):
• Original: Now_Sec : constant Long_Long_Integer := System.OS_Lib.To_C (System.OS_Lib.Current_Time);
• Fix: Now_Sec was changed to Long_Integer and the cast was applied below on line 671: Long_Long_Integer (Now_Sec).
• Lines 758 and 981 (within Hash_File and save functions):
• Original: Mt := System.OS_Lib.To_C (System.OS_Lib.File_Time_Stamp (Path));
• Fix: Wrapped in a 64-bit cast: Mt := Long_Long_Integer (System.OS_Lib.To_C (System.OS_Lib.File_Time_Stamp (Path)));
2. In the file src/adacovex-dir_cache.adb
• Line 49 (within Tool_Fingerprint):
• Original: Mt := System.OS_Lib.To_C (System.OS_Lib.File_Time_Stamp (Exe_Path));
• Fix: Wrapped in 64-bit cast: Mt := Long_Long_Integer (System.OS_Lib.To_C
(System.OS_Lib.File_Time_Stamp (Exe_Path)));
• In the Dir_Mtime function (at the end of the file):
• Original: return System.OS_Lib.To_C (System.OS_Lib.File_Time_Stamp (Dir));
• Fix: Wrapped return: return Long_Long_Integer (System.OS_Lib.To_C (System.OS_Lib.File_Time_Stamp (Dir)));
And after that, it compiles perfectly.
\adacovex> alr -d build
Note: Building covex=1.58.0/adacovex.gpr…
[Ada Compile] adacovex-target_profiles.adb
[Ada Compile] adacovex-test_support.adb
[Ada Compile] adacovex_ansi_tests.adb
[Ada Compile] adacovex_cache_tests.adb
[Ada Compile] adacovex_completion_tests.adb
[Ada Compile] adacovex_complexity_tests.adb
[Ada Compile] adacovex_config_tests.adb
[Ada Compile] adacovex_cpus_tests.adb
[Ada Compile] adacovex_dal_tests.adb
[Ada Compile] adacovex_diff_tests.adb
[Ada Compile] adacovex_dir_cache_tests.adb
[Ada Compile] adacovex_do178c_tests.adb
[Ada Compile] adacovex_ir_tests.adb
[Ada Compile] adacovex_man_tests.adb
[Ada Compile] adacovex_opt_outs_tests.adb
[Ada Compile] adacovex_prove_patch_tests.adb
[Ada Compile] adacovex_prove_runner_tests.adb
[Ada Compile] adacovex_prove_tests.adb
[Ada Compile] adacovex_renderer_svg_tests.adb
[Ada Compile] adacovex_renderer_tests.adb
[Ada Compile] adacovex_sbom_tests.adb
[Ada Compile] adacovex_scanner_tests.adb
[Ada Compile] adacovex_server_tests.adb
[Ada Compile] adacovex_spark_coverage_tests.adb
[Ada Compile] adacovex_testparser_tests.adb
[Ada Compile] adacovex_types_tests.adb
[Ada Compile] adacovex_tz_ansi_tests.adb
[Ada Compile] adacovex_vcs_tests.adb
[Ada Compile] test_runner.adb
adacovex_spark_coverage_tests.adb:57:121: (style) this line is too long
adacovex_spark_coverage_tests.adb:60:121: (style) this line is too long
adacovex_spark_coverage_tests.adb:61:121: (style) this line is too long
“adacovex.exe” up to date…
What arch are you on for Windows, as well as which version of Alire are you using? Will see if I can reproduce this.
Once the PR is merged and index updated the easiest way to install adacovex is using Alire, whether as a per project dependency or installing the binary itself globally.
Currently it points to a dated version of adacovex (1.48.0)
By the way, I completely uninstalled Alire, downloaded the latest version of alr 2.1.1, and did a completely fresh global install (alr install covex gnatprove). Guess what? Their official automated Alire deployment failed completely, with the same 64-bit integer type errors in adacovex-cache.adb and adacovex-dir_cache.adb.
So no, it’s definitely not my compiler failing, and using Alire to download covex=1.48.0 doesn’t fix it either, because the currently indexed version is fundamentally broken for Windows hosts by default. They should really test their releases on Windows…
I ran into this before, with these errors:
scanning sources... 13 packages, 28 subprograms
result cache: 0 hit(s), 13 miss(es), 0 evicted
docstrings: 0/28 (0%)
GNATprove: Stone (0 VCs)
tests: 0 passed, 0 failed
DAL-C: Unmet
Error: adacovex-parsers-manifest-parse_gpr.adb:24 length check failed
ERROR: Command ["adacovex", "prove"] exited with code 1
Execution of C:\rsa_2026\adacovex.exe terminated by unhandled exception
raised STORAGE_ERROR : EXCEPTION_STACK_OVERFLOW
Call stack traceback locations:
0x6e7a3b 0x7ffa7320631d 0x7ffa73164033 0x7ffa73205c5c 0x6f0fb4 0x210246 0xffffffffffffffff
ERROR: Command [".\adacovex.exe", "prove"] exited with code 1
And now, this error again:
PS C:\Users\epriv> alr --version
alr 2.1.1
PS C:\Users\epriv> alr install covex gnatprove
Note: Computing solutions...
Success: Installation targets fully solved
Note: Starting deployment of covex=1.48.0 to fulfill covex* with no dependencies.
Note: Deploying covex=1.48.0...
Cloning into '/c/Users/epriv/AppData/Local/Temp/alr-16660-lluy.tmp/alr-16660-bjek.tmp'...
remote: Enumerating objects: 13763, done.
remote: Counting objects: 100% (1303/1303), done.
remote: Compressing objects: 100% (460/460), done.
remote: Total 13763 (delta 1051), reused 990 (delta 822), pack-reused 12460 (from 1)
Receiving objects: 100% (13763/13763), 44.60 MiB | 15.97 MiB/s, done.
Resolving deltas: 100% (11632/11632), done.
Updating files: 100% (625/625), done.
Note: Starting installation of covex=1.48.0...
Note: Building covex=1.48.0/adacovex.gpr...
"obj" created
"bin" created
[Ada Compile] adacovex-ansi.adb
[Ada Compile] adacovex-cache.adb
[Ada Compile] adacovex-completion.adb
[Ada Compile] adacovex-complexity.adb
[Ada Compile] adacovex-compliance-dal.adb
[Ada Compile] adacovex-compliance.ads
[Ada Compile] adacovex-config.adb
[Ada Compile] adacovex-cpus.adb
[Ada Compile] adacovex-dashboard_template.ads
[Ada Compile] adacovex-diff.adb
[Ada Compile] adacovex-dir_cache.adb
[Ada Compile] adacovex-docs_template.adb
[Ada Compile] adacovex-ir_bounds.adb
adacovex-cache.adb:614:25: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:614:25: error: found type "Standard.Long_Integer"
adacovex-cache.adb:646:22: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:646:22: error: found type "Standard.Long_Integer"
adacovex-cache.adb:758:32: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:758:32: error: found type "Standard.Long_Integer"
adacovex-cache.adb:981:29: error: expected type "Standard.Long_Long_Integer"
adacovex-cache.adb:981:29: error: found type "Standard.Long_Integer"
adacovex.gpr: error: [Ada Compile] adacovex-cache.adb (adacovex.gpr) failed with status 1
adacovex-dir_cache.adb:49:27: error: expected type "Standard.Long_Long_Integer"
adacovex-dir_cache.adb:49:27: error: found type "Standard.Long_Integer"
adacovex.gpr: error: [Ada Compile] adacovex-dir_cache.adb (adacovex.gpr) failed with status 1
ERROR: Command ["gprbuild", "-s", "-j0", "-p", "-P", "C:\Users\epriv\AppData\Local\Temp\alr-16660-lluy.tmp\covex_1.48.0_5cfdfd92\adacovex.gpr"] exited with code 4
ERROR: Build failed, cannot perform installation
@bladeacer Hey, I already tested the code, I did what you told me and guess what??? It worked 100%! It compiled without any type errors or constraint errors, I was able to run Adacovex on the project and everything is great! Excellent! Thank you so much for making the changes and letting me know. It’s a really good tool, I like it, thanks!