Hi,
I see this in the Type class:
unsigned getSubclassData() const { return SubclassData; }
void setSubclassData(unsigned val) {
SubclassData = val;
// Ensure we don't have any accidental truncation.
assert(getSubclassData() == val && "Subclass data too large for field");
}
How will the assert ever get triggered?
The type is "unsigned" so how can getSubclassData() ever not equal val ?
Where does the truncation take place?
Kind Regards
James