diff options
Diffstat (limited to 'test/Sema/ms_wide_predefined_expr.cpp')
-rw-r--r-- | test/Sema/ms_wide_predefined_expr.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/test/Sema/ms_wide_predefined_expr.cpp b/test/Sema/ms_wide_predefined_expr.cpp new file mode 100644 index 0000000..8e816e0 --- /dev/null +++ b/test/Sema/ms_wide_predefined_expr.cpp @@ -0,0 +1,25 @@ +// RUN: %clang_cc1 %s -fsyntax-only -Wno-unused-value -Wmicrosoft -verify -fms-extensions + +// 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(); +} +} |