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 - language - default.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.18.1 lcov report (development 30735-65f72320ad) Lines: 379 589 64.3 %
Date: 2026-03-14 09:23:49 Functions: 45 70 64.3 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
TeX_define 0
TeX_define2 0
call_f2 945
compare_name 0
default0 927
default_gp_data 1883
defaults_list 0
delete_dirs 7492
delete_path 3746
err_intarray 21
expand_path 3746
get_int 44
get_sep 1641
get_uint 1208
getrealprecision 0
gp_get_color 28
init_fmt 1883
init_graphs 1883
init_help 1883
init_hist 1897
init_path 3766
init_pp 1883
my_int 1252
open_logfile 0
pari_close_paths 1873
pari_default_path 1883
pari_init_paths 1873
parse_intarray 39
sd_PATH 0
sd_TeXstyle 0
sd_colors 4
sd_compatible 0
sd_datadir 28
sd_debug 28
sd_debugfiles 21
sd_debugmem 0
sd_factor_add_primes 0
sd_factor_proven 0
sd_factorlimit 0
sd_format 7
sd_histsize 14
sd_intarray 39
sd_log 0
sd_logfile 0
sd_nbthreads 7
sd_new_galois_format 28
sd_output 0
sd_parisize 405
sd_parisizemax 0
sd_path 0
sd_prettyprinter 0
sd_primelimit 14
sd_realbitprecision 21
sd_realprecision 465
sd_res 692
sd_secure 0
sd_seriesprecision 35
sd_simplify 0
sd_size 411
sd_sopath 0
sd_strictargs 7
sd_strictmatch 0
sd_string 4
sd_threadsize 6
sd_threadsizemax 0
sd_toggle 44
sd_ulong 311
sd_ulong_init 1208
setdefault 945
setrealprecision 0

Generated by: LCOV version 1.16