]> granicus.if.org Git - clang/commitdiff
Break out ssize_t test from Sema/format-strings-fixit.c
authorHans Wennborg <hans@hanshq.net>
Wed, 19 Oct 2011 07:55:50 +0000 (07:55 +0000)
committerHans Wennborg <hans@hanshq.net>
Wed, 19 Oct 2011 07:55:50 +0000 (07:55 +0000)
Move to a separate test that sets a specific target triple
so that the type of ssize_t is known.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142481 91177308-0d34-0410-b5e6-96231b3b80d8

test/Sema/format-strings-fixit-ssize_t.c [new file with mode: 0644]
test/Sema/format-strings-fixit.c

diff --git a/test/Sema/format-strings-fixit-ssize_t.c b/test/Sema/format-strings-fixit-ssize_t.c
new file mode 100644 (file)
index 0000000..5208a29
--- /dev/null
@@ -0,0 +1,18 @@
+// RUN: cp %s %t
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -pedantic -Wall -fixit %t
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fsyntax-only -pedantic -Wall -Werror %t
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -E -o - %t | FileCheck %s
+
+/* This is a test of the various code modification hints that are
+   provided as part of warning or extension diagnostics. All of the
+   warnings will be fixed by -fixit, and the resulting file should
+   compile cleanly with -Werror -pedantic. */
+
+int printf(char const *, ...);
+
+void test() {
+  typedef signed long int ssize_t;
+  printf("%f", (ssize_t) 42);
+}
+
+// CHECK: printf("%zd", (ssize_t) 42);
index ca9d934002bd407f87a7954aaa4706cd6c1aebd1..e87d8acef5696b86f9a91d0aa0d7e5620ab3db03 100644 (file)
@@ -48,14 +48,12 @@ void test() {
   printf("%X", val);
 
   typedef __SIZE_TYPE__ size_t;
-  typedef signed long int ssize_t; // FIXME: Figure out the right typedef.
   typedef __INTMAX_TYPE__ intmax_t;
   typedef __UINTMAX_TYPE__ uintmax_t;
   typedef __PTRDIFF_TYPE__ ptrdiff_t;
 
   // size_t, etc.
   printf("%f", (size_t) 42);
-  //printf("%f", (ssize_t) 42);
   printf("%f", (intmax_t) 42);
   printf("%f", (uintmax_t) 42);
   printf("%f", (ptrdiff_t) 42);