I believe it's possible to check to see if an enum value was explicitly initialized. You could use that and disallow non-single-bit values that are not initialized, which would allow the first but not the second.