This made the Chromium build sad. For example: http://build.chromium.org/p/chromium.fyi/builders/ClangToTWin/builds/3092/steps/compile/logs/stdio
Reduction: $ clang -cc1 -triple i686-pc-windows-msvc18.0.0 -w -fms-extensions -fms-compatibility -fms-compatibility-version=18.0 -std=c++11 -fdelayed-template-parsing a.ii template <class C, int (C::*M)(int *, const int &, int &, int &)> void JSMethod(char *, char *, int); class A { int printd(int *, const int &, int &, int &); int printd_info; void printd() { JSMethod<A, &A::printd>("", "", printd_info); } }; On Thu, Sep 10, 2015 at 2:52 PM, David Majnemer via cfe-commits <cfe-commits@lists.llvm.org> wrote: > Author: majnemer > Date: Thu Sep 10 16:52:00 2015 > New Revision: 247346 > > URL: http://llvm.org/viewvc/llvm-project?rev=247346&view=rev > Log: > [MS ABI] Make member pointers return true for isIncompleteType > > The type of a member pointer is incomplete if it has no inheritance > model. This lets us reuse more general logic already embedded in clang. _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits