Yes, the modifiers won't affect the return value of bitSizeofType and isBitfieldType. hasUnionMarker just returns true if fromUnion() is in the set of modifiers, so you can just do that with pattern matching instead.