1// { dg-do compile }
2
3// Copyright (C) 2002 Free Software Foundation, Inc.
4// Contributed by Nathan Sidwell 24 Dec 2002 <nathan@codesourcery.com>
5// Source Martin Buchholz martin@xemacs.org
6
7// PR 9053. Failed to consider templates that are disambiguated by
8// return type.
9
10template <typename T> class bar;
11template <> struct bar<const char*> { typedef void type; };
12template <typename T> class qux;
13template <> struct qux<int> { typedef void type; };
14
15template <typename T>
16typename bar<T>::type foo (T t) { }
17
18template <typename T>
19typename qux<T>::type foo (T t) { }
20
21
22int
23main (int argc, char *argv[])
24{
25  foo ("foo");
26  foo (7);
27}
28