../vendor/verstable/verstable.h: In function 'vt_first_nonzero_uint16':
../vendor/verstable/verstable.h:474:8: error: cast discards 'const' qualifier from pointer target type [-Werror=cast-qual]
474 | if( *(char *)&endian_checker ) // Little-endian (the compiler will optimize away the check at -O1 and above).
| ^
../vendor/verstable/verstable.h: In function 'path_access_map_init':
../vendor/verstable/verstable.h:902:21: error: cast discards 'const' qualifier from pointer target type [-Werror=cast-qual]
902 | table->metadata = (uint16_t *)&vt_empty_placeholder_metadatum;
| ^
../vendor/verstable/verstable.h: In function 'path_access_map_init_clone':
../vendor/verstable/verstable.h:948:23: error: cast discards 'const' qualifier from pointer target type [-Werror=cast-qual]
948 | table->metadata = (uint16_t *)&vt_empty_placeholder_metadatum;
| ^
../vendor/verstable/verstable.h: In function 'path_access_map_shrink':
../vendor/verstable/verstable.h:1627:23: error: cast discards 'const' qualifier from pointer target type [-Werror=cast-qual]
1627 | table->metadata = (uint16_t *)&vt_empty_placeholder_metadatum;
| ^
I've addressed the discarding of const in the endian-checking function in v2.1.0 because it was an easy fix. Regarding table->metadata = (uint16_t *)&vt_empty_placeholder_metadatum;, I'm going to close this issue in order to centralize discussion about optional compiler diagnostics here.