1 // RUN: %clang_cc1 %s -emit-llvm -triple %itanium_abi_triple -o - | FileCheck %s
2 // rdar: //8620524
3 // PR7851
4 struct string {
5   string (const string& );
6   string ();
7   ~string();
8 };
9 
10 string operator + (char ch, const string&);
11 
12 template <class T>
13 void IntToString(T a)
14 {
15  string result;
16  T digit;
17  char((digit < 10 ? '0' : 'a') + digit) + result;
18 }
19 
20 int main() {
21 // CHECK-LABEL: define linkonce_odr {{.*}}void @_Z11IntToStringIcEvT_(
22   IntToString('a');
23 }
24 
25