Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/g++.dg/template/ptrmem30.C @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
// PR c++/70096 // { dg-do run } int data_read; struct Holder { void foo () { data_read = data; } int data; }; void poison_stack () { volatile char a[256]; __builtin_memset ((void *)a, 0xa, sizeof a); } template <typename F> void test1 () { Holder h; h.data = 42; F Holder::*fptr = &Holder::foo; (h.*fptr)(); } template <typename F> void test2 () { Holder h; h.data = 42; F Holder::*fptr1 = &Holder::foo; F Holder::*fptr2 = fptr1; (h.*fptr2)(); } int main () { poison_stack (); test1<void()>(); poison_stack (); test2<void()>(); }