overloaded-name.cpp revision 7ad5d421d9f12bd287aa17fdb00e0f4d5971d76f
17ad5d421d9f12bd287aa17fdb00e0f4d5971d76fDouglas Gregor// RUN: %clang_cc1 -fsyntax-only -verify %s 27ad5d421d9f12bd287aa17fdb00e0f4d5971d76fDouglas Gregor 37ad5d421d9f12bd287aa17fdb00e0f4d5971d76fDouglas Gregorint ovl(int); 47ad5d421d9f12bd287aa17fdb00e0f4d5971d76fDouglas Gregorfloat ovl(float); 57ad5d421d9f12bd287aa17fdb00e0f4d5971d76fDouglas Gregor 67ad5d421d9f12bd287aa17fdb00e0f4d5971d76fDouglas Gregortemplate<typename T> T ovl(T); 77ad5d421d9f12bd287aa17fdb00e0f4d5971d76fDouglas Gregor 87ad5d421d9f12bd287aa17fdb00e0f4d5971d76fDouglas Gregorvoid test(bool b) { 97ad5d421d9f12bd287aa17fdb00e0f4d5971d76fDouglas Gregor (void)((void)0, ovl); // expected-error{{cannot resolve overloaded function from context}} 107ad5d421d9f12bd287aa17fdb00e0f4d5971d76fDouglas Gregor // PR7863 117ad5d421d9f12bd287aa17fdb00e0f4d5971d76fDouglas Gregor (void)(b? ovl : &ovl); // expected-error{{cannot resolve overloaded function from context}} 127ad5d421d9f12bd287aa17fdb00e0f4d5971d76fDouglas Gregor (void)(b? ovl<float> : &ovl); // expected-error{{cannot resolve overloaded function from context}} 137ad5d421d9f12bd287aa17fdb00e0f4d5971d76fDouglas Gregor (void)(b? ovl<float> : ovl<float>); 147ad5d421d9f12bd287aa17fdb00e0f4d5971d76fDouglas Gregor} 15