Move CLabel assertions into smart constructors (#17957)
Spin-off !3367 (closed) to make it easier to review.
Commit description:
Move CLabel assertions into smart constructors (#17957)
It avoids using DynFlags in the Outputable instance of Clabel to check
assertions at pretty-printing time.