| // { dg-do assemble } |
| |
| // Copyright (C) 2000 Free Software Foundation, Inc. |
| // Contributed by Nathan Sidwell 12 Jan 2001 <nathan@codesourcery.com> |
| |
| // Bug 1630. Template deduction at a call allowed conversions more lenient than |
| // qualification conversions. That would lead to misleading diagnostics during |
| // overload resolution. |
| |
| |
| template <typename T> void Foo (T const **); // { dg-message "note" } |
| template <typename T> void Bar (T const * const *); |
| void Foo (int); // { dg-message "note" } |
| void Foo (float); // { dg-message "note" } candidate |
| |
| void baz (int **p1) |
| { |
| Foo (p1); // { dg-error "match" } no such function |
| // { dg-message "(candidate|incompatible cv-qualifiers|conversion)" "candidate note" { target *-*-* } .-1 } |
| Bar (p1); // OK |
| } |