diff options
author | Marek Polacek <polacek@redhat.com> | 2019-09-23 17:37:54 +0000 |
---|---|---|
committer | Marek Polacek <mpolacek@gcc.gnu.org> | 2019-09-23 17:37:54 +0000 |
commit | 1a09197cb1bc05a71d1866d1220937289da02c5e (patch) | |
tree | aefb9cfa8c4542ee2235dc93fa2107880eaf40b1 /gcc/cp/cp-tree.h | |
parent | ba2b30dc9fa9190101b3eb7ae10415b54ca25e7a (diff) | |
download | gcc-1a09197cb1bc05a71d1866d1220937289da02c5e.zip gcc-1a09197cb1bc05a71d1866d1220937289da02c5e.tar.gz gcc-1a09197cb1bc05a71d1866d1220937289da02c5e.tar.bz2 |
PR c++/91844 - Implement CWG 2352, Similar types and reference binding.
* call.c (reference_related_p): Use similar_type_p instead of
same_type_p.
(reference_compatible_p): Update implementation to match CWG 2352.
* cp-tree.h (similar_type_p): Declare.
* typeck.c (similar_type_p): New.
* g++.dg/cpp0x/pr33930.C: Add dg-error.
* g++.dg/cpp0x/ref-bind1.C: New test.
* g++.dg/cpp0x/ref-bind2.C: New test.
* g++.dg/cpp0x/ref-bind3.C: New test.
* g++.old-deja/g++.pt/spec35.C: Remove dg-error.
From-SVN: r276058
Diffstat (limited to 'gcc/cp/cp-tree.h')
-rw-r--r-- | gcc/cp/cp-tree.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h index 6d217fc..9c0f394 100644 --- a/gcc/cp/cp-tree.h +++ b/gcc/cp/cp-tree.h @@ -7361,6 +7361,7 @@ enum { ce_derived, ce_type, ce_normal, ce_exact }; extern bool comp_except_specs (const_tree, const_tree, int); extern bool comptypes (tree, tree, int); extern bool same_type_ignoring_top_level_qualifiers_p (tree, tree); +extern bool similar_type_p (tree, tree); extern bool compparms (const_tree, const_tree); extern int comp_cv_qualification (const_tree, const_tree); extern int comp_cv_qualification (int, int); |