diff mbox

[C++] Replace error + error with error + inform

Message ID 53B2BF85.7070806@oracle.com
State New
Headers show

Commit Message

Paolo Carlini July 1, 2014, 2:02 p.m. UTC
Hi,

noticed these error messages. Tested x86_64-linux.

Thanks,
Paolo.

///////////////
/cp
2014-07-01  Paolo Carlini  <paolo.carlini@oracle.com>

	* pt.c (convert_template_argument): Use inform instead of error in
	three places.

/testsuite
2014-07-01  Paolo Carlini  <paolo.carlini@oracle.com>

	* g++.dg/cpp0x/variadic-ex10.C: Adjust for inform instead of error.
	* g++.dg/cpp0x/variadic-ex14.C: Likewise.
	* g++.dg/parse/error11.C: Likewise.
	* g++.old-deja/g++.brendan/template17.C: Likewise.

Comments

Jason Merrill July 1, 2014, 10:27 p.m. UTC | #1
OK.

Jason
diff mbox

Patch

Index: cp/pt.c
===================================================================
--- cp/pt.c	(revision 212194)
+++ cp/pt.c	(working copy)
@@ -6468,13 +6468,16 @@  convert_template_argument (tree parm,
 		     "parameter list for %qD",
 		     i + 1, in_decl);
 	      if (is_type)
-		error ("  expected a constant of type %qT, got %qT",
-		       TREE_TYPE (parm),
-		       (DECL_P (arg) ? DECL_NAME (arg) : orig_arg));
+		inform (input_location,
+			"  expected a constant of type %qT, got %qT",
+			TREE_TYPE (parm),
+			(DECL_P (arg) ? DECL_NAME (arg) : orig_arg));
 	      else if (requires_tmpl_type)
-		error ("  expected a class template, got %qE", orig_arg);
+		inform (input_location,
+			"  expected a class template, got %qE", orig_arg);
 	      else
-		error ("  expected a type, got %qE", orig_arg);
+		inform (input_location,
+			"  expected a type, got %qE", orig_arg);
 	    }
 	}
       return error_mark_node;
@@ -6487,9 +6490,11 @@  convert_template_argument (tree parm,
 		 "parameter list for %qD",
 		 i + 1, in_decl);
 	  if (is_tmpl_type)
-	    error ("  expected a type, got %qT", DECL_NAME (arg));
+	    inform (input_location,
+		    "  expected a type, got %qT", DECL_NAME (arg));
 	  else
-	    error ("  expected a class template, got %qT", orig_arg);
+	    inform (input_location,
+		    "  expected a class template, got %qT", orig_arg);
 	}
       return error_mark_node;
     }
@@ -6537,8 +6542,9 @@  convert_template_argument (tree parm,
 		      error ("type/value mismatch at argument %d in "
 			     "template parameter list for %qD",
 			     i + 1, in_decl);
-		      error ("  expected a template of type %qD, got %qT",
-			     parm, orig_arg);
+		      inform (input_location,
+			      "  expected a template of type %qD, got %qT",
+			      parm, orig_arg);
 		    }
 
 		  val = error_mark_node;
Index: testsuite/g++.dg/cpp0x/variadic-ex10.C
===================================================================
--- testsuite/g++.dg/cpp0x/variadic-ex10.C	(revision 212194)
+++ testsuite/g++.dg/cpp0x/variadic-ex10.C	(working copy)
@@ -5,5 +5,5 @@  Tuple<> t0; // Types contains no arguments
 Tuple<int> t1; // Types contains one argument: int
 Tuple<int, float> t2; // Types contains two arguments: int and float
 Tuple<0> error; // { dg-error "mismatch" "mismatch" }
-// { dg-error "expected a type" "expected a type" { target *-*-* } 7 }
+// { dg-message "expected a type" "expected a type" { target *-*-* } 7 }
 // { dg-error "in declaration" "in declaration" { target *-*-* } 7 }
Index: testsuite/g++.dg/cpp0x/variadic-ex14.C
===================================================================
--- testsuite/g++.dg/cpp0x/variadic-ex14.C	(revision 212194)
+++ testsuite/g++.dg/cpp0x/variadic-ex14.C	(working copy)
@@ -9,10 +9,10 @@  template<template<class...> class Q> class Y { /*
 
 X<A> xA; // okay
 X<B> xB; // { dg-error "mismatch" "mismatch" }
-// { dg-error "expected a template" "expected" { target *-*-* } 11 }
+// { dg-message "expected a template" "expected" { target *-*-* } 11 }
 // { dg-error "invalid type" "invalid" { target *-*-* } 11 }
 X<C> xC; // { dg-error "mismatch" "mismatch" }
-// { dg-error "expected a template" "expected" { target *-*-* } 14 }
+// { dg-message "expected a template" "expected" { target *-*-* } 14 }
 // { dg-error "invalid type" "invalid" { target *-*-* } 14 }
 Y<A> yA;
 Y<B> yB;
Index: testsuite/g++.dg/parse/error11.C
===================================================================
--- testsuite/g++.dg/parse/error11.C	(revision 212194)
+++ testsuite/g++.dg/parse/error11.C	(working copy)
@@ -33,7 +33,7 @@  template <int N> struct Foo2 {};
 template struct Foo2<::B>;  // { dg-error "21:'<::' cannot begin" "begin" { target { ! c++11 } } }
 // { dg-message "21:'<:' is an alternate" "alt" { target { ! c++11 } } 33 }
 // { dg-message "25:type/value mismatch" "mismatch" { target *-*-* } 33 }
-// { dg-error "25:expected a constant" "const" { target *-*-* } 33 }
+// { dg-message "25:expected a constant" "const" { target *-*-* } 33 }
 
 int value = 0;
 
Index: testsuite/g++.old-deja/g++.brendan/template17.C
===================================================================
--- testsuite/g++.old-deja/g++.brendan/template17.C	(revision 212194)
+++ testsuite/g++.old-deja/g++.brendan/template17.C	(working copy)
@@ -9,7 +9,7 @@  class NDAMName {
 };
 
 const Regex NDAMName<'L'>::pattern("^[Ll](.*)$",   1);// { dg-error "type/value mismatch" "mismatch" }
-// { dg-error "expected a type" "expected" { target *-*-* } 11 }
+// { dg-message "expected a type" "expected" { target *-*-* } 11 }
 // { dg-warning "deprecated" "depr" { target *-*-* } 11 }
 unsigned NDAMName<'L'>::sequence_number = 0;// { dg-error "type/value mismatch" "mismatch" }
-// { dg-error "expected a type" "exp" { target *-*-* } 14 }
+// { dg-message "expected a type" "exp" { target *-*-* } 14 }