efriedma added a comment. The difference between returning true and false here is just the way error recovery works: when we return true, we know the type is invalid, so we suppress it, and subsequent errors involving the declaration. Example (Objective-C++) where we currently print two errors:
@class NSObject; template<typename T> struct C { static T f(); }; int g() { NSObject *x = C<NSObject>::f(); } https://reviews.llvm.org/D32759 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits