1class S
2{
3	int (&fnref0)(double);
4	// distinct kinds
5	int* &fnref1;
6	int &fnref2;
7};
8
9void foo(S& s)
10{
11}
12typedef void(&callback)(int);
13
14callback fn0(void)
15{
16}
17
18int(&fn1(void))(int)
19{
20}
21
22void fn2(callback c)
23{
24}
25