xref: /minix3/external/bsd/llvm/dist/clang/test/SemaCXX/ambiguous-conversion-show-overload.cpp (revision f4a2713ac843a11c696ec80c0a5e3e5d80b4d338)
1 // RUN: not %clang_cc1 -fsyntax-only -fshow-overloads=best -fno-caret-diagnostics %s 2>&1 | FileCheck %s
2 struct S {
3   S(void*);
4   S(char*);
5   S(unsigned char*);
6   S(signed char*);
7   S(unsigned short*);
8   S(signed short*);
9   S(unsigned int*);
10   S(signed int*);
11 };
12 void f(const S& s);
g()13 void g() {
14   f(0);
15 }
16 // CHECK: {{conversion from 'int' to 'const S' is ambiguous}}
17 // CHECK-NEXT: {{candidate constructor}}
18 // CHECK-NEXT: {{candidate constructor}}
19 // CHECK-NEXT: {{candidate constructor}}
20 // CHECK-NEXT: {{candidate constructor}}
21 // CHECK-NEXT: {{remaining 4 candidates omitted; pass -fshow-overloads=all to show them}}
22