Index: BasicCompiler32/BasicCompiler.vcproj
===================================================================
--- BasicCompiler32/BasicCompiler.vcproj	(revision 69)
+++ BasicCompiler32/BasicCompiler.vcproj	(revision 71)
@@ -1048,5 +1048,5 @@
 				</Filter>
 				<Filter
-					Name="Class"
+					Name="Type"
 					>
 					<File
@@ -1112,4 +1112,8 @@
 					<File
 						RelativePath="..\BasicCompiler_Common\Enum.h"
+						>
+					</File>
+					<File
+						RelativePath="..\BasicCompiler_Common\Type.h"
 						>
 					</File>
@@ -1275,5 +1279,9 @@
 					>
 					<File
-						RelativePath="..\BasicCompiler_Common\Parameter.cpp"
+						RelativePath="..\BasicCompiler_Common\Parameter.h"
+						>
+					</File>
+					<File
+						RelativePath="..\BasicCompiler_Common\ParamImpl.cpp"
 						>
 					</File>
Index: BasicCompiler32/CParameter.cpp
===================================================================
--- BasicCompiler32/CParameter.cpp	(revision 69)
+++ BasicCompiler32/CParameter.cpp	(revision 71)
@@ -2,5 +2,5 @@
 #include "opcode.h"
 
-int CParameter::NewTempParameters( const char *FuncName,PARAMETER_INFO *ppi,int pi_num,int SecondParmNum ){
+int ParamImpl::NewTempParameters( const char *FuncName,PARAMETER_INFO *ppi,int pi_num,int SecondParmNum ){
 	///////////////////////////////////////////////////////
 	// 一時オブジェクトをあらかじめスタックに積んでおく
@@ -97,5 +97,5 @@
 }
 
-void CParameter::DeleteTempParameters(){
+void ParamImpl::DeleteTempParameters(){
 	///////////////////////////////////////////////////////
 	// 一時オブジェクトを破棄
@@ -131,5 +131,5 @@
 }
 
-void CParameter::SetStructParameter(CClass *pobj_Class,LPSTR Parameter){
+void ParamImpl::SetStructParameter(CClass *pobj_Class,LPSTR Parameter){
 	int object_size = pobj_Class->GetSize();
 
@@ -219,5 +219,5 @@
 }
 
-int CParameter::SetParameter(const char *FuncName,PARAMETER_INFO *ppi,int pi_num,int SecondParmNum){
+int ParamImpl::SetParameter(const char *FuncName,PARAMETER_INFO *ppi,int pi_num,int SecondParmNum){
 	///////////////////////////////////////////////////////////
 	// パラメータをレジスタ及びスタックフレームにセット
Index: BasicCompiler32/Compile_CallProc.cpp
===================================================================
--- BasicCompiler32/Compile_CallProc.cpp	(revision 69)
+++ BasicCompiler32/Compile_CallProc.cpp	(revision 71)
@@ -48,6 +48,6 @@
 
 	//パラメータオブジェクトを生成
-	CParameter *pobj_parameter=0;
-	pobj_parameter=new CParameter(Parameter);
+	ParamImpl *pobj_parameter=0;
+	pobj_parameter=new ParamImpl(Parameter);
 
 	//エラーチェック
@@ -226,6 +226,6 @@
 
 	//パラメータオブジェクトを生成
-	CParameter *pobj_parameter=0;
-	pobj_parameter=new CParameter(temporary);
+	ParamImpl *pobj_parameter=0;
+	pobj_parameter=new ParamImpl(temporary);
 
 	//エラーチェック
@@ -372,6 +372,6 @@
 
 	//パラメータオブジェクトを生成
-	CParameter *pobj_parameter=0;
-	pobj_parameter=new CParameter(Parameter);
+	ParamImpl *pobj_parameter=0;
+	pobj_parameter=new ParamImpl(Parameter);
 
 	//エラーチェック
Index: BasicCompiler32/Opcode.h
===================================================================
--- BasicCompiler32/Opcode.h	(revision 69)
+++ BasicCompiler32/Opcode.h	(revision 71)
@@ -192,5 +192,5 @@
 void SetVarPtrToEax(RELATIVE_VAR *pRelativeVar);
 
-//CParameter.cpp
+//ParamImpl.cpp
 #define OVERLOAD_MIN_LEVEL 0
 #define OVERLOAD_MAX_LEVEL 3
@@ -199,5 +199,5 @@
 #define OVERLOAD_LEVEL2 2
 #define OVERLOAD_LEVEL3 3
-class CParameter{
+class ParamImpl{
 	char *Parms[255];
 	TYPEINFO types[255];
@@ -212,7 +212,7 @@
 
 public:
-	CParameter(const char *buffer);
-	CParameter(const PARAMETER_INFO *pParamInfo, const int ParmNum);
-	~CParameter();
+	ParamImpl(const char *buffer);
+	ParamImpl(const PARAMETER_INFO *pParamInfo, const int ParmNum);
+	~ParamImpl();
 	void SetReturnType(TYPEINFO *pTypeInfo);
 
