This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [RFC,c++] fix PR 45329, provide information on overload resolution
On Wed, Dec 08, 2010 at 04:32:39PM -0800, H.J. Lu wrote:
> On Wed, Dec 8, 2010 at 6:58 AM, Nathan Froyd <froydnj@codesourcery.com> wrote:
> > gcc/cp/
> > ? ? ? ?PR c++/45329
>
> This caused:
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46860
Oops. Sorry about that. Here's a patch to fix the overlooked libstdc++
test cases.
Tested on x86_64-unknown-linux-gnu. OK to commit?
-Nathan
libstdc++-v3/
PR testsuite/46860
* testsuite/20_util/auto_ptr/assign_neg.cc: Adjust.
* testsuite/20_util/unique_ptr/assign/assign_neg.cc: Adjust.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust.
diff --git a/libstdc++-v3/testsuite/20_util/auto_ptr/assign_neg.cc b/libstdc++-v3/testsuite/20_util/auto_ptr/assign_neg.cc
index 1f6e673..0fea060 100644
--- a/libstdc++-v3/testsuite/20_util/auto_ptr/assign_neg.cc
+++ b/libstdc++-v3/testsuite/20_util/auto_ptr/assign_neg.cc
@@ -37,6 +37,7 @@ test01()
{
std::auto_ptr<Base> ptr2;
ptr2 = new Base; // { dg-error "no match" }
+ // { dg-error "candidate" "candidate note" { target *-*-* } 39 }
return 0;
}
@@ -46,6 +47,6 @@ main()
test01();
return 0;
}
-// { dg-error "candidates" "" { target *-*-* } 134 }
+// { dg-error "::auto_ptr|no known conversion" "" { target *-*-* } 134 }
// { dg-error "note" "" { target *-*-* } 152 }
-// { dg-error "::auto_ptr" "" { target *-*-* } 262 }
+// { dg-error "::auto_ptr|no known conversion" "" { target *-*-* } 262 }
diff --git a/libstdc++-v3/testsuite/20_util/unique_ptr/assign/assign_neg.cc b/libstdc++-v3/testsuite/20_util/unique_ptr/assign/assign_neg.cc
index 95c1d5d..501bad3 100644
--- a/libstdc++-v3/testsuite/20_util/unique_ptr/assign/assign_neg.cc
+++ b/libstdc++-v3/testsuite/20_util/unique_ptr/assign/assign_neg.cc
@@ -46,6 +46,7 @@ void
test03()
{
std::unique_ptr<int[2]> p1(new int[3]); // { dg-error "no match" }
+ // { dg-error "candidate" "candidate-note" { target *-*-* } 48 }
std::unique_ptr<int[2]> p2 = p1; // { dg-error "deleted" }
}
diff --git a/libstdc++-v3/testsuite/20_util/weak_ptr/comparison/cmp_neg.cc b/libstdc++-v3/testsuite/20_util/weak_ptr/comparison/cmp_neg.cc
index 019f5f7..c26b09d 100644
--- a/libstdc++-v3/testsuite/20_util/weak_ptr/comparison/cmp_neg.cc
+++ b/libstdc++-v3/testsuite/20_util/weak_ptr/comparison/cmp_neg.cc
@@ -31,6 +31,7 @@ test01()
{
std::weak_ptr<A> p1;
p1 < p1; // { dg-error "no match" }
+ // { dg-error "candidate" "candidate note" { target *-*-* } 33 }
return 0;
}