[C++ PATCH] Add test for c++/67533 (or not?)
Marek Polacek
polacek@redhat.com
Sun Jun 9 23:37:00 GMT 2019
This testcase used to ICE but was fixed by r259067. We now issue
67533.C:5:26: error: conversion from âvoidâ to non-scalar type âTlsâ requested
5 | thread_local Tls mytls = mytls; // { dg-error "" }
| ^~~~~
whereas clang++ and icc compile it. However, the test uses a reserved identifier
([lex.name]/3), and I think the error is fine.
Do you think it's worth adding this test? I thought so, just to check we don't
ICE, but who uses a mangled name as an identifier?!
Tested x86_64-linux, ok for trunk?
2019-06-09 Marek Polacek <polacek@redhat.com>
PR c++/67533
* g++.dg/tls/thread_local-ice5.C: New test.
diff --git gcc/testsuite/g++.dg/tls/thread_local-ice5.C gcc/testsuite/g++.dg/tls/thread_local-ice5.C
new file mode 100644
index 00000000000..4147c322e7b
--- /dev/null
+++ gcc/testsuite/g++.dg/tls/thread_local-ice5.C
@@ -0,0 +1,7 @@
+// PR c++/67533
+// { dg-do compile { target c++11 } }
+// { dg-require-effective-target tls }
+
+struct Tls {};
+void _ZTW5mytls();
+thread_local Tls mytls = mytls; // { dg-error "" }
More information about the Gcc-patches
mailing list