// PR c++/92878 - Parenthesized init of aggregates in new-expression. // { dg-do compile { target c++20 } } // Test new TYPE(...). int f (); struct A { int a; int b; }; void fn_A () { int i = 0; auto y = new A(1, 2); auto x = new A(++i, ++i); auto z = new A(1, { ++i }); auto u = new A(1, f()); } struct B { int a; int b; int c = 42; }; void fn_B () { int i = 0; auto y = new B(1, 2); auto x = new B(++i, ++i); auto z = new B(1, { ++i }); auto u = new B(1, f()); } struct C { int a; int b = 10; }; void fn_C () { int i = 0; auto y = new C(1); auto x = new C(++i); auto z = new C({ ++i }); auto u = new C(f()); }