Index: src/SymTab/Mangler.cc
===================================================================
--- src/SymTab/Mangler.cc	(revision a4da45ee15c7b12fa95d6fa3d7ed164730c4d88e)
+++ src/SymTab/Mangler.cc	(revision af746ccdf606483f8f89907b52e8b9471c72df7c)
@@ -58,6 +58,5 @@
 	void postvisit( const ast::OneType * oneType );
 	void postvisit( const ast::QualifiedType * qualType );
-
-	void postvisit( const ast::EnumPosType * posType );
+	void postvisit( const ast::EnumAttrType * posType );
 
 	/// The result is the current constructed mangled name.
@@ -281,7 +280,20 @@
 }
 
-void Mangler::postvisit( const ast::EnumPosType * pos ) {
-	postvisit( pos->instance );
-	mangleName += "_pos";
+void Mangler::postvisit( const ast::EnumAttrType * enumAttr ) {
+	postvisit( enumAttr->instance );
+	// mangleName += "_pos";
+    switch ( enumAttr->attr )
+    {
+        case ast::EnumAttribute::Label:
+            mangleName += "_label_";
+            break;
+        case ast::EnumAttribute::Posn:
+			mangleName += "_posn_";
+            break;
+        case ast::EnumAttribute::Value:
+            mangleName += "_value_";
+            break;
+    }
+
 }
 
