From 8de8c36fad66c03a2335e5417d53d5be77ffa662 Mon Sep 17 00:00:00 2001
From: Daniel Dunbar <daniel@zuster.org>
Date: Fri, 24 Oct 2008 08:39:46 +0000
Subject: [PATCH] Use #define trickery to de-XFAIL test/Coverage/codegen-next.m
 while still getting coverage for non-IRgen cases.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58082 91177308-0d34-0410-b5e6-96231b3b80d8
---
 test/Coverage/codegen-next.m             |  8 +++++---
 test/Coverage/objc-language-features.inc | 10 +++++++---
 2 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/test/Coverage/codegen-next.m b/test/Coverage/codegen-next.m
index 74df555d108..1a3f05049ff 100644
--- a/test/Coverage/codegen-next.m
+++ b/test/Coverage/codegen-next.m
@@ -1,5 +1,7 @@
-// RUN: clang -fnext-runtime -emit-llvm -o %t %s &&
-// RUN: clang -g -fnext-runtime -emit-llvm -o %t %s
-// XFAIL
+// RUN: clang -DIRGENABLE -fnext-runtime -emit-llvm -o %t %s &&
+// RUN: clang -DIRGENABLE -g -fnext-runtime -emit-llvm -o %t %s &&
+
+// FIXME: Remove IRGENABLE when possible.
+// RUN: ! clang -fnext-runtime -emit-llvm -o %t %s
 
 #include "objc-language-features.inc"
diff --git a/test/Coverage/objc-language-features.inc b/test/Coverage/objc-language-features.inc
index e060d032ce6..0e6237e0125 100644
--- a/test/Coverage/objc-language-features.inc
+++ b/test/Coverage/objc-language-features.inc
@@ -30,11 +30,13 @@
   [super fm0];
 }
 -(void) im0 {
-  char *s0 = __func__;
-  char *s1 = __FUNCTION__;
-  char *s2 = __PRETTY_FUNCTION__;
+  const char *s0 = __func__;
+  const char *s1 = __FUNCTION__;
+  const char *s2 = __PRETTY_FUNCTION__;
   [super im0];
+#ifndef IRGENABLE
   int x = super.p0;
+#endif
 }
 -(void) im1: (int) x, ... {
 }
@@ -50,8 +52,10 @@
 @end
 
 int f0(id x) {
+#ifndef IRGENABLE
   @synchronized(x) {
   }
+#endif
 
   @try {
     @throw x;
-- 
GitLab