diff options
author | Jason Merrill <jason@yorick.cygnus.com> | 1998-03-19 21:37:25 +0000 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 1998-03-19 16:37:25 -0500 |
commit | 4d50dd69019ac346d21a4f4b4fd512df47651267 (patch) | |
tree | 0be99e31dd5e1138ae324f0e82d6c3f2a689cb50 /gcc | |
parent | 09b4ce121be408d2034b49ad42fdc16e08b1a9af (diff) | |
download | gcc-4d50dd69019ac346d21a4f4b4fd512df47651267.zip gcc-4d50dd69019ac346d21a4f4b4fd512df47651267.tar.gz gcc-4d50dd69019ac346d21a4f4b4fd512df47651267.tar.bz2 |
* call.c (standard_conversion): Handle A* -> const A* properly.
From-SVN: r18718
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/cp/ChangeLog | 2 | ||||
-rw-r--r-- | gcc/cp/call.c | 7 |
2 files changed, 7 insertions, 2 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index a586432..b70bef1 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,7 @@ Thu Mar 19 11:51:58 1998 Jason Merrill <jason@yorick.cygnus.com> + * call.c (standard_conversion): Handle A* -> const A* properly. + * pt.c (get_bindings_real): Rename from get_bindings. Add check_rettype parm. (get_bindings): Pass 1. diff --git a/gcc/cp/call.c b/gcc/cp/call.c index 16a6f9f..c74d1f4 100644 --- a/gcc/cp/call.c +++ b/gcc/cp/call.c @@ -782,8 +782,11 @@ standard_conversion (to, from, expr) enum tree_code ufcode = TREE_CODE (TREE_TYPE (from)); enum tree_code utcode = TREE_CODE (TREE_TYPE (to)); - if (utcode == VOID_TYPE && ufcode != OFFSET_TYPE - && ufcode != FUNCTION_TYPE) + if (comptypes (TYPE_MAIN_VARIANT (TREE_TYPE (from)), + TYPE_MAIN_VARIANT (TREE_TYPE (to)), 1)) + ; + else if (utcode == VOID_TYPE && ufcode != OFFSET_TYPE + && ufcode != FUNCTION_TYPE) { from = build_pointer_type (cp_build_type_variant (void_type_node, |