PR c++/56973, DR 696 - capture constant variables only as needed.
[official-gcc.git] / gcc / testsuite / g++.dg / cpp1y / pr77321.C
blobb25f492dc4f9402d815c2fe4bef7f9ceedc8a723
1 // PR c++/77321
2 // { dg-do compile { target c++14 } }
3 // { dg-options "-Wall" }
5 extern "C" void *memset (void *, int, __SIZE_TYPE__);
6 extern "C" void *malloc(__SIZE_TYPE__);
8 struct S {
9     char *a;
12 template <typename T>
13 void Test(T & Obj) {
14     auto && a(Obj.a);
15     a = (char*)::malloc(1024 * 1024);
16     ::memset(a + 28, 'X', 6);
19 int main()
21   S d;
22   Test(d);
23   return 0;