- Add upstream fix for llvm PR11642

OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm?expand=0&rev=114
This commit is contained in:
Ismail Dönmez 2011-12-27 21:34:46 +00:00 committed by Git OBS Bridge
parent 97ab2d697f
commit e2496b1b07
3 changed files with 39 additions and 0 deletions

31
clang-pr11642.patch Normal file
View File

@ -0,0 +1,31 @@
Index: test/CodeGenCXX/visibility-inlines-hidden.cpp
===================================================================
--- test/CodeGenCXX/visibility-inlines-hidden.cpp (revision 147294)
+++ test/CodeGenCXX/visibility-inlines-hidden.cpp (revision 147295)
@@ -97,3 +97,14 @@
// CHECK: define available_externally void @_ZN5test22ns3fooINS_1BINS_1AEEEEEvv()
}
+
+namespace PR11642 {
+ template <typename T>
+ class Foo {
+ public:
+ T foo(T x) { return x; }
+ };
+ extern template class Foo<int>;
+ template class Foo<int>;
+ // CHECK: define weak_odr i32 @_ZN7PR116423FooIiE3fooEi
+}
Index: lib/AST/Decl.cpp
===================================================================
--- lib/AST/Decl.cpp (revision 147294)
+++ lib/AST/Decl.cpp (revision 147295)
@@ -568,6 +568,7 @@
// about whether containing classes have visibility attributes,
// and that's intentional.
if (TSK != TSK_ExplicitInstantiationDeclaration &&
+ TSK != TSK_ExplicitInstantiationDefinition &&
F.ConsiderGlobalVisibility &&
MD->getASTContext().getLangOptions().InlineVisibilityHidden) {
// InlineVisibilityHidden only applies to definitions, and

View File

@ -1,3 +1,8 @@
-------------------------------------------------------------------
Tue Dec 27 21:33:48 UTC 2011 - idonmez@suse.com
- Add upstream fix for llvm PR11642
-------------------------------------------------------------------
Sun Dec 25 15:29:46 UTC 2011 - idonmez@suse.com

View File

@ -38,6 +38,8 @@ Patch3: assume-opensuse.patch
Patch4: clang-glibc2.14.patch
# PATCH-FIX-OPENSUSE clang-disable-ada-extension.patch idoenmez@suse.de -- Don't run gcc for ada files
Patch5: clang-disable-ada-extension.patch
# PATCH-FIX-UPSTREAM http://llvm.org/viewvc/llvm-project?view=rev&revision=147295
Patch6: clang-pr11642.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: autoconf
BuildRequires: automake
@ -134,6 +136,7 @@ This package contains vim plugins for LLVM like syntax highlighting.
%patch3
cd tools/clang
%patch4
%patch6
cd ../..
%patch5 -p1