https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58753

--- Comment #12 from Paolo Carlini <paolo.carlini at oracle dot com> ---
It is in Comment #2, though. In fact, I *only* noticed that one when I asked ;)
Anyway, I was looking a bit into the other bug and interestingly a rather rough
draft I have got appears to fix all these issues at once without causing
regressions:

Index: init.c
===================================================================
--- init.c      (revision 210459)
+++ init.c      (working copy)
@@ -644,7 +644,8 @@
                    || (TREE_CODE (init) == TREE_LIST
                        && DIRECT_LIST_INIT_P (TREE_VALUE (init))))
                   && (CP_AGGREGATE_TYPE_P (type)
-                      || is_std_init_list (type)))))
+                      || is_std_init_list (type)))
+              || DIRECT_LIST_INIT_P (init)))
     {
       /* With references and list-initialization, we need to deal with
         extending temporary lifetimes.  12.2p5: "A temporary bound to a

Reply via email to