// Aggregate vs non-aggregate
struct Agg {
    int x;
    double y;
};
struct NonAgg {
    int x{0};
    NonAgg(int) {} // user-declared ctor => not aggregate
};
int main() {
    Agg a{1, 2.5}; // aggregate initialization
    (void)a;
    // NonAgg b{1,2}; // would be ill-formed (only one parameter)
    NonAgg c{3};
    return 0;
}
