re PR c++/22369 (C++ produces mis-matched types with pointers to member functions)
authorRichard Guenther <rguenther@suse.de>
Mon, 20 Aug 2007 12:31:44 +0000 (12:31 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Mon, 20 Aug 2007 12:31:44 +0000 (12:31 +0000)
commita489b1f0ea72e182de2706af2b2846376279fa39
tree4e9b7a1fefd171a2f1b5d078b55d477f30d5c3e2
parentff7637ef1d8ab07702005ddba765a2d5fba4c071
re PR c++/22369 (C++ produces mis-matched types with pointers to member functions)

2007-08-20  Richard Guenther  <rguenther@suse.de>

PR c++/22369
PR c++/22451
        * call.c (build_new_method_call): Convert initializer to
        the basetype.
        * init.c (build_aggr_init): Do not fiddle with types.
        (build_vec_delete_1): Use correct type for POINTER_PLUS_EXPR.
        * except.c (build_throw): Do not drop qualifiers for the
        pointer type.
        * typeck.c (get_member_function_from_ptrfunc): Do not
        fiddle with types, instead convert.
        (build_ptrmemfunc1): Convert to the target type for
        initialization.
        (gfc_trans_allocate): Convert result to target type.
* cp-objcp-common.c (cxx_get_alias_set): Pointers to
pointer-to-member structures shall have alias set zero as well.

From-SVN: r127647
gcc/cp/ChangeLog
gcc/cp/call.c
gcc/cp/cp-objcp-common.c
gcc/cp/except.c
gcc/cp/init.c
gcc/cp/typeck.c