Patchwork [RFC,c++] fix PR 45329, provide information on overload resolution

login
register
mail settings
Submitter Nathan Froyd
Date Dec. 9, 2010, 4:23 a.m.
Message ID <20101209042357.GG25904@nightcrawler>
Download mbox | patch
Permalink /patch/74848/
State New
Headers show

Comments

Nathan Froyd - Dec. 9, 2010, 4:23 a.m.
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.
Mark Mitchell - Dec. 9, 2010, 4:24 a.m.
On 12/8/2010 8:23 PM, Nathan Froyd wrote:

> Tested on x86_64-unknown-linux-gnu.  OK to commit?

OK.

Patch

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;
 }