A C++ function cannot return a __value_in_regs structure if the structure requires copy constructing.
If a virtual function declared as __value_in_regs is to be overridden, the overriding function must also be declared as __value_in_regs. If the functions do not match, the compiler generates an error.