Improved multiple `default()` guards conflict detection.

The conflict detection is less restrictive now, no error thrown until conflicting conditions are actually about to be expanded.