1 // PR c++/77321
2 // { dg-do compile { target c++14 } }
3 // { dg-options "-Wall" }
4 
5 extern "C" void *memset (void *, int, __SIZE_TYPE__);
6 extern "C" void *malloc(__SIZE_TYPE__);
7 
8 struct S {
9     char *a;
10 };
11 
12 template <typename T>
Test(T & Obj)13 void Test(T & Obj) {
14     auto && a(Obj.a);
15     a = (char*)::malloc(1024 * 1024);
16     ::memset(a + 28, 'X', 6);
17 }
18 
main()19 int main()
20 {
21   S d;
22   Test(d);
23   return 0;
24 }
25