Are you sure this is an MSVC-compatible change?  MSVC allows late specified 
return types, and does so while delaying the parsing of the body.  Consider 
this test case, which cl accepts and clang -fno-delayed-template-parsing 
rejects:

    extern "C" int puts(const char *s);
    template <typename T>
    auto foo(T x) -> decltype(x) {
      ::bar();
      return x;
    }
    void bar() { puts("bar"); }
    int main() { return foo(0); }

http://llvm-reviews.chandlerc.com/D2053
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to