Based on discussion in D15448.
- For every sub-class C, its kind in the relevant enumeration is CKind (or C##Kind in preprocessor-ish terms), eg:
MemRegionKind -> MemRegionValKind
RegionValueKind -> SymbolRegionValueKind
CastSymbolKind -> SymbolCastKind
SymIntKind -> SymIntExprKind
- MemSpaceRegion is now an abstract base and no longer occupies GenericMemSpaceRegionKind. Instead, a new class, CodeSpaceRegion, is introduced for handling the unique use case for MemSpaceRegion as "the generic memory space" (when it represents a memory space that holds all executable code).
- BEG_ prefixes in memory region kind ranges are renamed to BEGIN_ for consisitency with symbol kind ranges (pro: not about begging, con: two extra characters to type).