blob: 8780d5f622f0f85a2475508092f052ddb2e8e48b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
// Copyright (C) 2002 Free Software Foundation
// Origin: C++/70
// Contributed by Gabriel Dos Reis <gdr@integrable-solutions.net>
// { dg-do compile }
template <class T>
struct S;
template <class T>
void operator* (S<T>, S<T>);
template <class T>
struct S
{
friend void operator*<> (S, S); // { } // okay
void operator* (T) { }
};
template <class T>
void operator* (S<T>, S<T>) { }
int main()
{
S<int> s1, s2;
s1 * s2;
s1 * 2;
}
|