<pre style='margin:0'>
Jeremy Huddleston Sequoia (jeremyhu) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/f098928d76188f75732abe94a758f92bcd226d87">https://github.com/macports/macports-ports/commit/f098928d76188f75732abe94a758f92bcd226d87</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new f098928  clang-5.0: Fix building sanitizer runtimes against SDKs that come with Xcode 10
</span>f098928 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit f098928d76188f75732abe94a758f92bcd226d87
</span>Author: Jeremy Huddleston Sequoia <jeremyhu@macports.org>
AuthorDate: Mon Jul 23 09:56:17 2018 -0700

<span style='display:block; white-space:pre;color:#404040;'>    clang-5.0: Fix building sanitizer runtimes against SDKs that come with Xcode 10
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>
</span>---
 lang/llvm-5.0/Portfile                             |  2 +
 ...te-function-parameters-with-attribute-noe.patch | 62 ++++++++++++++++++++++
 ...nore-the-DISPATCH_NOESCAPE-if-not-defined.patch | 37 +++++++++++++
 3 files changed, 101 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-5.0/Portfile b/lang/llvm-5.0/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 2fa688f..b98e4d4 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/llvm-5.0/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-5.0/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -164,6 +164,8 @@ if {${subport} eq "clang-${llvm_version}"} {
</span>         1006-Fixup-libstdc-header-search-paths-for-older-versions.patch \
         1007-Fix-build-issues-pre-Lion-due-to-missing-a-strnlen-d.patch \
         1008-Fix-float.h-to-work-on-Snow-Leopard-and-earlier.patch \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+        2001-tsan-Annotate-function-parameters-with-attribute-noe.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        2002-Ignore-the-DISPATCH_NOESCAPE-if-not-defined.patch \
</span>         3001-Fix-local-and-iterator-when-building-with-Lion-and-n.patch \
         3002-Fix-missing-long-long-math-prototypes-when-using-the.patch \
         3003-implement-atomic-using-mutex-lock_guard-for-64b-ops-.patch \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-5.0/files/2001-tsan-Annotate-function-parameters-with-attribute-noe.patch b/lang/llvm-5.0/files/2001-tsan-Annotate-function-parameters-with-attribute-noe.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..e4023cb
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-5.0/files/2001-tsan-Annotate-function-parameters-with-attribute-noe.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,62 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 3ddb8e68894f46c67a72a9220922fc9fe417159a Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Akira Hatanaka <ahatanaka@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Thu, 21 Sep 2017 22:16:50 +0000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 2001/2002] [tsan] Annotate function parameters with attribute
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 'noescape'.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+This commit annotates the block parameters of the following functions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+declared in compiler-rt with 'noescape':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- dispatch_sync
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- dispatch_barrier_sync
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- dispatch_once
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- dispatch_apply
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+This is needed to commit the patch that adds support for 'noescape' in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+clang (see https://reviews.llvm.org/D32210) since these functions are
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+annotated with 'noescape' in the SDK header files.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Differential Revision: https://reviews.llvm.org/D32210
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@313929 91177308-0d34-0410-b5e6-96231b3b80d8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+(cherry picked from commit 0b01c05ec7545697a453b594f3b288e38d4c36cb)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lib/tsan/rtl/tsan_libdispatch_mac.cc | 8 +++++---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 5 insertions(+), 3 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_50/projects/compiler-rt/lib/tsan/rtl/tsan_libdispatch_mac.cc macports_release_50/projects/compiler-rt/lib/tsan/rtl/tsan_libdispatch_mac.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 8c759a3be..08b5af5c4 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_50/projects/compiler-rt/lib/tsan/rtl/tsan_libdispatch_mac.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_50/projects/compiler-rt/lib/tsan/rtl/tsan_libdispatch_mac.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -176,7 +176,8 @@ static void invoke_and_release_block(void *param) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define DISPATCH_INTERCEPT_SYNC_B(name, barrier)                             \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  TSAN_INTERCEPTOR(void, name, dispatch_queue_t q, dispatch_block_t block) { \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  TSAN_INTERCEPTOR(void, name, dispatch_queue_t q,                           \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                   DISPATCH_NOESCAPE dispatch_block_t block) {               \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     SCOPED_TSAN_INTERCEPTOR(name, q, block);                                 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     SCOPED_TSAN_INTERCEPTOR_USER_CALLBACK_START();                           \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     dispatch_block_t heap_block = Block_copy(block);                         \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -266,7 +267,7 @@ TSAN_INTERCEPTOR(void, dispatch_after_f, dispatch_time_t when,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // need to undefine the macro.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef dispatch_once
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ TSAN_INTERCEPTOR(void, dispatch_once, dispatch_once_t *predicate,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                 dispatch_block_t block) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                 DISPATCH_NOESCAPE dispatch_block_t block) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   SCOPED_INTERCEPTOR_RAW(dispatch_once, predicate, block);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   atomic_uint32_t *a = reinterpret_cast<atomic_uint32_t *>(predicate);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   u32 v = atomic_load(a, memory_order_acquire);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -476,7 +477,8 @@ TSAN_INTERCEPTOR(void, dispatch_source_set_registration_handler_f,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ TSAN_INTERCEPTOR(void, dispatch_apply, size_t iterations,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                 dispatch_queue_t queue, void (^block)(size_t)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                 dispatch_queue_t queue,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                 DISPATCH_NOESCAPE void (^block)(size_t)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   SCOPED_TSAN_INTERCEPTOR(dispatch_apply, iterations, queue, block);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   void *parent_to_child_sync = nullptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.18.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-5.0/files/2002-Ignore-the-DISPATCH_NOESCAPE-if-not-defined.patch b/lang/llvm-5.0/files/2002-Ignore-the-DISPATCH_NOESCAPE-if-not-defined.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..287fc97
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-5.0/files/2002-Ignore-the-DISPATCH_NOESCAPE-if-not-defined.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,37 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From dc4cc36019562a7c296ffa359673ce70fe4cc298 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Yi Kong <yikong@google.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Thu, 28 Dec 2017 23:06:24 +0000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 2002/2002] Ignore the DISPATCH_NOESCAPE if not defined
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+This macro is only defined after XCode 8, causing build breakage for
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build systems with prior versions. Ignore DISPATCH_NOESCAPE if not
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Differential Revision: https://reviews.llvm.org/D41601
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@321543 91177308-0d34-0410-b5e6-96231b3b80d8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+(cherry picked from commit b2e492beb7dee6983578da79ad2b79f102826ed2)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lib/tsan/rtl/tsan_libdispatch_mac.cc | 5 +++++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 5 insertions(+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_50/projects/compiler-rt/lib/tsan/rtl/tsan_libdispatch_mac.cc macports_release_50/projects/compiler-rt/lib/tsan/rtl/tsan_libdispatch_mac.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 08b5af5c4..45faf9350 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_50/projects/compiler-rt/lib/tsan/rtl/tsan_libdispatch_mac.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_50/projects/compiler-rt/lib/tsan/rtl/tsan_libdispatch_mac.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -25,6 +25,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <dispatch/dispatch.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <pthread.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++// DISPATCH_NOESCAPE is not defined prior to XCode 8.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef DISPATCH_NOESCAPE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define DISPATCH_NOESCAPE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ typedef long long_t;  // NOLINT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace __tsan {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.18.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span></pre><pre style='margin:0'>

</pre>