Index: /trunk/ab5.0/abdev/BasicCompiler_Common/src/Compiler.cpp
===================================================================
--- /trunk/ab5.0/abdev/BasicCompiler_Common/src/Compiler.cpp	(revision 719)
+++ /trunk/ab5.0/abdev/BasicCompiler_Common/src/Compiler.cpp	(revision 720)
@@ -67,5 +67,5 @@
 		// モジュール名がシンボル名として使えない場合があるので、16進数文字列に変換する
 		char temporary[VN_SIZE*2] = "";
-		for( int i=0; i<originalName.size(); i++ )
+		for( int i=0; i<static_cast<int>(originalName.size()); i++ )
 		{
 			sprintf( temporary + strlen(temporary), "%2x", originalName[i] );
@@ -112,4 +112,16 @@
 		Type typeParameterType;
 		StringToType( typeParameterStr, typeParameterType );
+
+		if( this->IsCompilingClass() )
+		{
+			if( this->pCompilingClass->IsExpanded() && typeParameterType.IsTypeParameter() )
+			{
+				// 現在コンパイル中のクラスがテンプレート展開済みのクラスで、
+				// 尚且つターゲットとなる型が型パラメータだったとき
+
+				// テンプレート展開情報を用いて型解決を行う
+				this->pCompilingClass->ResolveExpandedClassActualTypeParameter( typeParameterType );
+			}
+		}
 
 		genericTypes.push_back( GenericType( "(non support)", typeParameterType ) );
Index: /trunk/ab5.0/abdev/compiler_x64/Compile_Statement.cpp
===================================================================
--- /trunk/ab5.0/abdev/compiler_x64/Compile_Statement.cpp	(revision 719)
+++ /trunk/ab5.0/abdev/compiler_x64/Compile_Statement.cpp	(revision 720)
@@ -513,5 +513,18 @@
 			goto ErrorStep;
 		}
-		elementTypeName = collectionType.GetActualGenericType(0).GetClass().GetFullName();
+
+		Type elementType;
+		if( collectionType.GetClass().IsExpanded() )
+		{
+			// テンプレート展開されたジェネリッククラス
+			elementType = collectionType.GetClass().expandedClassActualTypeParameters[0];
+		}
+		else
+		{
+			// 通常のジェネリッククラス
+			elementType = collectionType.GetActualGenericType(0);
+		}
+
+		elementTypeName = compiler.TypeToString( elementType );
 	}
 
Index: /trunk/ab5.0/abdev/compiler_x86/Compile_Statement.cpp
===================================================================
--- /trunk/ab5.0/abdev/compiler_x86/Compile_Statement.cpp	(revision 719)
+++ /trunk/ab5.0/abdev/compiler_x86/Compile_Statement.cpp	(revision 720)
@@ -650,5 +650,18 @@
 			goto ErrorStep;
 		}
-		elementTypeName = collectionType.GetActualGenericType(0).GetClass().GetFullName();
+
+		Type elementType;
+		if( collectionType.GetClass().IsExpanded() )
+		{
+			// テンプレート展開されたジェネリッククラス
+			elementType = collectionType.GetClass().expandedClassActualTypeParameters[0];
+		}
+		else
+		{
+			// 通常のジェネリッククラス
+			elementType = collectionType.GetActualGenericType(0);
+		}
+
+		elementTypeName = compiler.TypeToString( elementType );
 	}
 
