Handle tentative definitions in CFA construction
A global declaration with static
or no storage specifier and no initializer can be a tentative definition, i.e. it acts as a definition with respective storage specifier and empty initializer if there are no non-tentative definitions before or after. See C11 §6.9.2 or cppreference.
ASTConverter should collect global declarations for the same variable and retain only one effective definition, so CPAs are not confused by multiple slightly different declarations.