Commit 90a6a3a8 authored by Adeel's avatar Adeel Committed by Natanael Copa

main/clang: upgrade to 5.0.1

parent 8657caed
......@@ -2,7 +2,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=clang
# Note: Update together with llvm.
pkgver=5.0.0
pkgver=5.0.1
pkgrel=0
_llvmver=${pkgver%%.*}
pkgdesc="A C language family front-end for LLVM"
......@@ -31,7 +31,6 @@ source="https://llvm.org/releases/$pkgver/cfe-$pkgver.src.tar.xz
0005-Enable-PIE-by-default-for-Alpine-Linux.patch
0006-Link-with-z-now-by-default-for-Alpine-Linux.patch
0007-Enable-stack-protector-by-default-for-Alpine-Linux.patch
D33852-enable-__declspec-selectany-on-linux.patch
"
builddir="$srcdir/cfe-$pkgver.src"
......@@ -101,12 +100,11 @@ analyzer() {
mv usr/share/scan-* "$subpkgdir"/usr/share/
}
sha512sums="14acdd622310122b544c952ee5b932b7006d9d8424319f0e3974f2503d40a0cec4200fdd3d813a32ce0d877bcfbb9a5bd5c36f6142b4330e6c814f113ca2efe8 cfe-5.0.0.src.tar.xz
sha512sums="6619177a2ff9934fe8b15d6aa229abb8e34d0b1a75228d9efba9393daf71d6419a7256de57b31e2f9f829f71f842118556f996e86ee076f1e0a7cd394dfd31a2 cfe-5.0.1.src.tar.xz
98ae759832b2f4c41152f8d16c909044c8d5afb1f4ef3ec10fdc8c3419b2ce8a14a21be989d3919f98869a46ee21f702651d59becb1c87b258846e0d81398358 0001-Add-Alpine-Linux-distro.patch
a45d766005500736a270204424e3b3ea6e2334f4807c431cfcb79563d34ac8d6f1519291b3b1422152e2888ee243a060733a09120c17c706d310f5e04a7daae9 0002-Use-z-relro-on-Alpine-Linux.patch
ca551fb4e8a844424c63e381c4e1e1239ee95548c7561d46d4e8ae01c65b5e46ece7c51021f152ad4aa10dcdd40c0638728b29aed93ddd65d9aeff2af2e878e8 0003-Use-hash-style-gnu-for-Alpine-Linux.patch
0ba4e6cb6d6854ef627f7f6d60f9f6843490e6c8f91dba7e238742574aecf3c07b1f5928850ce755fca9eac07ef3ce814728da58aa1ed9afb03a397ce4c30562 0004-Add-musl-targets.patch
08486325536871346b190b4af3a7b80b58a0066028e6268b06714eb00b29925b3b414ea62fa5ec4ff908763aeec4257536e04275b40c3d55e0a6c5b433625b5c 0005-Enable-PIE-by-default-for-Alpine-Linux.patch
fe5927b7851a97a5223d5b698c5dd01a47ef2fa23d9556cfee976aa7bda639af922785cbe34169e121aab79b38bbb1704aebaf11b1f4f41bcd448947f6e9562b 0006-Link-with-z-now-by-default-for-Alpine-Linux.patch
609ebc1c6cbccd43f8b08e6b653e6da996a09cdcf008744a56af7d8846f1e7a9fc6945d3cc68fba0d06071b6f8de796747606a34d1d5008e0dc620dc0812e3e0 0007-Enable-stack-protector-by-default-for-Alpine-Linux.patch
6bd82b3336c141b3f69d0e79c92dd4663c3b29e67a8bae0a32fa029d9f44291275cf8cbcf5db3ef14f70e5a9a15851a9e082bb59a862c11580515ba47d985247 D33852-enable-__declspec-selectany-on-linux.patch"
609ebc1c6cbccd43f8b08e6b653e6da996a09cdcf008744a56af7d8846f1e7a9fc6945d3cc68fba0d06071b6f8de796747606a34d1d5008e0dc620dc0812e3e0 0007-Enable-stack-protector-by-default-for-Alpine-Linux.patch"
Enable __declspec(selectany) on linux
This feature was disabled probably by mistake in rL300562
This fixes bug https://bugs.llvm.org/show_bug.cgi?id=33285
Patch-Source: https://reviews.llvm.org/D33852
See-Also: https://reviews.llvm.org/rL313278
See-Also: https://github.com/alpinelinux/aports/pull/2342#issuecomment-341971965
--- a/include/clang/Basic/Attr.td
+++ b/include/clang/Basic/Attr.td
@@ -2472,9 +2472,9 @@
let Documentation = [DLLImportDocs];
}
-def SelectAny : InheritableAttr, TargetSpecificAttr<TargetWindows> {
+def SelectAny : InheritableAttr {
let Spellings = [Declspec<"selectany">, GCC<"selectany">];
- let Documentation = [Undocumented];
+ let Documentation = [SelectAnyDocs];
}
def Thread : Attr {
--- a/include/clang/Basic/AttrDocs.td
+++ b/include/clang/Basic/AttrDocs.td
@@ -3192,3 +3192,18 @@
ensure that this class cannot be subclassed.
}];
}
+
+
+def SelectAnyDocs : Documentation {
+ let Category = DocCatType;
+ let Content = [{
+This attribute appertains to a global symbol, causing it to have a weak
+definition (
+`linkonce <https://llvm.org/docs/LangRef.html#linkage-types>`_
+), allowing the linker to select any definition.
+
+For more information see
+`gcc documentation <https://gcc.gnu.org/onlinedocs/gcc-7.2.0/gcc/Microsoft-Windows-Variable-Attributes.html>`_
+or `msvc documentation <https://docs.microsoft.com/pl-pl/cpp/cpp/selectany>`_.
+}];
+}
--- a/test/Sema/attr-selectany.c
+++ b/test/Sema/attr-selectany.c
@@ -1,5 +1,7 @@
// RUN: %clang_cc1 -triple x86_64-win32 -fdeclspec -verify %s
// RUN: %clang_cc1 -triple x86_64-mingw32 -verify %s
+// RUN: %clang_cc1 -triple x86_64-unknown-linux -verify -fdeclspec %s
+// RUN: %clang_cc1 -triple x86_64-win32-macho -verify -fdeclspec %s
extern __declspec(selectany) const int x1 = 1; // no warning, const means we need extern in C++
--- a/test/SemaCXX/attr-selectany.cpp
+++ b/test/SemaCXX/attr-selectany.cpp
@@ -1,4 +1,7 @@
// RUN: %clang_cc1 -triple x86_64-win32 -fms-compatibility -fms-extensions -fsyntax-only -verify -std=c++11 %s
+// RUN: %clang_cc1 -triple x86_64-unknown-linux -fms-compatibility -fms-extensions -fsyntax-only -verify -std=c++11 %s
+// RUN: %clang_cc1 -triple x86_64-win32-macho -fms-compatibility -fms-extensions -fsyntax-only -verify -std=c++11 %s
+
// MSVC produces similar diagnostics.
__declspec(selectany) void foo() { } // expected-error{{'selectany' can only be applied to data items with external linkage}}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment