X-Git-Url: https://git.tld-linux.org/?p=packages%2Fgcc.git;a=blobdiff_plain;f=pr88419-revert.patch;fp=pr88419-revert.patch;h=0000000000000000000000000000000000000000;hp=a8a06006240a24ede81b0af22734a8d2a1e0dc05;hb=a2aa0cd5505f67b90395c99326385bf65ff68486;hpb=ecdc76abc13cc406409b8864ff66348994bf6acf diff --git a/pr88419-revert.patch b/pr88419-revert.patch deleted file mode 100644 index a8a0600..0000000 --- a/pr88419-revert.patch +++ /dev/null @@ -1,47 +0,0 @@ -# DP: Revert the fix for PC c++/88419, causing PR c++/89906. - -2019-03-08 Jason Merrill - - PR c++/88419 - C++17 ICE with class template arg deduction. - * pt.c (make_template_placeholder): Set TYPE_CANONICAL after - CLASS_PLACEHOLDER_TEMPLATE. - ---- a/gcc/cp/pt.c -+++ b/gcc/cp/pt.c -@@ -26002,10 +26002,8 @@ - tree - make_template_placeholder (tree tmpl) - { -- tree t = make_auto_1 (DECL_NAME (tmpl), false); -+ tree t = make_auto_1 (DECL_NAME (tmpl), true); - CLASS_PLACEHOLDER_TEMPLATE (t) = tmpl; -- /* Our canonical type depends on the placeholder. */ -- TYPE_CANONICAL (t) = canonical_type_parameter (t); - return t; - } - ---- a/gcc/testsuite/g++.dg/cpp1z/class-deduction62.C -+++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction62.C -@@ -1,22 +0,0 @@ --// PR c++/88419 --// { dg-do compile { target c++17 } } -- --template struct ref_view { -- template ref_view(T&&); --}; -- --template ref_view(R&) -> ref_view; -- --struct ref_fn { -- template auto operator()(R r) const -- noexcept(noexcept(ref_view{r})); --}; -- --template struct indirect_view { -- indirect_view(R); --}; -- --struct indirect_fn { -- template auto operator()(R r) const -- noexcept(noexcept(indirect_view{r})); --};