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

Martin Liška <marxin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
      Known to work|                            |5.3.0
           Keywords|                            |error-recovery,
                   |                            |ice-on-invalid-code
   Last reconfirmed|                            |2016-10-17
                 CC|                            |jason at gcc dot gnu.org,
                   |                            |marxin at gcc dot gnu.org
     Ever confirmed|0                           |1
            Summary|Segmentation fault with     |[5/6/7 Regression]
                   |'using' and generic lambda  |Segmentation fault with
                   |trailing return types       |'using' and generic lambda
                   |                            |trailing return types
   Target Milestone|---                         |5.5
      Known to fail|                            |5.4.0, 6.2.0, 7.0

--- Comment #1 from Martin Liška <marxin at gcc dot gnu.org> ---
Confirmed, started with r231713.

Error message with GCC 5.3.0:

pr78006.cpp: In substitution of ‘template<class auto:1> x(TFs&&
...)::<lambda(auto:1)> [with auto:1 = int]’:
pr78006.cpp:15:19:   required from here
pr78006.cpp:9:24: error: expansion pattern ‘void’ contains no argument packs
     return [](auto) -> rt { };    
                        ^
pr78006.cpp: In function ‘int main()’:
pr78006.cpp:15:19: error: no match for call to ‘(x(TFs&& ...) [with TFs =
{main()::<lambda(int)>}]::<lambda(auto:1)>) (int)’
     x([](int){})(0);    
                   ^
pr78006.cpp:15:19: note: candidate: rt (*)(auto:1) <conversion>
pr78006.cpp:15:19: note:   candidate expects 2 arguments, 2 provided
pr78006.cpp:9:24: note: candidate: template<class auto:1> x(TFs&&
...)::<lambda(auto:1)> [with auto:1 = auto:1; TFs = {main()::<lambda(int)>}]
     return [](auto) -> rt { };    
                        ^
pr78006.cpp:9:24: note:   substitution of deduced template arguments resulted
in errors seen above

Reply via email to