summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/other/pr40561.C
blob: c94dfa4bd62526a2649e272c6b8f21bc82dcad0a (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
28
29
30
31
32
33
34
35
36
37
38
// { dg-do compile }

#include <set>

class SyAccess;
class VamsBase 
{
	public:
	virtual ~VamsBase(void);
};

class VamsFnct : public VamsBase 
{	
	public:
	~VamsFnct(void);
	std::set<SyAccess*> getNullDependencies(void) const
	{	return std::set<SyAccess*>();
	}
};

class VamsFnctSystem:public VamsFnct
{	public:
	VamsFnctSystem(
		const bool _bPassDependencies);
};

template< std::set<SyAccess*> (VamsFnct::*__GET_DEP__)(void) const >
class VamsSystemFunction:public VamsFnctSystem
{	public:
	VamsSystemFunction()
	    :VamsFnctSystem(
		__GET_DEP__ != &VamsFnct::getNullDependencies
		)
	{
	}
};

VamsSystemFunction<&VamsFnct::getNullDependencies> s;