Visual Studioで特定の条件でラムダ式がビルドエラーを起こす。
#include <forward_list>
using namespace std;
int main()
{
[]{
forward_list<int> list;
int value;
auto &ref = list;
list.remove_if(
[](const remove_reference_t<decltype(ref)>::value_type &value)
{ return value < 0; });
}();
}
Visual Studio Community 2015でビルドしたところ下記のようなエラーが出ました。
error C3493: 既定のキャプチャ モードが指定されていないため、'value' を暗黙的にキャプチャできません
wandbox(http://melpon.org/wandbox)でclang、gccを使ってビルドした限りでは
エラーは出ませんでした。
なぜVisual Studioだけエラーが出るのか教えてください。