aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaolo Carlini <paolo.carlini@oracle.com>2018-02-05 11:15:55 +0000
committerPaolo Carlini <paolo@gcc.gnu.org>2018-02-05 11:15:55 +0000
commit865166c80e0c41faaee1c4e59894246aa8672531 (patch)
treeaf146a9abe33cb5b830a15620e0cc800d2d70292
parent4c4f3c3fefc61ca5045a6c1d7592786e2cf57499 (diff)
downloadgcc-865166c80e0c41faaee1c4e59894246aa8672531.zip
gcc-865166c80e0c41faaee1c4e59894246aa8672531.tar.gz
gcc-865166c80e0c41faaee1c4e59894246aa8672531.tar.bz2
re PR c++/82782 (ICE: nested template alias and specialized template with auto template parameter)
2018-02-05 Paolo Carlini <paolo.carlini@oracle.com> PR c++/82782 * g++.dg/cpp1z/inline-var4.C: New. From-SVN: r257388
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/g++.dg/cpp1z/inline-var4.C18
2 files changed, 23 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 074e6ea..bed5534 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2018-02-05 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/82782
+ * g++.dg/cpp1z/inline-var4.C: New.
+
2018-02-05 Martin Liska <mliska@suse.cz>
* c-c++-common/asan/pointer-compare-1.c: Adjust ASAN_OPTIONS
diff --git a/gcc/testsuite/g++.dg/cpp1z/inline-var4.C b/gcc/testsuite/g++.dg/cpp1z/inline-var4.C
new file mode 100644
index 0000000..48563b3
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp1z/inline-var4.C
@@ -0,0 +1,18 @@
+// PR c++/82782
+// { dg-options -std=c++17 }
+
+template <const auto& Value>
+struct make_char_sequence;
+
+template <int N, const char (&StringLiteral)[N]>
+struct make_char_sequence<StringLiteral>
+{
+ using type = int;
+};
+
+template <const auto& StringLiteral>
+using make_char_sequence_t = typename make_char_sequence<StringLiteral>::type;
+
+inline constexpr char sample[] = "Sample";
+
+using X = make_char_sequence_t<sample>;