1f08c3bdfSopenharmony_cistruct s { 2f08c3bdfSopenharmony_ci int a, b, c; 3f08c3bdfSopenharmony_ci}; 4f08c3bdfSopenharmony_ci 5f08c3bdfSopenharmony_cistruct s s_init_first(int a) 6f08c3bdfSopenharmony_ci{ 7f08c3bdfSopenharmony_ci struct s s = { .a = a, }; 8f08c3bdfSopenharmony_ci return s; 9f08c3bdfSopenharmony_ci} 10f08c3bdfSopenharmony_ci 11f08c3bdfSopenharmony_cistruct s s_init_third(int a) 12f08c3bdfSopenharmony_ci{ 13f08c3bdfSopenharmony_ci struct s s = { .c = a, }; 14f08c3bdfSopenharmony_ci return s; 15f08c3bdfSopenharmony_ci} 16f08c3bdfSopenharmony_ci 17f08c3bdfSopenharmony_ci/* 18f08c3bdfSopenharmony_ci * check-name: struct implicit init zero needed 19f08c3bdfSopenharmony_ci * check-command: test-linearize -Wno-decl $file 20f08c3bdfSopenharmony_ci * 21f08c3bdfSopenharmony_ci * check-output-start 22f08c3bdfSopenharmony_cis_init_first: 23f08c3bdfSopenharmony_ci.L0: 24f08c3bdfSopenharmony_ci <entry-point> 25f08c3bdfSopenharmony_ci store.96 $0 -> 0[s] 26f08c3bdfSopenharmony_ci store.32 %arg1 -> 0[s] 27f08c3bdfSopenharmony_ci load.96 %r2 <- 0[s] 28f08c3bdfSopenharmony_ci ret.96 %r2 29f08c3bdfSopenharmony_ci 30f08c3bdfSopenharmony_ci 31f08c3bdfSopenharmony_cis_init_third: 32f08c3bdfSopenharmony_ci.L2: 33f08c3bdfSopenharmony_ci <entry-point> 34f08c3bdfSopenharmony_ci store.96 $0 -> 0[s] 35f08c3bdfSopenharmony_ci store.32 %arg1 -> 8[s] 36f08c3bdfSopenharmony_ci load.96 %r5 <- 0[s] 37f08c3bdfSopenharmony_ci ret.96 %r5 38f08c3bdfSopenharmony_ci 39f08c3bdfSopenharmony_ci 40f08c3bdfSopenharmony_ci * check-output-end 41f08c3bdfSopenharmony_ci */ 42