Index: src/SymTab/Validate.cc
===================================================================
--- src/SymTab/Validate.cc	(revision 3e5439987bdaca8e3f69edabd5a99bb0e41316b1)
+++ src/SymTab/Validate.cc	(revision 4559b34425030aa5ff5e6be7a0d6e46d70ae6fec)
@@ -939,7 +939,19 @@
 					// need to resolve enumerator initializers early so that other passes that determine if an expression is constexpr have the appropriate information.
 					SingleInit * init = strict_dynamic_cast<SingleInit *>( field->init );
-					ResolvExpr::findSingleExpression( init->value, new BasicType( Type::Qualifiers(), BasicType::SignedInt ), indexer );
+					if ( !enumDecl->base || dynamic_cast<BasicType *>(enumDecl->base))
+						ResolvExpr::findSingleExpression( init->value, new BasicType( Type::Qualifiers(), BasicType::SignedInt ), indexer );
+					else {
+						if (dynamic_cast<PointerType *>(enumDecl->base)) {
+							auto typePtr = dynamic_cast<PointerType *>(enumDecl->base);
+							ResolvExpr::findSingleExpression( init->value,
+							 new PointerType( Type::Qualifiers(), typePtr->base ), indexer );
+						} else {
+							ResolvExpr::findSingleExpression( init->value, new BasicType( Type::Qualifiers(), BasicType::SignedInt ), indexer );
+						}
+					}
+					
 				}
 			}
+
 		} // if
 	}
