The use of InfoType::IT_default seems to clash with LLVM style which prefers to warn if not all enums are covered in a switch without default. We use our own default enum, which a.) could just be covered by default and b.) might prevent us from seeing the warning.
It doesn't look like we set it anywhere besides when default constructing an Info, so I doubt that it's actually checked before a proper type is set. It's not checked in the unit tests where it is explicitly passed to construct a reference.