Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/g++.dg/overload/addr1.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
// { dg-do run } // Copyright (C) 2003 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 6 Sep 2003 <nathan@codesourcery.com> // Origin: Volker Reichelt <reichelt@igpm.rwth-aachen.de> // PR c++/11788 we failed to instantiate a decl, and we lost some side // effects static int flag = 0; template <typename> struct A { A &active () { flag++; static A a; return a; } static void foo() {} static void bar () {} static void bar (int) {} int m; }; void (*baz ()) () { A<int> a; return &a.active ().foo; } void (*boz ()) () { A<int> a; return &a.active ().bar; } int *buz () { A<int> a; return &a.active ().m; } int main () { baz (); boz (); buz (); return flag != 3; }