Apply upstream patch for Operator.h C++0x incompatibility (# 737365)
This commit is contained in:
parent
03709243e8
commit
3946039b09
74
llvm-2.9-PR9869_operator_destructor.patch
Normal file
74
llvm-2.9-PR9869_operator_destructor.patch
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
From 6a61834d1c41971f80669a0484f1a0d2d8a1c286 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Eli Friedman <eli.friedman@gmail.com>
|
||||||
|
Date: Sun, 8 May 2011 01:59:22 +0000
|
||||||
|
Subject: [PATCH] PR9869: Add explicit destructor declarations to Operator
|
||||||
|
subclasses, to allow compiling Operator.h with gcc 4.6 in
|
||||||
|
C++0x mode.
|
||||||
|
|
||||||
|
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131062 91177308-0d34-0410-b5e6-96231b3b80d8
|
||||||
|
---
|
||||||
|
include/llvm/Operator.h | 34 ++++++++++++++++++++++++++--------
|
||||||
|
1 files changed, 26 insertions(+), 8 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/include/llvm/Operator.h b/include/llvm/Operator.h
|
||||||
|
index ff2a0ad..e9aa499 100644
|
||||||
|
--- a/include/llvm/Operator.h
|
||||||
|
+++ b/include/llvm/Operator.h
|
||||||
|
@@ -186,28 +186,46 @@ public:
|
||||||
|
};
|
||||||
|
|
||||||
|
class AddOperator
|
||||||
|
- : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Add> {};
|
||||||
|
+ : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Add> {
|
||||||
|
+ ~AddOperator(); // DO NOT IMPLEMENT
|
||||||
|
+};
|
||||||
|
class SubOperator
|
||||||
|
- : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Sub> {};
|
||||||
|
+ : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Sub> {
|
||||||
|
+ ~SubOperator(); // DO NOT IMPLEMENT
|
||||||
|
+};
|
||||||
|
class MulOperator
|
||||||
|
- : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Mul> {};
|
||||||
|
+ : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Mul> {
|
||||||
|
+ ~MulOperator(); // DO NOT IMPLEMENT
|
||||||
|
+};
|
||||||
|
class ShlOperator
|
||||||
|
- : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Shl> {};
|
||||||
|
+ : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Shl> {
|
||||||
|
+ ~ShlOperator(); // DO NOT IMPLEMENT
|
||||||
|
+};
|
||||||
|
|
||||||
|
|
||||||
|
class SDivOperator
|
||||||
|
- : public ConcreteOperator<PossiblyExactOperator, Instruction::SDiv> {};
|
||||||
|
+ : public ConcreteOperator<PossiblyExactOperator, Instruction::SDiv> {
|
||||||
|
+ ~SDivOperator(); // DO NOT IMPLEMENT
|
||||||
|
+};
|
||||||
|
class UDivOperator
|
||||||
|
- : public ConcreteOperator<PossiblyExactOperator, Instruction::UDiv> {};
|
||||||
|
+ : public ConcreteOperator<PossiblyExactOperator, Instruction::UDiv> {
|
||||||
|
+ ~UDivOperator(); // DO NOT IMPLEMENT
|
||||||
|
+};
|
||||||
|
class AShrOperator
|
||||||
|
- : public ConcreteOperator<PossiblyExactOperator, Instruction::AShr> {};
|
||||||
|
+ : public ConcreteOperator<PossiblyExactOperator, Instruction::AShr> {
|
||||||
|
+ ~AShrOperator(); // DO NOT IMPLEMENT
|
||||||
|
+};
|
||||||
|
class LShrOperator
|
||||||
|
- : public ConcreteOperator<PossiblyExactOperator, Instruction::LShr> {};
|
||||||
|
+ : public ConcreteOperator<PossiblyExactOperator, Instruction::LShr> {
|
||||||
|
+ ~LShrOperator(); // DO NOT IMPLEMENT
|
||||||
|
+};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
class GEPOperator
|
||||||
|
: public ConcreteOperator<Operator, Instruction::GetElementPtr> {
|
||||||
|
+ ~GEPOperator(); // DO NOT IMPLEMENT
|
||||||
|
+
|
||||||
|
enum {
|
||||||
|
IsInBounds = (1 << 0)
|
||||||
|
};
|
||||||
|
--
|
||||||
|
1.7.6.4
|
||||||
|
|
@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
Name: llvm
|
Name: llvm
|
||||||
Version: 2.9
|
Version: 2.9
|
||||||
Release: 3%{?dist}
|
Release: 4%{?dist}
|
||||||
Summary: The Low Level Virtual Machine
|
Summary: The Low Level Virtual Machine
|
||||||
|
|
||||||
Group: Development/Languages
|
Group: Development/Languages
|
||||||
@ -32,6 +32,9 @@ Patch0: llvm-2.6-timestamp.patch
|
|||||||
# clang link failure if system GCC version is unknown
|
# clang link failure if system GCC version is unknown
|
||||||
# http://llvm.org/bugs/show_bug.cgi?id=8897
|
# http://llvm.org/bugs/show_bug.cgi?id=8897
|
||||||
Patch1: clang-2.9-add_gcc_vers.patch
|
Patch1: clang-2.9-add_gcc_vers.patch
|
||||||
|
# Operator.h incompatibility with GCC 4.6 in C++0x mode
|
||||||
|
# http://llvm.org/bugs/show_bug.cgi?id=9869
|
||||||
|
Patch2: llvm-2.9-PR9869_operator_destructor.patch
|
||||||
|
|
||||||
BuildRequires: bison
|
BuildRequires: bison
|
||||||
BuildRequires: chrpath
|
BuildRequires: chrpath
|
||||||
@ -214,6 +217,7 @@ mv clang-%{version}%{?prerel} tools/clang
|
|||||||
|
|
||||||
# llvm patches
|
# llvm patches
|
||||||
%patch0 -p1 -b .timestamp
|
%patch0 -p1 -b .timestamp
|
||||||
|
%patch2 -p2 -b .pr9869_operator_destructor
|
||||||
|
|
||||||
# clang patches
|
# clang patches
|
||||||
pushd tools/clang
|
pushd tools/clang
|
||||||
@ -462,6 +466,9 @@ exit 0
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Sep 30 2011 Michel Salim <salimma@fedoraproject.org> - 2.9-4
|
||||||
|
- Apply upstream patch for Operator.h C++0x incompatibility (# 737365)
|
||||||
|
|
||||||
* Sat Aug 6 2011 Michel Salim <salimma@fedoraproject.org> - 2.9-3
|
* Sat Aug 6 2011 Michel Salim <salimma@fedoraproject.org> - 2.9-3
|
||||||
- Disable LLVM test suite on ppc64 architecture (# 728604)
|
- Disable LLVM test suite on ppc64 architecture (# 728604)
|
||||||
- Disable clang test suite on ppc* architectures (-)
|
- Disable clang test suite on ppc* architectures (-)
|
||||||
|
Loading…
Reference in New Issue
Block a user