https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83814
--- Comment #13 from David Malcolm <dmalcolm at gcc dot gnu.org> --- Author: dmalcolm Date: Wed Jan 17 17:51:25 2018 New Revision: 256804 URL: https://gcc.gnu.org/viewcvs?rev=256804&root=gcc&view=rev Log: C++: Fix crash in warn_for_memset within templates (PR c++/83814) gcc/c-family/ChangeLog: PR c++/83814 * c-common.c (fold_for_warn): Move to c/c-fold.c and cp/expr.c. gcc/c/ChangeLog: PR c++/83814 * c-fold.c (fold_for_warn): Move from c-common.c, reducing to just the C part. gcc/cp/ChangeLog: PR c++/83814 * expr.c (fold_for_warn): Move from c-common.c, reducing to just the C++ part. If processing a template, call fold_non_dependent_expr rather than fully folding. gcc/testsuite/ChangeLog: PR c++/83814 PR c++/83902 * g++.dg/wrappers/pr83814.C: New test case. * g++.dg/wrappers/pr83902.C: New test case. Added: trunk/gcc/testsuite/g++.dg/wrappers/pr83814.C trunk/gcc/testsuite/g++.dg/wrappers/pr83902.C Modified: trunk/gcc/c-family/ChangeLog trunk/gcc/c-family/c-common.c trunk/gcc/c/ChangeLog trunk/gcc/c/c-fold.c trunk/gcc/cp/ChangeLog trunk/gcc/cp/expr.c trunk/gcc/testsuite/ChangeLog