Index: src/AST/Decl.cpp
===================================================================
--- src/AST/Decl.cpp	(revision 16ba4897edb8e47f2990f485549b0053dee60bae)
+++ src/AST/Decl.cpp	(revision 90be0cf4038a0d324a55f8ab409c9aa1b4ba02e2)
@@ -169,38 +169,4 @@
 }
 
-const std::string EnumDecl::getUnmangeldArrayName( const ast::EnumAttribute attr ) const {
-	switch( attr ) {
-		case ast::EnumAttribute::Value: return "values_" + name ;
-		case ast::EnumAttribute::Label: return "labels_" + name;
-		default: /* Posn does not generate array */ 
-			return "";
-	}
-}
-
-unsigned EnumDecl::calChildOffset(const std::string & target) const{
-	unsigned offset = 0;
-	for (auto childEnum: inlinedDecl) {
-		auto childDecl = childEnum->base;
-		if (childDecl->name == target) {
-			return offset;
-		}
-		offset += childDecl->members.size();
-	}
-    std::cerr << "Cannot find the target enum" << std::endl;
-	return 0;
-}
-
-unsigned EnumDecl::calChildOffset(const ast::EnumInstType * target) const{
-	return calChildOffset(target->base->name);
-}
-
-bool EnumDecl::isSubTypeOf(const ast::EnumDecl * other) const {
-	if (name == other->name) return true;
-	for (auto inlined: other->inlinedDecl) {
-		if (isSubTypeOf(inlined->base)) return true;
-	}
-	return false;
-}
-
 bool EnumDecl::isTyped() const { return base; }
 
Index: src/AST/Decl.hpp
===================================================================
--- src/AST/Decl.hpp	(revision 16ba4897edb8e47f2990f485549b0053dee60bae)
+++ src/AST/Decl.hpp	(revision 90be0cf4038a0d324a55f8ab409c9aa1b4ba02e2)
@@ -302,5 +302,7 @@
 };
 
+/// Enumeration attribute kind.
 enum class EnumAttribute{ Value, Posn, Label };
+
 /// enum declaration `enum Foo { ... };`
 class EnumDecl final : public AggregateDecl {
@@ -328,10 +330,4 @@
 	const char * typeString() const override { return aggrString( Enum ); }
 
-	const std::string getUnmangeldArrayName( const EnumAttribute attr ) const;
-
-	unsigned calChildOffset(const std::string & childEnum) const;
-	unsigned calChildOffset(const ast::EnumInstType * childEnum) const;
-
-	bool isSubTypeOf(const ast::EnumDecl *) const;
 	bool isTyped() const;
 	bool isOpaque() const;
