From 6a61834d1c41971f80669a0484f1a0d2d8a1c286 Mon Sep 17 00:00:00 2001 From: Eli Friedman 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 {}; + : public ConcreteOperator { + ~AddOperator(); // DO NOT IMPLEMENT +}; class SubOperator - : public ConcreteOperator {}; + : public ConcreteOperator { + ~SubOperator(); // DO NOT IMPLEMENT +}; class MulOperator - : public ConcreteOperator {}; + : public ConcreteOperator { + ~MulOperator(); // DO NOT IMPLEMENT +}; class ShlOperator - : public ConcreteOperator {}; + : public ConcreteOperator { + ~ShlOperator(); // DO NOT IMPLEMENT +}; class SDivOperator - : public ConcreteOperator {}; + : public ConcreteOperator { + ~SDivOperator(); // DO NOT IMPLEMENT +}; class UDivOperator - : public ConcreteOperator {}; + : public ConcreteOperator { + ~UDivOperator(); // DO NOT IMPLEMENT +}; class AShrOperator - : public ConcreteOperator {}; + : public ConcreteOperator { + ~AShrOperator(); // DO NOT IMPLEMENT +}; class LShrOperator - : public ConcreteOperator {}; + : public ConcreteOperator { + ~LShrOperator(); // DO NOT IMPLEMENT +}; class GEPOperator : public ConcreteOperator { + ~GEPOperator(); // DO NOT IMPLEMENT + enum { IsInBounds = (1 << 0) }; -- 1.7.6.4