diff options
author | Igor Pashev <pashev.igor@gmail.com> | 2019-11-18 15:53:29 +0300 |
---|---|---|
committer | Igor Pashev <pashev.igor@gmail.com> | 2019-11-18 15:53:29 +0300 |
commit | 8f6c4b0033c72f8ac14694c419a99458339dd6a9 (patch) | |
tree | 06c106e622a58100aa85a381b9b65d222b076df4 /debian/patches/pr78774.diff | |
parent | 42156b5190f4fa150e1fab6777eb81e69d4db8c9 (diff) | |
download | gcc-9-debian.tar.gz |
Import gcc-9 (9.2.1-19)debian/9.2.1-19debian
Diffstat (limited to 'debian/patches/pr78774.diff')
-rw-r--r-- | debian/patches/pr78774.diff | 48 |
1 files changed, 0 insertions, 48 deletions
diff --git a/debian/patches/pr78774.diff b/debian/patches/pr78774.diff deleted file mode 100644 index edbf219..0000000 --- a/debian/patches/pr78774.diff +++ /dev/null @@ -1,48 +0,0 @@ -# DP: Fix PR c++/78774, proposed for the gcc-6-branch - -PR c++/78774 - [6/7 Regression] ICE in constexpr string literals and templates - -gcc/cp/ChangeLog: - - PR c++/78774 - * pt.c (convert_template_argument): Avoid assuming operand type - is non-null since that of SCOPE_REF is not. - -gcc/testsuite/ChangeLog: - - PR c++/78774 - * g++.dg/cpp1y/pr78774.C: New test. - -Index: b/src/gcc/cp/pt.c -=================================================================== ---- a/src/gcc/cp/pt.c -+++ b/src/gcc/cp/pt.c -@@ -7281,9 +7281,11 @@ convert_template_argument (tree parm, - /* Reject template arguments that are references to built-in - functions with no library fallbacks. */ - const_tree inner = TREE_OPERAND (val, 0); -- if (TREE_CODE (TREE_TYPE (inner)) == REFERENCE_TYPE -- && TREE_CODE (TREE_TYPE (TREE_TYPE (inner))) == FUNCTION_TYPE -- && TREE_CODE (TREE_TYPE (inner)) == REFERENCE_TYPE -+ const_tree innertype = TREE_TYPE (inner); -+ if (innertype -+ && TREE_CODE (innertype) == REFERENCE_TYPE -+ && TREE_CODE (TREE_TYPE (innertype)) == FUNCTION_TYPE -+ && TREE_CODE (innertype) == REFERENCE_TYPE - && 0 < TREE_OPERAND_LENGTH (inner) - && reject_gcc_builtin (TREE_OPERAND (inner, 0))) - return error_mark_node; -Index: b/src/gcc/testsuite/g++.dg/cpp1y/pr78774.C -=================================================================== ---- /dev/null -+++ b/src/gcc/testsuite/g++.dg/cpp1y/pr78774.C -@@ -0,0 +1,9 @@ -+// PR c++/78774 - [6/7 Regression] ICE in constexpr string literals and -+// templates -+// { dg-do compile { target c++14 } } -+ -+template <int> struct ops { -+ template <int> struct A; -+ template <int *Ptr> using explode = typename A<*Ptr>::join; -+}; -+template <typename Ts> typename ops<'\0'>::explode<Ts::join>::type a; |