This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/22369] C++ produces mis-matched types with pointers to member functions
- From: "rguenth at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 20 Aug 2007 12:32:14 -0000
- Subject: [Bug c++/22369] C++ produces mis-matched types with pointers to member functions
- References: <bug-22369-6528@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #5 from rguenth at gcc dot gnu dot org 2007-08-20 12:32 -------
Subject: Bug 22369
Author: rguenth
Date: Mon Aug 20 12:31:44 2007
New Revision: 127647
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=127647
Log:
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.
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/call.c
trunk/gcc/cp/cp-objcp-common.c
trunk/gcc/cp/except.c
trunk/gcc/cp/init.c
trunk/gcc/cp/typeck.c
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22369