This new warning diagnoses any aggregate class/struct/union type which has user-declared constructors, in order to test the hypothesis that real code does not (intentionally) contain such animals.
If no real code triggers this diagnostic, then it would be plausible to change the definition of "aggregate type" in C++2a so that types triggering this diagnostic would no longer be considered aggregate types at all.