[asan][test] Fix SED issues with macOS (BSD)

SED differs between GNU and BSD in handling semicolon and the use of
'\n' in regex patterns. For macOS we can't use these GNU extensions.

rdar://102686948

Differential Revision: https://reviews.llvm.org/D138824

GitOrigin-RevId: 87d0ff91176221894604aa07fc0e2b8492140f7d
diff --git a/test/asan/TestCases/Darwin/interface_symbols_darwin.cpp b/test/asan/TestCases/Darwin/interface_symbols_darwin.cpp
index 9b25b00..2cedbc7 100644
--- a/test/asan/TestCases/Darwin/interface_symbols_darwin.cpp
+++ b/test/asan/TestCases/Darwin/interface_symbols_darwin.cpp
@@ -19,7 +19,15 @@
 // RUN:  | sed -e "s/__asan_version_mismatch_check_v[0-9]+/__asan_version_mismatch_check/" \
 // RUN:  > %t.exports
 //
-// RUN: sed ':a;N;$!ba;s/([\n ]*/(/g'                                             \
+// note: SED differs between GNU and BSD in handling semicolon and the use of
+//       '\n' in regex patterns. For macOS we must change this GNU syntax:
+//           sed -e ':a' -e 'N' -e '$!ba'
+//       to a form that both GNU and BSD can agree upon (below).
+//
+// RUN:  sed -e ':a' -e 'N' -e '$!ba'                                             \
+// RUN:      -e 's/ //g'                                                          \
+// RUN:      -e ':b' -e 's/\n\n/\n/g' -e 'tb'                                     \
+// RUN:      -e 's/(\n/(/g'                                                       \
 // RUN:  %t.asan_interface.inc                                                    \
 // RUN:  %p/../../../../lib/ubsan/ubsan_interface.inc                             \
 // RUN:  %p/../../../../lib/sanitizer_common/sanitizer_common_interface.inc       \