Index: BasicCompiler32/Compile_CallProc.cpp
===================================================================
--- BasicCompiler32/Compile_CallProc.cpp	(revision 76)
+++ BasicCompiler32/Compile_CallProc.cpp	(revision 77)
@@ -47,4 +47,7 @@
 	ParamImpl *pobj_parameter=0;
 	pobj_parameter=new ParamImpl(lpszParms);
+
+	// デフォルト引数を適用
+	pobj_parameter->ApplyDefaultParameters( pProcPointer->Params() );
 
 	//エラーチェック
@@ -223,4 +226,7 @@
 	pobj_parameter=new ParamImpl(temporary);
 
+	// デフォルト引数を適用
+	pobj_parameter->ApplyDefaultParameters( pUserProc->RealParams() );
+
 	//エラーチェック
 	if( !pobj_parameter->ErrorCheck(pUserProc->GetName(),pUserProc->RealParams(),pUserProc->GetSecondParmNum() ) ){
@@ -370,4 +376,7 @@
 	pobj_parameter=new ParamImpl(lpszParms);
 
+	// デフォルト引数を適用
+	pobj_parameter->ApplyDefaultParameters( pDllProc->Params() );
+
 	//エラーチェック
 	if( !pobj_parameter->ErrorCheck( pDllProc->GetName(), pDllProc->Params() ) ){
Index: BasicCompiler32/Opcode.h
===================================================================
--- BasicCompiler32/Opcode.h	(revision 76)
+++ BasicCompiler32/Opcode.h	(revision 77)
@@ -224,4 +224,5 @@
 	UserProc *OverloadSolution( const char *name, std::vector<UserProc *> &subs );
 
+	void ApplyDefaultParameters( const Parameters &params );
 	bool ErrorCheck( const string &procName, const Parameters &params, int SecondParmNum = -1 );
 	void MacroParameterSupport( const Parameters &params );
