summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/template/instantiate5.C
blob: e592c65d816cbf92f0ac7438d4b948496294b1a4 (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
// { dg-do compile }

// Origin: Volker Reichelt <reichelt@gcc.gnu.org>

// PR c++/11616: Incorrect line number in diagnostics

template <int> struct A
{
  static const int i=0;
};

int baz() { return A<0>::i; }

struct B
{
  static void foo (int);	// { dg-message "B::foo|candidate expects" }
};

template <typename T> struct C
{
  virtual void bar() const { T::foo(); } // { dg-error "no matching function" }
  // { dg-message "candidate" "candidate note" { target *-*-* } 21 }
};

C<B> c;				// { dg-message "instantiated" }