NVIDIA decided that negative enumerators can exist now. That's a problem in C++, because an enum has to be an integer type. And since the sync object timeout enums is a 64-bit max-unsigned-int, the size of the enum will be a 64-bit unsigned integer. Which can't have negative values.
So I need to break the enum into two enums, one with positive and one with negative values. This is both painful and stupid, but it must be done.