Index: src/ControlStruct/TranslateEnumRange.cpp
===================================================================
--- src/ControlStruct/TranslateEnumRange.cpp	(revision b6923b1740ef731ae48dce4cce23151387f51e96)
+++ src/ControlStruct/TranslateEnumRange.cpp	(revision 4e107bfd93e8cc8dd0b600da5f069546baac2c00)
@@ -5,8 +5,4 @@
 
 namespace ControlStruct {
-
-struct addInitType {
-    const ast::Stmt * postvisit( const ast::ForStmt * stmt );
-};
 
 struct addInit {
@@ -17,26 +13,4 @@
     const ast::Stmt * postvisit( const ast::ForStmt * stmt );
 };
-
-const ast::Stmt* addInitType::postvisit( const ast::ForStmt * stmt ) {
-    if ( stmt->range_over ) {
-        auto typeExpr = stmt->range_over.strict_as<ast::TypeExpr>();
-        auto type = typeExpr->type;
-
-        auto objInit = stmt->inits.front();
-        assert( stmt->inits.size() == 1 );
-
-        if (auto declStmt = objInit.as<ast::DeclStmt>()) {
-            auto decl = declStmt->decl;
-            if ( auto objDecl = decl.as<ast::ObjectDecl>()) {
-                if ( !objDecl->type && type ) {
-                    auto objDeclWithType = ast::mutate_field( objDecl, &ast::ObjectDecl::type, type );
-                    auto declWithType = ast::mutate_field( declStmt, &ast::DeclStmt::decl, objDeclWithType );
-                    stmt = ast::mutate_field_index( stmt, &ast::ForStmt::inits, 0, declWithType );
-                }
-            }
-        }
-    }
-    return stmt;
-}
 
 const ast::Stmt* addInit::postvisit( const ast::ForStmt * stmt ) {
@@ -87,5 +61,5 @@
     mut = ast::mutate_field(stmt, &ast::ForStmt::inc, assig );
     return mut;
-}
+}  
 
 void translateEnumRange( ast::TranslationUnit & translationUnit ) {
