1// { dg-do compile }
2
3// Copyright (C) 2002 Free Software Foundation, Inc.
4// Contributed by Nathan Sidwell 16 Sep 2002 <nathan@codesourcery.com>
5
6// PR 7718. ICE.
7
8template <typename OBJECT>
9void default_initializer(const OBJECT &) { }
10
11
12template <typename OBJECT, void init_function(const OBJECT &)>
13class cContainer {
14  public:
15  template <typename INITIALIZER>
16  void Add(const INITIALIZER &initializer) {
17    init_function(initializer);
18  }
19};
20
21int main() {
22  cContainer<int, default_initializer<int> > c;
23
24  c.Add<int>(42);
25
26  return 0;
27}
28