diff options
author | Michael Hansen | 2018-02-21 14:11:59 -0800 |
---|---|---|
committer | Michael Hansen | 2018-02-22 08:27:46 -0800 |
commit | 7757dd4b593fe2d9da66248b851e5d6745e3366d (patch) | |
tree | 2d2045e9b6da2049b958d785fb998845857e6180 | |
parent | 47873fb4b388bb5d7a73d13c799ee148684da1c8 (diff) | |
download | aur-7757dd4b593fe2d9da66248b851e5d6745e3366d.tar.gz |
Backport fix for SR-6176
-rw-r--r-- | .SRCINFO | 6 | ||||
-rw-r--r-- | PKGBUILD | 10 | ||||
-rw-r--r-- | sr6176.patch | 25 |
3 files changed, 35 insertions, 6 deletions
@@ -1,9 +1,9 @@ # Generated by mksrcinfo v8 -# Wed Dec 13 01:05:55 UTC 2017 +# Thu Feb 22 16:27:18 UTC 2018 pkgbase = swift-language pkgdesc = The Swift programming language and debugger pkgver = 4.0.3 - pkgrel = 1 + pkgrel = 2 url = http://swift.org/ arch = i686 arch = x86_64 @@ -43,6 +43,7 @@ pkgbase = swift-language source = lldb_missing_include.patch source = glibc-2.26.patch source = glibc-2.26-compiler-rt-compat.patch + source = sr6176.patch sha256sums = 026d596dd4a24580a5e442409e8c58259197bd73ddbb77e5aade96da982ea39b sha256sums = a611487a82636142bc1ea8ef5b21401a5c75e57fb0dbf041ef8f2e85a472db2e sha256sums = c940bd48c88f71622fb00167d92a619dd1614093893e1a09982c08da42259404 @@ -59,6 +60,7 @@ pkgbase = swift-language sha256sums = be61c69ae7bb626f7f07f95cb5c0074013725c1b90a3ca68aa0c0f989d75e41e sha256sums = 215473272ec550c58fd2852c3e1c4aa4482a7d2b4980308df14f4a18676775a9 sha256sums = 2311adf234f52831af3b326d0d589fceae0a5336aa8576fdfd62afe71c195124 + sha256sums = 22a0320dc3474f8be133b2d50d72c7feb215d847feee181549bbbd27735e5ab6 pkgname = swift pkgdesc = The Swift programming language compiler and tools @@ -4,7 +4,7 @@ pkgbase=swift-language pkgname=(swift swift-lldb) _swiftver=4.0.3-RELEASE pkgver=${_swiftver//-RELEASE/} -pkgrel=1 +pkgrel=2 pkgdesc="The Swift programming language and debugger" arch=('i686' 'x86_64') url="http://swift.org/" @@ -31,6 +31,7 @@ source=( "lldb_missing_include.patch" "glibc-2.26.patch" "glibc-2.26-compiler-rt-compat.patch" + "sr6176.patch" ) sha256sums=('026d596dd4a24580a5e442409e8c58259197bd73ddbb77e5aade96da982ea39b' 'a611487a82636142bc1ea8ef5b21401a5c75e57fb0dbf041ef8f2e85a472db2e' @@ -47,7 +48,8 @@ sha256sums=('026d596dd4a24580a5e442409e8c58259197bd73ddbb77e5aade96da982ea39b' '18b7895fba15702419e86ae593531669c3966d1c8aa9a83361c5c8ef9d54f893' 'be61c69ae7bb626f7f07f95cb5c0074013725c1b90a3ca68aa0c0f989d75e41e' '215473272ec550c58fd2852c3e1c4aa4482a7d2b4980308df14f4a18676775a9' - '2311adf234f52831af3b326d0d589fceae0a5336aa8576fdfd62afe71c195124') + '2311adf234f52831af3b326d0d589fceae0a5336aa8576fdfd62afe71c195124' + '22a0320dc3474f8be133b2d50d72c7feb215d847feee181549bbbd27735e5ab6') prepare() { # Use python2 where appropriate @@ -85,8 +87,8 @@ prepare() { ( cd "${srcdir}" && patch -p1 -i "${srcdir}/glibc-2.26.patch" ) ( cd "${srcdir}/compiler-rt" && patch -p1 -i "${srcdir}/glibc-2.26-compiler-rt-compat.patch" ) - # Skip failing test for now (see https://bugs.swift.org/browse/SR-6176) - rm "${srcdir}/swift/test/Constraints/tuple_arguments.swift" + # Backported fix for SR-6176 + ( cd "${srcdir}/swift" && patch -p1 -i "${srcdir}/sr6176.patch" ) } _common_build_params=( diff --git a/sr6176.patch b/sr6176.patch new file mode 100644 index 000000000000..dfd6c9c26003 --- /dev/null +++ b/sr6176.patch @@ -0,0 +1,25 @@ +From e13d20d30c95f99fecbda69a81ffa3e1ac21c4b5 Mon Sep 17 00:00:00 2001 +From: Adrian-Constantin Popescu <epsilon.gamma@gmail.com> +Date: Sun, 11 Jun 2017 14:05:32 +0300 +Subject: [PATCH] Fixed failing test/Constraints/tuple_arguments.swift - + returning temporary memory on stack. + +--- + lib/Parse/ParseExpr.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/lib/Parse/ParseExpr.cpp b/lib/Parse/ParseExpr.cpp +index 6d1c22566761..0d00ccbed792 100644 +--- a/lib/Parse/ParseExpr.cpp ++++ b/lib/Parse/ParseExpr.cpp +@@ -2420,8 +2420,8 @@ parseClosureSignatureIfPresent(SmallVectorImpl<CaptureListEntry> &captureList, + // Extract names of the tuple elements and preserve the structure + // of the tuple (with any nested tuples inside) to be able to use + // it in the fix-it without any type information provided by user. +- std::function<StringRef(const TypeRepr *)> getTupleNames = +- [&](const TypeRepr *typeRepr) -> StringRef { ++ std::function<std::string (const TypeRepr *)> getTupleNames = ++ [&](const TypeRepr *typeRepr) -> std::string { + if (!typeRepr) + return ""; + |