27 lines
		
	
	
		
			555 B
		
	
	
	
		
			C++
		
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			555 B
		
	
	
	
		
			C++
		
	
	
	
// RUN: %clang_cc1 %s -fsyntax-only -Wno-unused-value -Wmicrosoft -verify -fms-extensions
 | 
						|
// expected-no-diagnostics
 | 
						|
 | 
						|
// Wide character predefined identifiers
 | 
						|
#define _STR2WSTR(str) L##str
 | 
						|
#define STR2WSTR(str) _STR2WSTR(str)
 | 
						|
void abcdefghi12(void) {
 | 
						|
 const wchar_t (*ss)[12] = &STR2WSTR(__FUNCTION__);
 | 
						|
 static int arr[sizeof(STR2WSTR(__FUNCTION__))==12*sizeof(wchar_t) ? 1 : -1];
 | 
						|
}
 | 
						|
 | 
						|
namespace PR13206 {
 | 
						|
void foo(const wchar_t *);
 | 
						|
 | 
						|
template<class T> class A {
 | 
						|
public:
 | 
						|
 void method() {
 | 
						|
  foo(L__FUNCTION__);
 | 
						|
 }
 | 
						|
};
 | 
						|
 | 
						|
void bar() {
 | 
						|
 A<int> x;
 | 
						|
 x.method();
 | 
						|
}
 | 
						|
}
 |