Mark single-argument constructors explicit.
Rationale:
- Avoid unexpected implicit promotions.
From the developer notes:
By default, declare single-argument constructors explicit. Rationale: This is a precaution to avoid unintended conversions that might arise when single-argument constructors are used as implicit conversion functions.