mirror of
https://src.fedoraproject.org/rpms/llvm.git
synced 2024-11-28 02:34:52 +00:00
74 lines
2.6 KiB
Diff
74 lines
2.6 KiB
Diff
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
|
|
|