1 2 3 4 5 6 7 8 9 10 11 12 13
// RUN: %llvmgxx -S %s -o - | llvm-as -o /dev/null struct Pass {} ; template<typename PassName> Pass *callDefaultCtor() { return new PassName(); } void foo(Pass *(*C)()); #include <string> bool foo(std::string &X) { return X.empty(); }