Code coverage tests

This page documents the degree to which the PARI/GP source code is tested by our public test suite, distributed with the source distribution in directory src/test/. This is measured by the gcov utility; we then process gcov output using the lcov frond-end.

We test a few variants depending on Configure flags on the pari.math.u-bordeaux.fr machine (x86_64 architecture), and agregate them in the final report:

The target is to exceed 90% coverage for all mathematical modules (given that branches depending on DEBUGLEVEL or DEBUGMEM are not covered). This script is run to produce the results below.

LCOV - code coverage report
Current view: top level - basemath - Flv.c (source / functions) Coverage Total Hit
Test: PARI/GP v2.18.1 lcov report (development 31041-bd73e9fcdd) Lines: 97.2 % 758 737
Test Date: 2026-07-22 22:45:42 Functions: 93.5 % 62 58
Legend: Lines:     hit not hit

Function Name Sort by function name Hit count Sort by function hit count
Flm_deplin 0
Flm_det 0
Flm_intersect 0
Flm_to_ZM_inplace 0
Flc_to_ZC_inplace 14
Flm_Flc_gauss 21
Flm_invimage_CUP 287
Flm_inv_upper_1 490
Flm_invimage 889
Flm_invimage_i 931
Flm_inv_upper_1_ind 1274
Flm_inv_sp 1827
Flm_det_gauss_OK 2317
Flm_deplin_echelon 30800
Flm_det_CUP 37414
Flm_rank 39788
Flm_det_gauss 53463
Flm_inv 63719
Flm_inv_i 65546
Flm_det_i 90877
Flm_det_sp 90877
Flm_gauss_sp_OK 122519
Flm_Flc_invimage 139977
Flm_gauss_CUP 169266
Flm_intersect_i 272423
Flm_pivots_CUP 278725
Flm_ker_echelon 324889
Flv_to_ZV 388518
Fl_get_col_OK 455595
Flm_ker_sp 555789
Flm_ker 580376
_Fl_add 681080
Flm_ker_gauss_OK 698569
Flm_ker_gauss 780473
Flm_adjoint 930531
indexcompl 1077695
Flm_gauss_from_CUP 1099771
Flm_ker_i 1136164
Flm_echelon_gauss 1163300
Flm_solve_upper_1 1835267
Flm_lsolve_lower_unit_2 1958103
Flm_echelon_pre 1969309
_Fl_add_OK 2273352
Flm_gauss 2412150
Flm_gauss_sp_i 2429872
Fl_get_col 2432169
Flm_gauss_sp 2478300
Flm_lsolve_upper_2 2678932
Flm_rsolve_upper_2 2894185
Flm_CUP_pre 3578963
Flm_CUP_basecase 3660895
Flm_gauss_pivot 4167137
Flm_pivots 4445861
_Fl_addmul_OK 4455651
Flm_lsolve_lower_unit_pre 4552278
Flm_rsolve_lower_unit_2 4921657
Flm_lsolve_upper_pre 5738977
Flm_rsolve_upper_pre 6922502
Flm_rsolve_lower_unit_pre 11269078
Flm_to_ZM 11838853
_Fl_addmul 12629328
Flc_to_ZC 30255148

Generated by: LCOV version 2.0-1