Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/g++.old-deja/g++.oliva/partord1.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 assemble } // Copyright (C) 1999 Free Software Foundation // by Alexandre Oliva <oliva@dcc.unicamp.br> template <typename T> void foo(T); template <typename T> void foo(T*); template <typename T> class bar { private: int i; // { dg-message "" } this variable friend void foo<T>(T); }; template <typename T> void foo(T) { bar<T>().i; // ok, I'm a friend } template <typename T> void foo(T*) { bar<T*>().i; // { dg-error "" } not a friend } int main() { int j = 0; foo(j); // calls foo<int>(int), ok foo(&j); // calls foo<int>(int*) foo<int*>(&j); // calls foo<int*>(int*), ok }