comparison gcc/testsuite/g++.dg/warn/Wplacement-new-size-1.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children 1830386684a0
comparison
equal deleted inserted replaced
111:04ced10e8804 131:84e7813d76e9
80 new (rbx.ax.a) int[5678]; 80 new (rbx.ax.a) int[5678];
81 } 81 }
82 82
83 void fBx1 () 83 void fBx1 ()
84 { 84 {
85 BAx bax1 = { 1, /* Ax = */ { 2, /* a[] = */ { 3 } } }; 85 BAx bax1 = { 1, /* Ax = */ { 2, /* a[] = */ {} } };
86 86
87 new (bax1.ax.a) char; 87 new (bax1.ax.a) char; // { dg-warning "placement" }
88 new (bax1.ax.a) char[2]; // { dg-warning "placement" } 88 new (bax1.ax.a) char[2]; // { dg-warning "placement" }
89 new (bax1.ax.a) Int16; // { dg-warning "placement" } 89 new (bax1.ax.a) Int16; // { dg-warning "placement" }
90 new (bax1.ax.a) Int32; // { dg-warning "placement" } 90 new (bax1.ax.a) Int32; // { dg-warning "placement" }
91 }
92
93 void fBx2 ()
94 {
95 BAx bax2 = { 1, /* Ax = */ { 2, /* a[] = */ { 3, 4 } } };
96
97 new (bax2.ax.a) char;
98 new (bax2.ax.a) char[2];
99 new (bax2.ax.a) char[3]; // { dg-warning "placement" }
100 new (bax2.ax.a) Int16;
101 new (bax2.ax.a) char[4]; // { dg-warning "placement" }
102 new (bax2.ax.a) Int32; // { dg-warning "placement" }
103 }
104
105 void fBx3 ()
106 {
107 BAx bax2 = { 1, /* Ax = */ { 3, /* a[] = */ { 4, 5, 6 } } };
108
109 new (bax2.ax.a) char;
110 new (bax2.ax.a) char[2];
111 new (bax2.ax.a) Int16;
112 new (bax2.ax.a) char[3];
113 new (bax2.ax.a) char[4]; // { dg-warning "placement" }
114 new (bax2.ax.a) Int32; // { dg-warning "placement" }
115 } 91 }
116 92
117 void fB0 (BA0 *pb0, BA0 &rb0) 93 void fB0 (BA0 *pb0, BA0 &rb0)
118 { 94 {
119 BA0 ba0; 95 BA0 ba0;