This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On 03/10/2016 05:58 PM, Patrick Palka wrote:
This patch reverses the behavior of process_outer_var_ref, so that we always implicitly capture a const variable if it's capturable, instead of always trying to first fold it to a constant. This behavior however is wrong too, and introduces a different but perhaps less important regression: if we implicitly capture by value a const object that is not actually odr-used within the body of the lambda, we may introduce a redundant call to its copy/move constructor, see pr70121-2.C.
In general I'm disinclined to trade one bug for another, and I'm skeptical that the different regression is less important; I imagine that most uses of const variables will be for their constant value rather than their address.
Jason
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |