The last two lines of the example read: ``` int j; auto x3 = []()->auto&& { return j; }; // OK: return type is int& ``` However `j` is not captured and the lambda doesn't have a default capture. The correct code should be: ``` int j; auto x3 = [&]()->auto&& { return j; }; // OK: return type is int& ^ ```