]> granicus.if.org Git - clang/commitdiff
Migrate wchar-const.c with fixes and FileCheck from llvm/test/FrontendC.
authorEric Christopher <echristo@apple.com>
Tue, 26 Jul 2011 18:39:16 +0000 (18:39 +0000)
committerEric Christopher <echristo@apple.com>
Tue, 26 Jul 2011 18:39:16 +0000 (18:39 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136114 91177308-0d34-0410-b5e6-96231b3b80d8

test/CodeGen/wchar-const.c [new file with mode: 0644]

diff --git a/test/CodeGen/wchar-const.c b/test/CodeGen/wchar-const.c
new file mode 100644 (file)
index 0000000..bedaec9
--- /dev/null
@@ -0,0 +1,22 @@
+// RUN: %clang_cc1 -emit-llvm %s -o - | FileCheck %s
+// This should pass for any endianness combination of host and target.
+
+// This bit is taken from Sema/wchar.c so we can avoid the wchar.h include.
+typedef __WCHAR_TYPE__ wchar_t;
+#if defined(_WIN32) || defined(_M_IX86) || defined(__CYGWIN__) \
+  || defined(_M_X64) || defined(SHORT_WCHAR)
+  #define WCHAR_T_TYPE unsigned short
+#elif defined(__sun) || defined(__AuroraUX__)
+  #define WCHAR_T_TYPE long
+#else /* Solaris or AuroraUX. */
+  #define WCHAR_T_TYPE int
+#endif
+
+
+// CHECK: @.str = private unnamed_addr constant [72 x i8] c"
+extern void foo(const wchar_t* p);
+int main (int argc, const char * argv[])
+{
+ foo(L"This is some text");
+ return 0;
+}