Index: src/ResolvExpr/ResolveTypeof.cpp
===================================================================
--- src/ResolvExpr/ResolveTypeof.cpp	(revision d68a3f776b49ebef7031d8d117b0bb0eeed3a7ea)
+++ src/ResolvExpr/ResolveTypeof.cpp	(revision 1571e4d69c6616d989853ffc4c395d0ed369f67b)
@@ -130,4 +130,19 @@
 	mutDecl->type = renameTyVars(mutDecl->type, RenameMode::GEN_EXPR_ID);
 	mutDecl->isTypeFixed = true;
+
+	auto enumInst = decl->type.as<ast::EnumInstType>();
+	if ( enumInst && enumInst->base->isCfa ) {
+		if ( auto init = decl->init.as<ast::SingleInit>() ) {
+			if ( auto initExpr = init->value.as<ast::ConstantExpr>() ) {
+				if ( initExpr->result.as<ast::ZeroType>() ) {
+					auto newInit = new ast::SingleInit( init->location, 
+						ast::UntypedExpr::createCall( init->location, "lowerBound", {} )
+					);
+					mutDecl->init = newInit;
+				}
+			}
+		}
+	}
+
 	return mutDecl;
 }
