summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice25.C
blob: 1a33fb1636447b83644950b29bff93cf1ce9aa73 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// PR c++/83204
// { dg-do compile { target c++11 } }

int rand();

template<typename T>
struct s
{
    int count() { return rand(); }
};

template<typename v>
void f(s<v> a)
{
    int const x = a.count();
    int r = 0;
    auto l = [&](int& r)
    {
        for(int y = 0, yend = (x); y < yend; ++y)
        {
            r += y;
        }
    };
    l(r);
}

template void f(s<float>);