I think the key line should be: ``` inline uint32_t to_int (void) const { return (major << (sizeof(FixedType) * 8)) + minor; } ``` sizeof() returns bytes and you are shifting by bits. This seems to make a failing test work now.