[Bug c++/84368] [8 Regression] return type of generic lambda in variadic lambda in template is not deduced

2018-02-15 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84368

--- Comment #6 from Jason Merrill  ---
Author: jason
Date: Thu Feb 15 18:15:32 2018
New Revision: 257699

URL: https://gcc.gnu.org/viewcvs?rev=257699=gcc=rev
Log:
PR c++/84368 - wrong error with local variable in variadic lambda.

* pt.c (tsubst_pack_expansion): Fix handling of non-packs in
local_specializations.

Added:
trunk/gcc/testsuite/g++.dg/cpp1y/lambda-generic-variadic14.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/pt.c

[Bug c++/84368] [8 Regression] return type of generic lambda in variadic lambda in template is not deduced

2018-02-15 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84368

Jason Merrill  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #5 from Jason Merrill  ---
Fixed.

[Bug c++/84368] [8 Regression] return type of generic lambda in variadic lambda in template is not deduced

2018-02-15 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84368

Jason Merrill  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2018-02-15
   Assignee|unassigned at gcc dot gnu.org  |jason at gcc dot gnu.org
 Ever confirmed|0   |1

[Bug c++/84368] [8 Regression] return type of generic lambda in variadic lambda in template is not deduced

2018-02-14 Thread benni.buch at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84368

--- Comment #4 from Benjamin Buch  ---
I can still reproduce it on R257659:

$ g++ -std=c++14 main.cpp 
main.cpp: In instantiation of 'foo(T ...) [with T = {int}]:: [with auto:1 = {int}]':
main.cpp:9:6:   required from 'void foo(T ...) [with T = {int}]'
main.cpp:13:10:   required from here
main.cpp:8:17: error: use of 'bar' before deduction of 'auto'
 sink(bar(v, T{}) ...);
  ~~~^~~~
$ g++ --version
g++ (GCC) 8.0.1 20180214 (experimental)
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


GCC trunk compiled on Intel(R) Core(TM) i7-6700K CPU, Ubuntu 16.04 (64 Bit)
with GCC 6.3:
$ g++-6 --version
g++-6 (Ubuntu/Linaro 6.3.0-18ubuntu2~16.04) 6.3.0 20170519
Copyright (C) 2016 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

[Bug c++/84368] [8 Regression] return type of generic lambda in variadic lambda in template is not deduced

2018-02-14 Thread benni.buch at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84368

--- Comment #3 from Benjamin Buch  ---
I'm on git commit a5283f322810189a156a0fb080bf6d65e6f7970e which should be
R257627.


I used:

$ git svn find-rev $(git log --max-count 1 --pretty=format:%H)
Migrating from a git-svn v1 layout...
Data from a previous version of git-svn exists, but
.git/svn
(required for this version (2.7.4) of git-svn) does not exist.
Done migrating from a git-svn v1 layout
257627


Hope this is the correct way to get the revision number.

I will check if I can reproduce it with current trunk again.

[Bug c++/84368] [8 Regression] return type of generic lambda in variadic lambda in template is not deduced

2018-02-14 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84368

Jakub Jelinek  changed:

   What|Removed |Added

 CC||jason at gcc dot gnu.org

--- Comment #2 from Jakub Jelinek  ---
Actually, on another box I can reproduce it.  Wonder if the order of
instantiation of pending templates isn't depending on some unstable sort or
something similar, this is a second PR in a short time where it can't be
reproduced in all compilers I have around.

[Bug c++/84368] [8 Regression] return type of generic lambda in variadic lambda in template is not deduced

2018-02-14 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84368

Jakub Jelinek  changed:

   What|Removed |Added

 CC||jakub at gcc dot gnu.org

--- Comment #1 from Jakub Jelinek  ---
Can't reproduce with r257093 and onwards, it is just accepted.
Before that it just ICEd, starting with r251433.  Before that it has been
accepted too.

[Bug c++/84368] [8 Regression] return type of generic lambda in variadic lambda in template is not deduced

2018-02-14 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84368

Richard Biener  changed:

   What|Removed |Added

   Keywords||rejects-valid
   Target Milestone|--- |8.0