Index: trunk/ab5.0/abdev/compiler_x86/MakePeHdr.cpp
===================================================================
--- trunk/ab5.0/abdev/compiler_x86/MakePeHdr.cpp	(revision 552)
+++ trunk/ab5.0/abdev/compiler_x86/MakePeHdr.cpp	(revision 559)
@@ -537,5 +537,7 @@
 	/////////////////////////////////////////////////////////////////
 
-	compiler.GetObjectModule().meta.GetClasses().GenerateVTables();
+	ActiveBasic::Compiler::VtblGenerator::GenerateVTablesForAllClasses(
+		compiler.GetObjectModule().meta.GetClasses()
+	);
 
 
@@ -1089,5 +1091,10 @@
 	////////////////////////////////////////
 	//仮想関数データテーブルスケジュール
-	compiler.GetObjectModule().meta.GetClasses().ActionVtblSchedule( ImageBase, MemPos_CodeSection, MemPos_DataSection );
+	ActiveBasic::Compiler::VtblGenerator::ActionVtblScheduleForAllClasses(
+		compiler.GetObjectModule().meta.GetClasses(),
+		ImageBase,
+		MemPos_CodeSection,
+		MemPos_DataSection
+	);
 
 
Index: trunk/ab5.0/abdev/compiler_x86/compiler_x86.vcproj
===================================================================
--- trunk/ab5.0/abdev/compiler_x86/compiler_x86.vcproj	(revision 552)
+++ trunk/ab5.0/abdev/compiler_x86/compiler_x86.vcproj	(revision 559)
@@ -1288,4 +1288,8 @@
 					>
 				</File>
+				<File
+					RelativePath="..\BasicCompiler_Common\src\VtblGenerator.cpp"
+					>
+				</File>
 				<Filter
 					Name="Langauge Classes"
@@ -1481,4 +1485,8 @@
 					>
 				</File>
+				<File
+					RelativePath="..\BasicCompiler_Common\include\VtblGenerator.h"
+					>
+				</File>
 				<Filter
 					Name="Language Classes"
Index: trunk/ab5.0/abdev/compiler_x86/stdafx.h
===================================================================
--- trunk/ab5.0/abdev/compiler_x86/stdafx.h	(revision 552)
+++ trunk/ab5.0/abdev/compiler_x86/stdafx.h	(revision 559)
@@ -71,2 +71,3 @@
 #include <Program.h>
 #include <LexicalAnalyzer.h>
+#include <VtblGenerator.h>
