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

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

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

/testsuite
2014-07-02  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.

From-SVN: r212223
This commit is contained in:
Paolo Carlini 2014-07-02 07:51:40 +00:00 committed by Paolo Carlini
parent d570d364e6
commit bca23ca20c
7 changed files with 33 additions and 15 deletions

View file

@ -1,3 +1,8 @@
2014-07-02 Paolo Carlini <paolo.carlini@oracle.com>
* pt.c (convert_template_argument): Use inform instead of error in
three places.
2014-06-30 Edward Smith-Rowland <3dw4rd@verizon.net>
PR c++/58781

View file

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

View file

@ -1,3 +1,10 @@
2014-07-02 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.
2014-07-02 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/coarray/get_array.f90: Add missing SYNC ALL.

View file

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

View file

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

View file

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

View file

@ -9,7 +9,7 @@ public:
};
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 }