From f73fbd2dac42b6f9e9c12de0134bce1298763894 Mon Sep 17 00:00:00 2001
From: Ben Gamari <ben@smart-cactus.org>
Date: Thu, 7 Nov 2019 10:09:38 -0500
Subject: [PATCH] testsuite: Ignore stderr in PartialDownsweep

As described in #17449, PartialDownsweep is currently fragile due to its
dependence on the error messages produced by the C preprocessor. To eliminate
this dependence we simply ignore stderr output, instead relying on the fact
that the test will exit with a non-zero exit code on failure.

Fixes #17449.
---
 .../downsweep/PartialDownsweep.darwin.stderr     | 16 ----------------
 .../ghc-api/downsweep/PartialDownsweep.stderr    | 16 ----------------
 testsuite/tests/ghc-api/downsweep/all.T          |  4 +---
 3 files changed, 1 insertion(+), 35 deletions(-)
 delete mode 100644 testsuite/tests/ghc-api/downsweep/PartialDownsweep.darwin.stderr
 delete mode 100644 testsuite/tests/ghc-api/downsweep/PartialDownsweep.stderr

diff --git a/testsuite/tests/ghc-api/downsweep/PartialDownsweep.darwin.stderr b/testsuite/tests/ghc-api/downsweep/PartialDownsweep.darwin.stderr
deleted file mode 100644
index c9cd0f216de2..000000000000
--- a/testsuite/tests/ghc-api/downsweep/PartialDownsweep.darwin.stderr
+++ /dev/null
@@ -1,16 +0,0 @@
-== Parse error in export list
-== Parse error in export list with bypass module
-== Parse error in import list
-== CPP preprocessor error
-
-B.hs:2:2:  #elif without #if
-     #elif <- cpp error here
- ^
-1 error generated.
-== CPP preprocessor error with bypass
-
-B.hs:2:2:  #elif without #if
-     #elif <- cpp error here
- ^
-1 error generated.
-== Import error
diff --git a/testsuite/tests/ghc-api/downsweep/PartialDownsweep.stderr b/testsuite/tests/ghc-api/downsweep/PartialDownsweep.stderr
deleted file mode 100644
index 14c1b6c19a8c..000000000000
--- a/testsuite/tests/ghc-api/downsweep/PartialDownsweep.stderr
+++ /dev/null
@@ -1,16 +0,0 @@
-== Parse error in export list
-== Parse error in export list with bypass module
-== Parse error in import list
-== CPP preprocessor error
-
-B.hs:2:0: error:
-     error: #elif without #if
-     #elif <- cpp error here
-     
-== CPP preprocessor error with bypass
-
-B.hs:2:0: error:
-     error: #elif without #if
-     #elif <- cpp error here
-     
-== Import error
diff --git a/testsuite/tests/ghc-api/downsweep/all.T b/testsuite/tests/ghc-api/downsweep/all.T
index 7882d7733416..2265997604d1 100644
--- a/testsuite/tests/ghc-api/downsweep/all.T
+++ b/testsuite/tests/ghc-api/downsweep/all.T
@@ -1,8 +1,6 @@
 test('PartialDownsweep',
      [ extra_run_opts('"' + config.libdir + '"')
-     , when(opsys('darwin'),
-             use_specs({'stderr' : 'PartialDownsweep.darwin.stderr'})
-           )
+     , ignore_stderr
      ],
      compile_and_run,
      ['-package ghc'])
-- 
GitLab