Commit 3d879eac by Jason Merrill

(convert_for_assignment): Fix handling of pmfs.

From-SVN: r19360
parent 4ceb7595
...@@ -6844,9 +6844,11 @@ convert_for_assignment (type, rhs, errtype, fndecl, parmnum) ...@@ -6844,9 +6844,11 @@ convert_for_assignment (type, rhs, errtype, fndecl, parmnum)
&& TYPE_PTRMEMFUNC_P (type)) && TYPE_PTRMEMFUNC_P (type))
{ {
tree ttl = TYPE_PTRMEMFUNC_FN_TYPE (type); tree ttl = TYPE_PTRMEMFUNC_FN_TYPE (type);
tree ttr = (TREE_CODE (rhstype) == POINTER_TYPE ? rhstype tree ttr = (TYPE_PTRMEMFUNC_P (rhstype)
: TYPE_PTRMEMFUNC_FN_TYPE (rhstype)); ? TYPE_PTRMEMFUNC_FN_TYPE (rhstype)
int ctt = comp_target_types (ttl, ttr, 1); : rhstype);
int ctt = (TREE_CODE (rhstype) == INTEGER_TYPE ? 1
: comp_target_types (ttl, ttr, 1));
if (ctt < 0) if (ctt < 0)
cp_pedwarn ("converting `%T' to `%T' is a contravariance violation", cp_pedwarn ("converting `%T' to `%T' is a contravariance violation",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment