[Bug c++/88419] [9 Regression] [ICE] "Same canonical type node for different types" for CTAD in noexcept

mpolacek at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Sun Dec 9 17:30:00 GMT 2018


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

--- Comment #2 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
But not sure if it's a regression: 7/8/9 ICEs whereas 

$ xg++-6 -c 88419.C -std=c++17
88419.C:5:48: error: expected constructor, destructor, or type conversion
before ‘;’ token
   template<class R> ref_view(R&) -> ref_view<R>;
                                                ^
88419.C:9:33: error: missing template arguments before ‘{’ token
       noexcept(noexcept(ref_view{r}));
                                 ^
88419.C:9:33: error: expected ‘)’ before ‘{’ token
88419.C:9:33: error: expected ‘)’ before ‘{’ token
88419.C:9:36: error: expected unqualified-id before ‘)’ token
       noexcept(noexcept(ref_view{r}));
                                    ^
88419.C: In member function ‘auto ref_fn::operator()(R) const’:
88419.C:9:35: error: expected ‘;’ before ‘}’ token
       noexcept(noexcept(ref_view{r}));
                                   ^
88419.C: At global scope:
88419.C:18:38: error: missing template arguments before ‘{’ token
       noexcept(noexcept(indirect_view{r}));
                                      ^
88419.C:18:38: error: expected ‘)’ before ‘{’ token
88419.C:18:38: error: expected ‘)’ before ‘{’ token
88419.C:18:41: error: expected unqualified-id before ‘)’ token
       noexcept(noexcept(indirect_view{r}));
                                         ^
88419.C: In member function ‘auto indirect_fn::operator()(R) const’:
88419.C:18:40: error: expected ‘;’ before ‘}’ token
       noexcept(noexcept(indirect_view{r}));
                                        ^


More information about the Gcc-bugs mailing list