Вывод типа возврата с закрытой переменной-членом

Как было объяснено в этомВопросы и ответы вчераи g ++ 4.8, и Clang 3.3 правильно жалуются на приведенный ниже код с ошибкой типа «b_ не был объявлен в этой области»

#include <iostream>

class Test
{
public:
    Test(): b_(0) {}

    auto foo() const -> decltype(b_) // just leave out the -> decltype(b_) works with c++1y
    { 
        return b_;    
    }    
private:
    int b_;
};

int main() 
{
    Test t;
    std::cout << t.foo();
}

Перемещениеprivate раздел к началу определения класса устраняет ошибку и печатает 0.

Мой вопросЭта ошибка также исчезнет в C ++ 14 с вычетом возвращаемого типатак, чтобы я мог опуститьdecltype и мойprivate раздел в конце определения класса?

НОТА: Этона самом деле работает основываясь на ответе @JesseGood.

Ответы на вопрос(2)

Ваш ответ на вопрос