aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/lambda.c
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2019-02-21 20:47:43 +0000
committerJonathan Wakely <redi@gcc.gnu.org>2019-02-21 20:47:43 +0000
commitd331c5f10d5e6c9f41a24ff7cb7a8c6493790885 (patch)
treed6fc9993cacf0943455f6d6d497ad7b32d0fdd5f /gcc/cp/lambda.c
parentf43044a3d7856c6d8b88c706d1e078268e12f7af (diff)
downloadgcc-d331c5f10d5e6c9f41a24ff7cb7a8c6493790885.zip
gcc-d331c5f10d5e6c9f41a24ff7cb7a8c6493790885.tar.gz
gcc-d331c5f10d5e6c9f41a24ff7cb7a8c6493790885.tar.bz2
PR libstdc++/89416 fix __is_move_insertable trait
The common base class for __is_move_insertable and __is_copy_insertable instantiates both the copy and move tests, when only one is needed. The unneeded one might cause errors outside the immediate context. The solution used in this patch is to replace them with alias templates, which will only be instantiated as needed. PR libstdc++/89416 * include/bits/alloc_traits.h (__is_alloc_insertable_impl): Replace class template with class. Replace move and copy member types with member alias templates, so they are only instantiated when needed. (__is_copy_insertable, __is_move_insertable): Adjust base class. * testsuite/23_containers/vector/modifiers/push_back/89130.cc: Enable test for C++11/14/17 as well. * testsuite/23_containers/vector/modifiers/push_back/89416.cc: New test. From-SVN: r269075
Diffstat (limited to 'gcc/cp/lambda.c')
0 files changed, 0 insertions, 0 deletions